amaus.net computist...applied engineering is 100% apple that's why we're so good at ii!...

36
BA(:KUP NLOCK M -51'''' ........ ................... ·IIC ....._ ...... ....... .............. ... u ( CA5/34B> Hardcore COMPUTIST P.O. Box 44549 Tacoma, WA 98444 7 ssues left BULK RATE U.S. Postage PAID Tacoma, WA Permit No. 269

Upload: others

Post on 11-Apr-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: amaus.net computist...APPLIED ENGINEERING IS 100% APPLE That's Why We're So Good At II! • • p, 'IJ-' I ~JI rmtJi I • • I' • Complete 1I> voice music synthesizer on one card

BA(:KUP NLOCK M

-51''''

...........................• ·IIC ....._......

~r_ .......•................. u

( CA5/34B>

Hardcore COMPUTISTP.O. Box 44549Tacoma, WA 98444

7 ssues left

BULK RATEU.S. Postage

PAIDTacoma, WA

Permit No. 269

Page 2: amaus.net computist...APPLIED ENGINEERING IS 100% APPLE That's Why We're So Good At II! • • p, 'IJ-' I ~JI rmtJi I • • I' • Complete 1I> voice music synthesizer on one card

APPLIED ENGINEERING IS 100% APPLEThat's Why We're So Good At II!

I• p, 'IJ-'~ JI rmtJi I

• •I'

• Complete 1I> voice music synthesizer on one card. Just plug it intoyour Apple. connect the a"dio cable ($upplied) to your stereo, bootthe disk supplied and you a'e ready to input and play songs.

• It's easy to progJ<lm music with Our compo$e software. You will stanright away at inputting your favorite songs. The Hi· Res $creeJl showswhat you have entered in standard $heet musk format

• Now with new improved software for the easiest and the fastestmusic iJlput system available anywhere.

• We give you 101$ of software. jJl addition to Compose and Playprograms, 2 disks are filled with OVer 30 songs ready to play.

• Easy to program in Rask to generate comple~ sound effect$. Nowyour games can have explosion$. pha$er Zap$. train whistles, deathc,ie$. You name it. this ca,d can do it

• Four white noise generato,s which a'e great for sound effects.• Plays musk in uue stereo as well as true discrete quad.aphonic.• Full control of attack. volume, decay. sustain a"d release.• Will playsongswritte" forAlF synthe$izer (AlF softwa'e will not take

advantage of all l)Ur card's features. Their software sounds the samein our synthesizer.)

• Our ca,d wilt play notes from 30HZ to beyond huma" hearin8--• Automatk shutoff on power-up or if reset is pushed.• Many many mOte features. PRICE $lS9.00

SUj>er Music SynthesizerImproved Hardware and Software

NfW 1984DESICNAn officialPRO-DOS Cloc~

"• Jun plug it in and your programs can read t e year, month, date, day,and time (0 1 milliseoofldl The OJlly clock with both yei" ."d rnS.

• A re<:hargeable NiCad battery will k<*p the TIMEMASHR II runningfor over ten years.

• Powerful 2K ROM d,;ver - No dIXk could be easie. to us(',• FUll emulation of most OIher clock~, including Thunderclock and

Appleclock (bul you'll like the TIMEMASTER II mooe betler),We emulate other clocks by merely dropping off features. We canemulate them but they carl'! emulate us.

• Basic. Machine Code, CP/M and Pascal software on 2 disksl• Eight software cont.olled interrupts soyou an executetwop,ogram$

at the same time (many example$ are included).• On-board timer let$ you time any interval up t048 day) long down to

the Jleare$t millisecond.The TIMEMASTER II include5 2 di$ks with some really fantastk timeorieJlted programs (over 40) including appointment book SO you'lIneve, forget to do anything again. Ente. your appointments up to ayear in advance then forget them. Appointment book will remind youin plenty of time. Plus DOS daterso it will automatically add the datewhen disk files are c.eated or modified. The disk is over a 5200.00value along-we give the software others sell. All software packagesfor business. data base management and communications are madeto read the T1MEMASTER II. If you want the most powerful and theeasiest to use clock for your Apple. you wan! a TIMEMASTER ll.

PRICE $129.00

Automatically dale'tam.,. files withPRO·DOS

PRICE $139.00 PRICE $179.00

Viewma$ler 80The.~ used to be .boul • dozen 80 column nrds for the Apple, nowlhere's only ONE.• TOTAllY Videx Compatible.• 80 characters by 24 li"es, with a sharp 7~9 dot matrix.• On-board 40/80 50ft video switch with manual40 column ovenide• Fully com patible with AllApple languages a"d Software-there are

NO exceptions.• Low power consumption through the use of CMOS devkes.• All connections a.e made with standard video connecto's.• Roth uppe, and lower case characters are standard.• All new design (using a new MioopfOcessor based CR.T. controller)

for a beautiful ",'zor sharp display.• TheVIEWMASTER incOfporatesalt thefeaturesof allother80 column

cards, plus many flew improvements.

""w......s". I.' nl"S ns ns ..s ns .,s YES

sU~.a.M MOil NO "$ NO NO NO NO ns nsW'lI\lD8<J MOil NO NO NO NO VIS NO ylS vISVfS'O"1lO MORI ylS YES NO NO VIS ."0 NO "0OMN''''SKlN MORI NO VIS NO NO NO NO ylS ns""WM,<'1lO MORI rES VIS NO ."0 VIS NO NO YlSS,'MlnIM MORl ..s flS NO NO NO vrs VIS NO",OlOTl.M MORI NO "0 YlS NO VIS Y>S NO YIS

The VI EWMASTER 80 works with all 80 column applications including CP/M,Palnl. WordSta,. Fom'at It. Ealyw,ite" Apple Write' II. VisiCalc, and allothers. The VIEWMASTER BO i. THE MOST compatible BO column <ard you<an buy at ANY price'

L"",,,, ""..",,,.., ~• TOTALLY compatible with ALL CP/M softwa.e.• The only Z·80 card with a special 2K "CP/M detecto(' c!lip.• Fully compatible with microsoft dish (no pr","boot required).• Specifically designed for high speed operation in the Apple lie (runs

just as fast in the 11+ and Franklin).• Runs WORD STAR, dRASE II, COROl-BO, FORTRAN-80,

PEACHTREE and ALL other CP/M software with '10 p.€'boot• A semi-custom I.C and a low parts count allows the Z-80 Plus to fly

thru CP/M programs at a very low power level. (We use the Z-BOA atfast 4MHZ.)

• Does EVERYTHING the other Z-BO boards do, plus Z-BO interrupts

Z-80 PLUS!

Don't confuse the Z·BO Plus with crudecopiesofthe mic,osoftcard. TheZ-BO Plus employs a much more sophisticated and reliable design, Withthe Z-BO Plus you an access the largest body of software in existence.Two com puters in one and the advantages of both, aII at an unbelievablylow price.

$249$169$149

MemoryMaster lie 128K RAM Card

• Precision software disk emulation for Basic, Pascal a"d CP/M isavailable at a very low cost NOT copy protected.

• Documentation included, we show you how to use all 192 K.Ifvouor'~ody ","'eAppr.,.. 6' I ""d, ju""'d~,,he M(MORYMASTER rrewi'hMI om! useI"" 6H f",,,, VOU' old boir.d roSiv~ 'I"'" 0 rutl 1281. n.... I>o>rd I, ly~V socke'ed "''I'"''.i",ply plus In more <~;p~1

MemoryMuler III' with 128KUpgr.de.ble MemoryMasler lie with 64KNOIl-Upgraduble MemoryM.ster Ill' with 64K

• hpands yeor Apple lie to 192K memory.• Provides an 80 column text display.• Compatible with all Apple lie 80 column and e~tendedBO column

card software (same physical size as Apple's 1>4 K card),• Can be used as a solid state disk drivetomake youl programs run up

to 20 times FASTER (the MK configuration will act as half a drive),• Permits your lie to use the new double high resolution g.aphics.• Automatically e~pandsVisicalc to 9S K storage in 80 columns! The

1>4K config. is all that's needed, 128K can take you even higher.• PRO-DOS will use the MemoryMastef lie as ahigh speed disk drive.

au' boir~.0'" for ,u~rior '0 ""'" 01 'he con.ume' e~,onl", ",;>de tod>.y. "'U t.C. o,e In ~;gh q...rl'y socke" w;'h "';"'f"'<. comp.onenl> u>e<l rh'ougIIoyl P.e. boo'd. o,e ~r••>­."....,. wi'h Sold con""~ Mod" in"'m",'c.'o be ,~" be>1 rn 'hewao-ld. AU products WO'k;" th"APPU ttl. tt. tt+ ond r"nkti" 1". Memo..Mo",,' tt,,;. tteonry.Appl ..d EnSine...;nS.r", .....nuf~1 u,.... '"n rl"" of dolO ><qui.il ",n.nd c""HoI products I", 'h~Appr~:NO ronve""", o"d disi..1t/O c.,d" .'e. P'~ose co Illo«no,e inl"'.....'''''' AII O<J' p,odue" 0'" fulry,,,,,,,><I wi'h <<>mole'" dorumen..'ion .nd ••ollobr.. 'Of ;",m"dl.'. d"r...." .., "''' prod""••,e g""'''le«l w;lh • "0 h...,., 1H RU YE~R W~RR"'NTY.

Teus Residents Add S'li S.les TuAdd $10.00 If Outside U.S.A.~..ler Inquiries Welcome

Send Check 01 Money Order to:APPliED ENGINEERING

P.O. 8o~ 798Corrolltofl, TX 7SOO6

Call (214) 492-20278 am. to 11 p.m. 7 days a week

MasterCard, Visa & C.O.D. WelcomeNo e~tra charge for credil cards

Page 3: amaus.net computist...APPLIED ENGINEERING IS 100% APPLE That's Why We're So Good At II! • • p, 'IJ-' I ~JI rmtJi I • • I' • Complete 1I> voice music synthesizer on one card

Enclose $4.00 lor each EAMON scenario ....olume that youorder or use OUf special EAMON collectors offer. Ad....enture scenarios arepacked on double-sided disks. Minimum Order: 2 Volumes. ($8.00)

Name

Address

City State Zip

Country Phone

VISA/MC • Ex,

Signature

Make checks payable to:

Computer Lumlnl CenterP.O. Box 45101

Tacoma, WA ' .....5

US funds only.No purchase orders or C.O.O.Washington stale residents add

7.8% sales tax.Foreign orders add 20% for

stlipping and tlandling.Please allow 4.s weeks lordelivery.

SPECIAL COLLECTORS'S OFFER

Every EAMON SC8I\aOO & Utilili8S.All lnr only $1....

o YES! send me the entireEAMON collllttion of 64 voIum8S.

Hardcorc: COMPUTIST no.1O

Page 4: amaus.net computist...APPLIED ENGINEERING IS 100% APPLE That's Why We're So Good At II! • • p, 'IJ-' I ~JI rmtJi I • • I' • Complete 1I> voice music synthesizer on one card

M any of the articles published in Hardcore COMPUTIST detail the removal of copyprotection schemes from commercial disks or contain information on copy protection andbackup methods in general. We also print bit copy parameters, tips for adventure games,advanced playing techniques (APT's) for arcade game fanatics and any other informationwhich may be of use to the serious Apple user.

Hardcore COMPUTIST also contains a center CORE section which generally focuses oninformation not directly related 10 COpy·protection. Topics may include, but are not limited10, tutorials, hardware/software product reviews and application and utility programs.

New readers are advised to read over the rest of this page carefully in order to avoid frus­tration when following any of the softkeys or typing in any of the programs printed in thisissue. Longtime readers should know what to do next: Make a pot of coffee, get out someblank disks and settle in for a long evening at the keyboard.

How-To's Of HardcoreIf )'ou are reading our magazine for the first time, wekome to Hardcore COMPUTIST,

II publlcallon devoted 10 the serious user of Apple II and Apple II compatible computers.

We believe our magazine contains information you are not Ukely to find in any of the oth~r

major journals dedicated to the Apple markel.

Our editorlill polley Is that we do NOT condone soflware piracy, bUI we do believe that

honest users are entllled to back up commercial disks they have purchased. In addition 10

the 5e('urlty of a backup disk, the removal of copy protection gives the user the option of

modifying appliClltion programs to meet his or her needs.

2

Whlll Is II Soflkey Anywlly1

A !iOflkey is II lerm which we coined todescribe II procedu~ thllt removes, or III Il"IISIcircumvents, IIny copy prolecllon thlll mllY bepr6ent on II disk. Once II 50flkey proctdu~

hIlS been performed, the disk ClIO usually beduplialted by Ihe use of Apple's COPYA pro'Ill'1lm which Is on the DOS J.J Syslem MaslerDisk.

Following A Soflkey ProC'edun:

The majority of the anicles in Hardcore COM­PUTlST which cont.in a wftkey will also include adiscussion of the type of copy protection ~nt onthe disk in question and the toxhnique(s) necessaryto rt:J1tOVe that proteclion. Near the end of the arti­cle,a step-by'su,p "cookbook" method of duplicat­ing the disk willapl"'lIr. Generally. the appropriateactioru for the reader to perfonn will appeal" in bold­face type. E~amples are:

I) Bool thc disk in slot 6

P...

"2) Emer the monitor

CALL ·ISI

It ill asJiumed that thc rcader has some familiaritywith his or her Apple, i.•. knowing that the RETURNkey mw;t be hit following Ihe commands illustratedabov•.

Hardcore COMPlJflST tries to verify the softkcyowhich are published, although occasionally this is notpossibl•. Readers should be aware that different,original copies of the same program will nOt alwayscomain an identical protection method. For this rea·son, a softkcy may nOl work on lhe copy of a diskthat you own, but il may work On a diff.rent copyoflh. same program. An e~ampleof this is Zaxxon,by Datasofl, where there are at least 3 dIfferent pro­tection methods used on various rt:leases of th. game.

Soflwlln: RtcommendllUonsAlthough not absolutely necessary. th. following

catqories of utilities are recommended for our read­.,., who wish to Obtain the mOSt benefit from Our ar­ticles:

I) Applcsof. Proxnm Editor such as Global ProgramLine Editor (GPLE).2) Disk EdJlor such .. DiskEdit, ZAP from 833 ofTricks or Tricky Dick from The CIA.3) Disk Sn.reh UIiIlI} such .. The tnspcctor, or TheTracer from Th. CiA.41 A_lObler such lIS the SOC Macro AlioSCmbler orBig Mac.SIBlt Copy Proaram such lIS COPY ll-+-. Locksmilhor The ES5C1ltial Data Duplicator.61 Tf~t Editor capable of producing normal SfQUen·tialtut files such lIS ApplewritCT 11, M33ic WindowII Or Screenwriter II.

Three programs On th. DOS 3.3 SJSt.m Mast.rDisk, COPY A, FlO and MUFFIN, also come in veryhand} from tim. to time.

Hardcore COMPUTIST no.10

Hardwarf RtcommendlltlonsCertain softkey procedures require that the com­

puter have 10m. m.ans of ent.ring th. Appl.'s sys·tem monitor during the execution ofa ropy-protectedprogram. For Apple 1I -+- own.rs there ar.three bas·ic waJS this can be achieved:I) Place an INTEGER BASIC ROM card in On. ofthe Appl.'s slots.2) Install an old monitor or modified F8 ROM Onthe Apple's motherboard. The installation of a modi·fied F8 ROM is discussed in Ernie Young's article,"Modified ROMS", Which appeared in Hardcor.COMPUTlST no. 6.31 Have available a non-maskable interrupt (NMt)card such as Replay Or Wildcard.

Longtime rt:ade,., of Hardcore COMPUTlST willvouch for the fact that the ability to RESET inlo lh.monitor at will, greatly mhances th. capacity of theApple owner to remove ropy protection from pro­toxted disks.

A 16K or larger RAM card ill also recommendedfor Appl. 1I or II -+- owners. A second disk drive ishandy. hut is not usually required for most programsand softkcys.

Requir~mfnts

Most of the programs and soflkcys which appearin Hardcore COMPlJflST require an Apple II-+­computer (or compatible) with a minimum 48K ofRAM and al least one disk drive with DOS 3.3. Oc·casionally, some programs and procedures have spe_cial requirements such as a .'lCC10r editing program Ora "nonautostarl" F8 monitor ROM. The prerequi­sites for dcprotoxtion techniques Or programs will al­ways be lilled at the beginning article under the"Requirements:" heading.

Recomm.nded Lilel'1l1ureThe Appl.ll and II-+- 's rome bundled with an Ap­

ple Reference Manual, however thill book is not in­cluded with the pu,chase ofan Appl./I•. This bookis necessary refereno: material for the seriow; com·putis!. A DOS 3.3 manual is also recommended.

Other helpful books include:

Bmnlh Appk DOS,Don Worth and Peter Leich·n.r. QualilY Software.SI9.9'.

A_lObly lJnes:Tht Book, Roger Wagner, SoftalkBooks. 519.95.

Whl'S Wh.... In Th. Apple, Professor Luber!,Micro Ink. $24.9'.

Typing in BASIC ProgramsWhen typing in basic programs, you will often en­

coum., a d.lta (".") character. These are the spacesyou MUST type in if you wish your checksums tomatch Ours. All other spaces are merely prinled fOIeasier reading and don't have to be typed unless theyare after a DATA statem.nt. Any spaces afler theword DATA that aren't delta characters MUST beommilled!

It is a good idea 10 SAVE your BASIC programto disk frequenlly while typing it in to minimize theloss of data in Ihe e-'ent of a power failulf.

Chet:ksof.Checksoft is a Binary program that checks Ap­

plesoft programs to ensure that you have keyed themin prOl"'rly. Every bin program we print has com­panion che<:ksums which consist of the Applesoftprogram's line numbers and a hexadecImal (base 16)number for each lin•. After keying in a BASIC pro­gram. BRUN checksoft and compare the checksumsfor e,ery line that Choxksoft gen.rates with those atth. end of the program. tf you use Checksoft andmake a tYPilli error, your checksums will differ fromours beginning at the lin. w"ele you made the error.

Typing In Binary Progl'1lmsBinary programs are printed in two different for·

mau, as source code and as object cod. in a he~­

adecimal dump. If you ....ant to tyl'" in the sourcerode, ~ou will nCt'd an assembler. The SoC Macro A~­

sembl.r is used to general. all the source code whichw. prinl. although any assembler whose use you un­dcrstand will do JUSt fin. for .nt.ring source code.Binary programs can also be entered directly with theuse of the Apple monitor by typing in the bYtes list­cd in th. hexdump at the appropriate addresses. Besure to enter the monitor with a CALL -151 beforeentering the hexdump. Don'l type the Checksumsprinted at the end of each line of Ihe hexdump anddOn'l forget to BSAVE binary programs with theproper address and length parameters listed in thearticle.

ChtckbinLike Checksoft, Choxkbin also generales check·

sums, but was designed 10 check bilUU')' (machille lan­guage) programs.

When....r Hardrore COMPlJflST prints a hex­dump to Iype in, the associated Checkbin generatedchecksums are print.d aft.r ...elY g bYtes and at theend of ev.ry line.

Cho:.:ksoft and Checkbin were primed in Hardcort:COMPlJflST no. I and the Besl Of Hardcore Com­puting and are sold on Program Library Disk No.I and lh. Best Of Hardcor. Library Disk.

Lei Us Htllr Your Likes lind GripesNew and longtime readers of Hardrore COM·

PlJflST art: encouraged to let US know what they likeand don't like about our magazine by writing lenersto Our INPUT column. Our staff will also try to an­swer questioru submitted to the INPUT column,although we cannot guarantee a r.sponse due to thesmall size of our staff. Also, send your \'(Ites for thesoftkeys you would like to .... printed to our "Mo<lWanted lis!."

Page 5: amaus.net computist...APPLIED ENGINEERING IS 100% APPLE That's Why We're So Good At II! • • p, 'IJ-' I ~JI rmtJi I • • I' • Complete 1I> voice music synthesizer on one card

Hal'dcol'e

COMPUTISTTHIS ISSUE:

24 Examining Prolected Applesofl BASIC ProgramsBy Clay Harrell

Viewins and modifyinS protected Applesoft prosramsis easy with the risht hardware.

26 Crunch list IIBy Ray Darrah

28 Backing-Up MlnU ManBy Clay Harrell

9 Soflkey For The Arcade MachineBy Marco Hunter

Super lOB provides yet another useful connoller.

I I The Controller Sa"erBy Ray Darrah

Save Super lOB conlrollers on disk using a minimum of space.

12 Softkey For The Bankslreel WriterBy Earl Taylor &; Ste\le Morson

The uncopyable Bank Streel Writer falls prey to the greal softkey machine.

CORE Section:

16 ApplEarBy Ray Darrah

Now you can add speech and exotic sound effects 10 your programs.

18 Recently Developed Chips PromiseNew Life For Old Apples: The 6SSC802 &; 6SSCS16

By Gary PelersonTwo new, 16-bit, 6502-compatible microprocessors.

21 Dino Eggs: REVIEWBy Ray Darrah

Explore prehistoric times with thismtenaloins arcade game by Micro Fun.

Publisbrr/EditorCharles R. Haight

TNhninl EditorsGary Petrrson Ray Darrah

Production'" GraphicsLynn Campos--Johnson

CirculationVakrie Robinson Michdle Frank

BusinlrSli ManalrrKen Fields

AdvrrtisingAttn: Valerie RobinsonAdvertising Department3110 lOOth Street SWTacoma, WA 98499

PrinlingGrange Printing, Inc.

Seattle, WA

PublishingSoftkey Publishing

P.O. Box 44549Tacoma, WA 98444

USA

Address au advenising inquiries to HardcoreCOMPUTlST, Advertising Department, ]710lOOth 51. SW, Tacoma, WA 98499. Addressall manuscripl5 and editorials to: HardcoreCOMPVTIST. Editorial Depanmnu. P.O.Box 44549, Tacoma, WA 98444.

MAILING NOTICE: Cb~ of addressmust be poslmarked at kasr. 30 days prior 10move. Paste your present malling label onPOSlal form ]516 and supply your new addressfor our rrcords. IDUes missed due to non­receipt of chanle of address may be acquiredal the relular back issue rate.

Return postage must accompany allmanuscripts. drawings, photos, disks, or tapesif they are 10 be returned. No responsibi~ty canbe assumed for unsolicited manuscripts. WesuggeSt you send only copies.

Entire contents copyright 1984 by SoftKeyPublishing. All rights reserved. Copyinl donefor other than personal or internal reference(withoul express wrinen permission from thepublisher) is prohibited.

The editorial staff assumes no liability orresponsibility for lbe products advertised in themaguine. Any opinions expressed by Iheauthors are nOt ntcC$sarily those of HardcoreCOMPUTIST maguine or SoftKey Pub­lishinl·

SUBSCRiPTION INFORMATION: Ratesfor one year are as foIlows: U.s. S25. lSI Class,APOIFPO. and Canada S14, MeU:o S]9, For­dirt Airmail $60. Foreign Surface Mail 540.Subscription inquiries should be direcled 10Hardcore COMPUTIST. Subscription Oepan­ment, P.O. Box 44549. Tacoma, WA 98444.

DOMESTIC DEALER RAT£.5 senl upon re­quest, or call (2(6) 581-60]8.

Apple usually refers 10 rhe Apple II or IIPlus computer and is a trademark of AppleComputers. Inc.

DEPARTMENTS

4

6

10,21

25

29

Input

Readers' Soflkey And Copy Exchange

More On Sensible Speller IVBy Lamont Cranston

Copying Essenlw Data Duplicator IIIBy Joseph Leathlean

UsinS Super JOB To Copy KreU LOGOBy Andrew Harrison

Paramelers For DB Master Version 4By Dr. Nibbles

Softkey For Canyon ClimberBy John Liska

Adnnced Playing Techniques

Advenlure Tips

Whiz KidBy Ray Darrah

Hardcore COMPUTIST 00.10 J

Page 6: amaus.net computist...APPLIED ENGINEERING IS 100% APPLE That's Why We're So Good At II! • • p, 'IJ-' I ~JI rmtJi I • • I' • Complete 1I> voice music synthesizer on one card

INPUT INPUT INPUTKeyboard Recommendation

I am replying to a letter from T. Militellois Hardcore COMPUTiST Vol. 3, No.3(117). I recenlly went to a computer show inSan Diego where I saw and purchased adetachable keyboard with ten programma­ble keys, each capable of storing 48 keys­trokes including RETURNs. The address ofthe company selling the keyboard is:

Super Computer (original name)I un S. Grand

Suite. JSanta Ana, CA 92705

The keyboard costs $15" in the catalog, butI got it for $ II 5 at the show (model numberPC-550"). I also noticed a letter telling howto change drive speed on the RANA Elite Idisk drive. I have an Apple drive and an In­dus GP drive. On my Indus, I found that thevariable resistor labeled "R31 "near thecenter of the circuit board controls drivespeed.

Tom MoellerGlen Falls NY

More on the Bil Copiers

Thanks to Phillip Romine for evaluatingthe five main bil copier programs in yourHardcore COMPUTlST Magazine No.8.There is no queslion that EOD Version litis the fastest and most reliable bit copieravailable today. It has been able to backupevery protected disk which I own, with theexception of Zardax. And yes, althoughEDD III is heavily protected, it is powerfulenough to copy itself quite easily. EDD IIIbacks up Dollars and Sense without anyparameter changes. By the way, on page 32of your magazine, you have listed the EDDIII parameters for track 0A to be used whenbacking-up Locksmith 5.0. Your parameter48=0 should be 4B=0. Not mentioned inthis article is that Locksmith 5.0 can be madeinto straight copyable disk by changing Byte6F on Track F, Sector E from C6 to 0F.

With reference to Copy It Plus, Version4.4C has recently been released. The bit copi­er program has been greatly improved;however, the utility section fortunately re­mains unchanged. The initial menu shouldfeature the TracklSector map next to theSector Editor because the two are used so fre­quently together. Also, if one encounters an110 Error in the Sector Editor, the programgoes back to the initial menu, rather thanpennitting you to simply read or write fromor to another track. Furthermore, the Sec­tor Editor features inverse video and inverseflashing in the text entry portion of thescreen. The inverse video and flashing makes

the cursor very difficult to locate and onemust rely on the Hex entry portion occupy­ing the left side of the screen in order to makethe desired entries. Central Point Softwaredid supply interesting information that per­mits one to do such things as modify trackoof Dollars and Sense so that the boot pro­gram of Dollars and Sense can be copied withany straight copy program. This updatedocumentation also provides good discussionon software protection, and ways to easilybackup such programs as Miner-204ger,Wizardry, Ultima III, Zaxxon, Bank StreetWriter, etc. Your recent program listing ofthe sector editor that will modify protecteddisks is appreciated because Copy II Plus willgive an 110 error on most protected tracks.

With reference to Locksmith 5.0, the pub­lished parameter lists have been distributed.This program suffers, from among otherthings, the need for improvement in thedocumentation. An example in theparameter listing is the frequent inability todiscern "O"from """. Furthermore, whenperforming a Syntax Check on a parameterlisting that has been entered as a Text file,the cursor will show the line where the errorhas occured, and it frequently is a matter ofspacing. An ellample would be "PATISTAT1 "will yield a Syntax error unless allspaces are eliminated.

In summary, it is highly recommendedthat one purchase Copy II Plus for the utili­ty programs, and there is absolutely no ques­tion that EDD 1lI is the finest and mostreliable bit copier.

Roger M. LevinPalo Alto CA

Screenwriter 2.2 Update

The softkey that you published for Screen­writer 2.2 in Vol. 3, No.3 (#7) was not com­plete. It unproteccs the Runoff (printout) butnot the Editor. The complete softkey is asfollows:

Using a disk editor (Disk Fixer 3.3, Zap,etc.), read in track "E, Sector tB. Locate thesequence "20 0" 6E"(byte offset of rest of49). Change it to "EA EA EA". The editorpart will now work.

The rest of the softkey was correct as pub­lished, that is: read in track 0F, sector 07.Locate the sequence "20 00 7F"(byte off­set of90). Change it to "EA EA EA". Therunoff part will now work.

Please note that it is advisable to makethese changes on a COPYAed copy of theoriginal Screenwriter 2.2 disk; you should

never change the original.

Andrew ReiffensteinEdmonton, Alberta

Apple lie RESET

How can I "RESET into the monitor"wilhout an Integer Firmware Card? I havean Apple lie.

Dick ArmstrongFlanders, NJ

Mr. Armstrong: If you don't have an In­teger Firmware card, about the only surefiremeans ajhalting the execution oja protect­ed program is to have a ROM containingmOdified monitor code. The only place weknow of that sells a modified ROM for theApple / Ie is: Synergetics, 746 First Street,Box 869-AAL, Thatcher AZ, 85552. Thecost is $19.95.

Modified ROM with CP1M

The Modified ROM's article has a bug.The adapter is missing an enable line andsome programs will not work. CP1M is onethat will not boot up without this line. Tocure this, a "Promette" from CMW. Inc.,P.O. Box 33651, Dayton, Ohio 45433 willwork. It has an active device to return thisenable line. By the way, I will burn an 2716EPROM with the modified rom and ship itfor $7.50 each. I will also burn any programinto most EPROM's at my cost. Keep up thegood articles. your mag is the best.

Paul Harvey223 W. Bluebell Ave.Anaheim, CA 92802

More on LOGO

Thanks to Ms. Gygi for the tip on bypass­ing the nibble count on Apple LOGO. Onthe version I have, however, bytes $79 to $7Bwere not as described. With a liule ex­perimenting, I found that changing the bytes$5D to $5F as described below did the sametrick. Here are the details:

Modify Track $0 Sector $0A as follows:

"'"'"Byte; S13 S14 S15 S22 $23 524 $50 sse $Sf

FI"'l;n; sal SOO S30 SIll sac $CO Sloe SOJ S40To; SEA $£A $£A Sloe S55 S40 SEA SEA $£A

All but the last three bytes are as in Ms.Gygi's article. By the way, if you use CopyII Plus, setting parameter 3C = 04 lets 4tracks at a time be copied which will speed

4 Hardcore COMPUTIST no.10

1

Page 7: amaus.net computist...APPLIED ENGINEERING IS 100% APPLE That's Why We're So Good At II! • • p, 'IJ-' I ~JI rmtJi I • • I' • Complete 1I> voice music synthesizer on one card

up the process significantly.

Mark SaksPhiladelphia PA

Corrections to Zaxxon Softkey

In Hardcore COMPUTIST Vol. 3, No.3(117) you had a softkey for Zaxxon. This con­tained an omission and an error, but theymay both be the same thing.

First, the possible error. On page II, thebottom two charts are identical. I suspectthat you accidentally ran the same charttwice. Also, the sector editor charts didn'twork for my copy of Zaxxon. I had one ofthe very first ones which used the Mocking­board. The technique was basically correct,but my version had different addresses forboth the epilog checker and the nibble coun­ter. Here are the changes for my version:

For Early Mockingboard Version:

'" Sector Byte '''''' To-----------------------------

sm S07 '1F ". SACsm S07 S2ll sm 'COsm S07 S21 $85 SOB

sm S04 SA' sec $DE

sm S04 '50 $CO ....sm S04 '" SA' 'EA

These changes work for my version. I reallyappreciate the depth of the article. Withoutit, I couldn't have found the correct loca­lions. Please try to have more of your arti­cles explain things this well.

Wesley R. FeltyBothell WA

Mr. Felty: You are absolutely right, wedidmanage to duplicate the tables in the Zax­xon article. Thanksfor pointing this out to",.

disk emulator. Using a Snapshot 2 NMI cardI managed to copy each of the Applesoftprograms on the distribution disk, but thereis a text file with data for the graphics rou­tine that I haven't been able to copy. Howcan the disk be completely broken?

For Brian Burns. Thanks for the lowercase output modification to the Infocomgames. It's great! It must be an older ver­sion, since the eleven byte upper casing rou­tine lives on track 2, sector 9, bytes 90through A7 instead of 4C through 56. Thecodes for inversing and the text window seemto be in different locations, 100. I found the3F code for inversing on track 2, sector 1 atbyte EA (instead of 90), but I can't findwhere to change 01 to 02 to leave a blankline between the status line and the rest ofthe game text. Can you tell me where thiscode would be on my version of Zork II, orexplain how I could go about locating it?

For Dr. Thomas E. Militello. If you havean Apple II Plus you should consider the Vi­dex Enhancer][ as an alternative to an add­on keyboard. It's much cheaper. List priceis $149, but Conroy La Pointe (which hasgiven me good service in the past) sells it for$99. And iI'S very flexible. Every key on thestandard keyboard can be reprogrammedeasily for one or many characters. The fullASCII character set is available and you canget alternate font chips. Keys repeat auto­matically when held down. Best of all, Vi­dex offers the best customer support in thebusiness. I wouldn't trade my][ plus with theEnhancer for a lie or a fancy keyboard.

For you Most Wanted List (a great idea!),how about more softkeys for educationalprograms? For example, I haven't been ableto back up my kids' Spinnaker or XeroxStickybear programs. Also, could some ex­pert reader provide a parms list for Lock­smith 5.0? In spite of Omega's ads, thereseem to be a lot of programs that Ihe latestLocksmith fails to copy under its default set­tings, and Omega's support has gone fromweak to deceased.

JlriEhilOKADVENYUIlBBlt

T_a-.PI....We prefer tbat IMM

not be dead giveunIJ"~1I\lI!llIIIoI1S to diIlmlma8 _by the partIouIu game,-.t COIIlain juIt ~1Illformation to Dudllll8IW:IIped adventluertile solution toproblem.

How & WhereSo, if you know how to

open the jewel-encrustedegg, how to plug the hole inthe rowboat, where to findthe key to the treasurechest, or any other tidbits ofinformation that may behelpful to your fellow travel­er, please send this informa­tion on a 3 x 5 postcard to:

Computing in Kenya

Congratulations on a continually improv­ing magazine. Your new fonnat, with COREincluded in each issue of Hardcore COM­PUTIST is excellent. I especially appreciatethe increased number of Softkeys and themore detailed, introductory-level explana­tions of cracking techniques. After readingVoU, No.3 (Hardcore COMPUTIST fl7),I have a few comments and questions.

For Thomas Oragon. Your article on liber­ated backups with copy protection men­tioned the HSO disks as one exception to theprocedure because of their "incredibly com­plex protection system." Can you (or anyother reader) give us details about breakingthis system? I have HSO Stats Plus, and havebeen working on modifications to fix onebug in the program, customize some of theroutines, and permit the program and datadisks to be loaded into my RAMDISK 320

Philip R. ChristensenRadio Language Arts ProjectKenya Institute of EducationNairobi, Kenya

Mr. ChrlstmMll: Sorry, but we do not haveany information on the type of protectionbeing used on the HSD disks. These disks arenow on our "Most Wanted List. "

One of our readers, John Liska of Stan­ford, CT, reported that on older versions ofZork thefollowing modifications were neces­wry in order to obtain lower case: Step 7­The modification needs fa be made at byteSEA of track $2, sector $7. Step 8 - Themodification needs to be made at byte $BCof track $2, sector $B.

You are absolutely right about Omega'sLocksmith support. Their customer supportis not the only thing (0 have died. Omega hasfiledfor bankruptcy and the marketing rights

Condnued on pag~ 8

Hardcore COMPUTISTAttention: Adventure Tips

P.O. Box 44549Tacoma, WA 98444

P.5. Please don't forget to in­clude the name of the ad­venture game to which yourhint pertains and the nameof the manufacturer.

Hardcore COMPUTlST no.10 ,

Page 8: amaus.net computist...APPLIED ENGINEERING IS 100% APPLE That's Why We're So Good At II! • • p, 'IJ-' I ~JI rmtJi I • • I' • Complete 1I> voice music synthesizer on one card

ItIADIltS' SOFTIlIY i COpy IXCUANGIMo O..S lbl. Spell... IVBy Lam.olll Cr....to.

Stnslbk Speller Ver 4.lc '" 4.1cSensible Software6619 Perhlm Drive WestBioomneld, MI$125.11

Requirements:Apple II or I( plusBlank diskBit Copy programSeclor Editor

Editors Note: The Sensible Speller Softkeypublished in Hardcore Computist no. 9 wasbased upon revision 4.fJdofIhe program. Weverified the sol/key using thor revision.Several readers however reponed that thewIlkey would not work on their version ofthe program. Apparently theu are at leastsix different nvuions, each having a differ­ent menu entry point. We are trying 10 gatherin/ormation on the different versions, bur asyet we do nOI have a verified procedure thatwill work on anything other Ihon 4.ed.

Because oj the interest in Sensible Spellerwe are publishin, Q sottkey for revisions 4.Bcand 4.ld. This me/hod has nOl been verifiedby our staff. If you try this so/tkey, pleaselet us know your results.

The protection scheme on Sensible SpdlerIV is ba~ upOn the disk having a verystrange and complicated boot. The complex­ity of the boot requires a lot of extra codewhich apparently exists solely to handle thedisk's odd format. Tracks $I'l-$l and $4-$5are used, tracks $2-$3 and $6-$22 are all nor­mal DOS 3.3 format (track S3 is technicallyCP/M, but COPYA will still copy it). Thetitle picture resides on tracks $6-$7 and isloaded on hi-res page 2 at S401'l0-$5FFF.Track S8-SB contain the S5 main menu rou­lines. Other routines, such as the spellingchecker itself, are loaded later by the menumodule.

Knowing this, all we have to do is load themenu program with its associated supportroutines and fix its expected environment.Since the useful program exists on normalDOS 3.3 tracks, we will write track S0 (ona copy of the SS disk) with the DOS 3.3Boon and RWTS sectors, then rewrite theDOS BOOn (track 50, .sector $1) routinethat's loaded at $B71'le as part of RWTS sothat it loads in the Sensible Speller menu. Acouple of routines also have to be added toBoo1'2 so that the main menu will workproperly once loaded.

Boon is called from BOOn after theRWTS has been loaded. The SS menu pro-

gram loads and runs at $800-$47FF. The8001'2 code needed for S5 has to do the fol­lowing things:

1) Load the SS menu program in memory at$800-$47FF.2) Load track $2, sectors $E-$F in memoryat $800-$9FF.

3) Store a $09 in the prompt resister at $33.4) Copy the motherboard F8 monitor ROMinto a language card if it is present.S) Set normal 110.6) Exit to the entry point of the SS menu.

Step 3 is necessary because Sensible Spellerdoes not seem to work correctly if a promptis found at 533 and step 4 is needed becuaseSS will crash if a language card without amonitor image is found in slot 9.

The DOS BOQnloader is well document­ed in Beneath Apple 005. Essentially it isdesigned to load a specified number of sec­tors into memory from consecutive disk sec­tors into consecutive pages of memory. TheInput/Output Block (lOB) and Device Con­trol Table (OCT) are present at the end ofthe 800T2 sector.

I have used this patch on Sensible Spellerversion 4.9c and 4.lc. The source code list­ing is for version 4.lc (the PF$:Write com­patible version). The 4.9c version (the Pascalcompatible version) menu has a different en­try pOint (533B8), so the JMP in 800T2 at$8790 (lines 1070 and 1790 in source code)must be changed accordingly.

If you have an earlier version of SensibleSpeller you can usc the Inspector to searchfor the entry. To do this, boot up the Inspec­tor, set the buffer to $809 and read track 58,sector 59 and then continue holding downthe "I" key until you have filled memoryfrom S800 to $47FF with consecutive sectorsfrom the disk. Search the buffer for a likelyentry point and use it 10 put into the modi­fied BOO1'2 code. A conspicuous feature ofthe entry is that it will store its address into53E-53F.

The modified BOOT2 code will not loadthe hi-res Sensible Speller logo because thiswould make the code longer than one sec­tor, although it could be rewritten to loadin a second sector.

Sectors $E·$F of track 2 are loaded overthe menu code because this is where 55 storesits configuration dala. These sectors can beread by any sector editor.

The VTOC on the copied disk can be al­tered to free up track SI and track S4-$5 fordata since they are not used by SensibleSpeller. If you wish to implement an extend­ed boot to load DOS or the hi-res picture,the extra data can be stored on these sectorsor on the unused sectors of track 50.

The ecessary StepsI) Boot up DOS 3.3 and INIT a slave disk

PR'"FPINIT HELLO

2) Use a bil copier to copy tracks $2-$3 and$6-$22 from the Sensible Speller originalonto the disk initialized in step I.3) Use a sector editor to write the modifiedBoon code onto track $9, sector 51 of thecopied disk. Do not forget to chan8e the en­try point if you have a version other than4.lc.4) That's all. Now stan misspelling!

I was motivated to deprotect SensibleSpeller because of Sensible Software's heavyprotection of this utility program (probablysoon to get heavier), its serial numbering andrestrictive licensing agreement. This licenc·ing agreement states that you are only al­lowed to read the program into memory andexecute it. Copying the program is, ofcourse, verboten. Apparently no one al Sen­sible Software has read the copyright lawwhich asserts the right to make archivalbackup copies.

Other factors which motivated me wereSensible Speller's refusal to boot on an Ap­ple IIc (the computer rightly says there issomething wrong with the disk) and Sensi­ble Speller's withdrawal of Pascal supponwith the release of version 4.lc. To me, itseems as if dropping an entire operating sys­tem in favol of Word Handler or Cameoseems 10 be a ploy to get those coveted seri­al number registration cards. AU in all, theyshould have spent the money they spent oncopy protection on some extra features forthe program.

I did not find the program particularlydifficull to crack (about 6 hours work alltold). I want to emphasize that I did buy theoriginal program and do not condone pira­cy. However, nobody locks me out of a pro­gram I have purchased, either.

Sensible SpellerBool 2 Object Code

8700 : 8E E. .7 8E '7 .7 ,. 018708: 80 '8 .7 80 " .7 AD EO8710: " 80 E1 • 7 ,.O. 80 EC8718: .7 ,.

0' 80 ED .7 '0 488720: 88 8e F1 .7 " 01 80 F48728: .7 8' " " " " "

,.8730: 00 85 " .0 '8 04 .0 788738: 04 20 .3 • 7 ,.01 80 '88740 : .7 80 " .7 ,. 02 80 E18748: .7 ,. 02 80 EC .7 ,.

0'

8750: 80 ED .7 '0 0' " 88 8e8758 : F1 • 7 ,.01 80 F4 .7 8e8760: F1 • 7 ,.01 80 F4 .7 20

6 Hardcore COMPUTIST no. I0

Page 9: amaus.net computist...APPLIED ENGINEERING IS 100% APPLE That's Why We're So Good At II! • • p, 'IJ-' I ~JI rmtJi I • • I' • Complete 1I> voice music synthesizer on one card

B768 : 93 .7 A2 fF EA 8E EO .7 R F<l.frlOl>16 1810 "'"B770: 20 93 FE 20 89 FE AD 8' 1330 LS/l DIVIDE SLOT 18l1l "'"B778: CO AD 81 CO A9 F8 AO fF ,,<0 LS/l N..MBER BY 1890 DEC RWTS.PItl+4 TRACK IUIlEB780 : 84 3E 84 3F C8 84 42 84 1350 LS/l 16 •1781!1: 3C 8' 43 8' 3D 20 2C FE 13'" LS/l 1900 HXT.TRK STY RVTS.PRIt+S SECTOR JrUIIl1790 : 4C 17 35 AD E5 .7 AC E4 1310 TAX aRRECT OFfSE ..1798: .7 20 B5 .7 AC .eo .7 88 T 1910 DEC RWTS.P1tt+9 BUffER ICSlI

lJl1)LOA '" 1920 DEC SECHO.Pltt+1 IUIlER OF

B7AO: 10 07 AO OF EA EA CE EC 1390 STA 133 SECT<RS17A8: .7 8C ED .7 CE F1 .7 CE 1400 STA I'IEM1,X LAST TRACK RE 1930 SHE NXT .SECTB7BO: E1 .7 DO OF 60 08 78 20 AD WAS PHASE 0 1940 RT'B7B8: 00 BD '0 03 28 18 60 18 1410 ST" MEM2,x OON'T KHE HE 1950 RVTS1 PHP87CO: 38 60 AD Be B5 80 F1 " AD ANT 1960 'EI17 C8: A9 00 BD FO .7 AD F9 B5 1420 JSR REAO.PGS 1910 JSR RWTS17 DO: 49 fF 80 EO .7 60 A9 00 1430 LOA " 19'" BCS RWTS.ERR8708: A8 91 42 C8 DO FB 60 00 14<0 ST" RWTS.PRH+16 LAST DRIVE 1900 PCPB7EO: 40 00 OA 18 E8 .7 00 .. 1450 ST" RWTS.Pltt+2 lJoST DRIVE 2(IJJ CLCB7E8: 01 60 0' 00 00 00 FB .7 14'" LOA" 2010 .15

1410 STA SECHD.Pltt+1 It.JIeER OF 2lJ2O RWTS. ERR PlPIHO: 00 47 00 fF 01 00 FE 60 SECT<RS 2lBO SECIH8: 01 00 00 00 01 EF 08 00 ''''' LOA " '"'" RT,

1490 STA RVTS.PItl+4 TRACK IUtIE 2050 SET .\,RIT l.DA fM.Pltt+1 SET RVTS

Sen.sib~ Spdler • 2060 ST" RWTS.P1tt+9 fOR ~.mIHG

Bool 2 Source Code 1500 LOA "'"2070 LOA'"

1510 ST" RWTS. PRM+5 SECTOR JrUIIl "'" STA RWTS.PRM+8 RVTS IlJfFER

ltID """ .EO S04F8 IEfOff SPOTS ER LS.THAT DOS USES TO KEEP TRACK Of 1520 LOTISOA 2090 lOA fM.YOL

1010 IEM2 .EQ S0478 \liICH TRACK W 1530 "'"2100 EOR /l'SFf

AS READ LAST AHD WHAT TRACK IS NEXT 1540 DE'( 2110 STA RWTS.PRH+3 ¥OWE EXPE

1020 READ.PGS .EO S8793 1550 ST\' RWTS.PRM+9 BUFFER MS8 CTEO

1030 SETVID .EQ SFE93 1560 LOA "2120 RTS

1040 SETKBD .EO SFE89 1510 ST" RIlIS.PRH+12 CCMIAND co 2130 ZERO.BUF LOA #0 ZERO CLIlRENT

1050 I.J.HG. CARtXJ •EO SC(8) START OF MAGI DE BUFFER

C JleQY LOCATICICS TKAT "FFECT EXTRA 16K lJl1) STY RWTS.PfM+9 BUFfER MS8 21<0 TAT

OF JleQY IN SLDT 0 1590 LOA" 2150 .1 STA ($42>,Y LOCATICJt $42

1060 "'" .EO SFEZC KJrlITOR 'M" 5 1"," STA RWTS.Pltt+12 CCMW«l CO IOlDS TIlE POINTER TO TllE ClIlRENT BUfFER

LOlWTIIE DE 21'" 'Iff1070 START .SPEll .EO 13517 1610 J SR RfAD. PGS 2110 OlE .1

1(8) RWTS .EO S8llOO ENTRY TO RWTS 1620 LOX /l'SFF 2160 RT'1fJ1i1O fM.PRK .EO S858B FILE JIWW>ER 1630 "'"

2190 .HS 00 LNJSED

PNWETER LIST 1640 STX RVTS.PRM+3 VOl..IJE Em 22ID SEOIl.PII'l .HS 4IlIIJA1BE8B7IDl6 DOS

1100 fM.VOl .EOSB5F9 FILE JIWW>ER CTEO =: 255 SECCJlO STAGE 8lXlT LOt.DER PARNETER LIST

VOWE IUIlER lXM'LIMBfTEO 1650 JSR SETVIO "'"2210 RVTS.PII'l .HS 016OO1oo:Dl)FB87004700FF01CDFEi:OO'1

1110 STACK .EO $100 STACK AREA 16'" JSR SETKBD IN'" 2220 *RVTS. PII'l IS THE RWTS PARNETER 1I51120 1610 lOA t..Wi.CAROO+1 T1130 .OR S8700 1611) LOA t..Wi.CAROO+1 2230 . HS 00::0 lHJSED1140 .n SS8COT2 1690 lOA /l'SF8 2240 OCT .HS OCOlEFD8 DEVICE CMARAC1150 1100 LOY /l'SFF1160 STX RWTS.Pftt+1 NEXT SlOT 1710 STY S3E

TERISTICS TABLE

1110 STX RWTS.Pltt+15 lJoST SlOT 1720 STY DF2250 .HS 00 LNJSED

1160 LOA" 1730 'Iff Copytag E__aUaI Data1190 STA RWTS.Pftt+16 NEXT DflIVE 1740 STY S42'200 STA RWTS.PRM+2 LAST DfllVE '750 STY SlC Dapllcalor I"'210 LOA SEOIl. PII'l IUIlER OF P" 1760 STA S43

~J_""""""GES 1710 STA 130'220 STA SEOIl.PRM+1 IUIlER OF 1760 J'" "'" f!ID<RID.FFf Esseatl.1 0.'- Dupliutor IIISE""" '" UtUko Mkrow.re1230 LOA_ 1790 JPfI START .SPElL 3317 Sot-no Ave., Suile 3521240 STA RWTS.PfIItt4, TRACK lUBE um NXT .SECT LOA SEOIl.PRM+5 RWTS POINT N.pa, CA 94558R ER Jl'SB $79.951250 LOA ""F 1810 LOY SECND.PItl+4 RWTS POINT1260 STA RWTS.PRM+5 SECTOR ,.,., ER LSI Requirements:ER 1820 JSR RWTS1 48K Apple II or II plus1210 LOT .... 1830 LOY RWTS.PRM+5 SECTOR JrUIIl One disk drive1260 DE'( ER Blank disk with no HELLO Program1290 STY RWTS.P1tt+9 BUffER PQ 1840 DE'( OCWE WITll TRA Integer Firmware Card or olher means to1300 LOA" '" RESET inlo the monilor1310 ST" RWTS.PRM+12 CCMWI) CO 1850 SPL NXT. TRlC frl),llAAHCH

DE 1860 LOT "'" NEXT TRACK, S The method of backing up the Essential1320 TXA A<=SlDT lUBE ECTOR 15 Data Duplicator I which appeared in Hard-

Hardcore COMPUTIST no.l0 7

Page 10: amaus.net computist...APPLIED ENGINEERING IS 100% APPLE That's Why We're So Good At II! • • p, 'IJ-' I ~JI rmtJi I • • I' • Complete 1I> voice music synthesizer on one card

core COMPUTIST no.8 can be modified sothat the technique also works on EDD III.Only two changes need to be made.

On EDD III the main copy protectionscheme starts at $3EES rather than at $21C9.This byte has to be changed to 68 (RTS).

The program's main entry point has alsobeen moved from $89SE. On the version dat­ed January 25, 1984, the new entry point is58955. On later versions the entry point isS695J. You may have to experiment withyour version to find the proper entry point.

So if you want to perfonn the Saftkey onEDD III, follow the procedure explained inthe article on pages 25-26 of HardcoTe COM­PTIST no. g and make the followingchanges:

I) Place a 68 at address $3EE8 instead of at$21C9.2) For the January 20, 1984 release of EDDchanse address $4026 in the hexdump to a55. For later versions try changing it to a 53.

Vsl_ Sape.. lOBTo Copy IlI'eIi LOGOay----KrdlLOGOKrd Software Corp.1321 Stoay Brook RoadStollY Brook, NY 11791$I9.9S

Requlrem~DIs:

Apple II plus with 64K or lieKrell LOGOSuper lOB programSwap ControllerOne blank diskInteger Firmware card or other means of en­tering the monitor

Krell LOGO version A can be copied withthe use of the Super lOB program which hasthe Swap Controller installed. Super lOBand the Swap Controller can both be foundin Hardcore COMPUTIST no. 9. You willalso need some way to RESET into the mo­nitor 50 that the LOGO RWTS can be savedto disk.

I) Boot up with the original KreU LOOOdiskand then RESET into the monitor.2) Move the RWTS to a safe location

.91. < BII'.BFFFM

J) Boot up a DOS 3.3 slave disk with noHELLO prOlraIn.

PR16

4) Save the Krell LOGO RWTS to the samedisk that has the Super lOB program on it

BSAVE LOGOKWTS,ASI9I',LS88lJ

5) Format a blank disk with the HELLO pro­gram listed below

FP.8 PRINT CHRS(4)"BLOAD

BANNER.SHP"2. PRINT CHR$(4)"RUN

KRELL.START"(NIT HELLO.LOGO

6) load the Super lOB and type in or EXECin the Swap Controller7) Change line 10011:1 to read

ll111l. PRINT CHR$(4)"SLOADLOGORWTS,A$I9I8"

8) Run the Super lOB program copying fromthe original Krell LOGO disk to the disk in­itialized in step 5. Do nor reformat the dupli­cate disk.

RUN

9) After the copy has been made, RENAMEthe old HELLO file on the copied disk asLOGO.START

RENAME HELLO,LOGO.sTART

19) The file that is now calledLOGO.START has a CALL 2167 whichneeds to be removed in order for the copyto work properly. LOAD the LOGO.STAR·TUP ftle and remove this CALL. It shouldbe in the first line of the program. Be sureto reSAVE the program after you have madethe change.

P ...a Fo..DB Mas V....lon 4.y .....u..I_

DB Master V~rsion 4 Stoneware51 Belvedere St.San Karael, CA 94911$229.lJ.

R~quirements:

Apple II or II plusEssential Data Duplicator 111or Locksmith 5.0Blank disk

Esselldal Dtlta Duplkalor III

I) Drive speed is critical for making a goodcopy.2) Copy tracks $0-56, $6.5-511.5 and$14.5-$22.5 in mode number I.3) Copy tracks $12.25·$13.25 in mode num­ber 2.

Locksmith 5.8

I) Copy track S0 in sync mode.2) Copy tracks 51-$6 in normal mode.J) Copy tracks $6.5·$11.5 in nonnal mode.4) Copy tracks $12.25-$13.25 in sync mode.5) Copy tracks $14.5-$22.5 in nonnal mode.

Softk.y 10..CanyonCII ...yJo.... LI ..

Canyon ClimMrDtltasoft9421 WinnetkaChatsworth, CA 91311$24.95

Requirements:Apple II with 48KFlOOne blank disk

Canyon Climber is an exceUentJ-level ar­cade game in which you attempt to scale ahi-res version of the Grand Canyon.

To remove the copy protection, you need10 make some modifications to DOS so thaterrors generated by the nonstandard end ofaddress and end of data marks are ignored.The single binary file can then be transfcrredto a normal 3.3 disk with the use of FlO.I) First boot up with a DOS 3.3 disk andmake the modifications to DOS

PRN6CALL -lSI8925:1868B988:18 6.BE48:18mOG

2) BRUN FlO and use the wildcard charac­ter (" "" ") to transfer the one file on theoriginal Canyon Climber disk to a standard3.3 disk. You must this because the file namecontains embedded control characters.

BRUN FID

Once you have transferred the file, use adisk editOr or Copy )[ + to change the filename so that its control characters areeliminated.

Continued from page 5

for Locksmith 5.0 have been acquired by Al­pha Logic Business SySlems.

Looking for The Royal Navy

In Hardcore Computist No.8, Jim Willisof West Mo~, LA mentioned that he useda prosram called The Royal Navy ReplayDisk for making backups. I've never heardof this program. Would you please tell mehow I could go about getting a copy of thisprogram'!

Thank you for your excellent magazine.

Larry NewbyCedar Grove, WI

Mr. Newby: The Royal Navy Replay diskis available for J26.00 from; EngineeringComputer Applications. Inc., P.O. Box/2518, Lake Park, PL 33403. t

8 Hardcore COMPUTIST no.IO

Page 11: amaus.net computist...APPLIED ENGINEERING IS 100% APPLE That's Why We're So Good At II! • • p, 'IJ-' I ~JI rmtJi I • • I' • Complete 1I> voice music synthesizer on one card

......... .. -,r _.reo Hunter .

SoltkeyFor The

Arcade Machine

...to safety.

28fHI <9688.B68IM8888 < B688.C8UM8A'8<1.98'M

8) Boot the disk that Su~ lOB formatted(you should get a ?FlLE NOT FOUND er­ror, but don't worry)

.~P

9) Enter Ihe monitor

CALL-lSI

10) Put a patch just before the beginning ofthe Arcade Machine code

8FD:4C 81 93

II) Type in this routine that moves thememory back to where it used to be

9300: ~ CD eo CD 20 90 CD 9693C8: E8 DO F7 EE 04 93 EE 079310: 93 AD 04 93 C9 40 DO EA9318: BO CD 8J 90 CD B6 E8 DO9320: F7 EE 1" 93 EE 10 93 AD9328: 10 93 C9 CO iii EA BO CD

Hardcore COMPUTIST no.10

I) First of all, boot up with a DOS Ihat hasthe ability to INITialize a disk (a fast DOSis recommended).2) Next, type in the Super lOB controller atthe end of this article and SAVE it. (See theController Saver article on page 11 for de­tails on ched:ing and saving Super lOB con­trollers).3) With the controller and Super lOBmerged, execute the Super lOB program.

RUN4) When Super lOB asks you if you want tofonnat the target disk., yOu must type Q "Y".This formatting is necessary because the con·troller does a special format to the disk whichputs the directory on track $12 instead of$ II.S) Once Super lOB has copied tracks$83-$11, boot up The Arcade Machine.

PRIll

6) Get into the monitor when the main menuappears.7) Move the main file and sensitive memory

rt COM·SIC UStiDgS

allChe plaCflace. ALL other

rted Into the pro·,-DATA ~atemeots,

splices after the word~ is one printed thert).

ind an delta chaMlcCer af­DATA, tben type a spatt,N'T! This is so yourCb«k­

Mlled cb«ksums will match upe ones lO'e print for Che program.

RTANT IMPORTANT IMPORTANTORTANT IMPORTANT IMPORTANT

~lIhOughBroderbund Software is gener·ally very Ihorough with their protectionschemes, they left two holes in the protec­tion on the Arcade Machine. First of all,tracks SIB through $11 are normal DOS 3.3tracks. These tracks store the various partsof the options available from the menu. Se­condly, allhough the main file is heavily pro­tected on the disk (spiral protection and whatnot), once loaded into memory it is fairlyclean.

Since the menu options take up tracks $03through $11 we have room for DOS (tracks0-2), as well as room for the main file($12-$22). Since track $11 is taken up by themenu options, we must change the locationof our CATALCKi. I chose to put it on track$12. Then we have a neat packaae (all on onedisk) just like the originaJ.. When we I:xxx ourdeprotected version, DOS will load the mainfile which from then on will access the menuoptions on tracks $03·$ 11.

Here's how.

Arcade MachineBroderbuod Soft""a1938 fourth Strftt° Rafael, C. 94981

) 456-64245

Page 12: amaus.net computist...APPLIED ENGINEERING IS 100% APPLE That's Why We're So Good At II! • • p, 'IJ-' I ~JI rmtJi I • • I' • Complete 1I> voice music synthesizer on one card

Hudto~ COMPUTlSTWRITER'S GUIDEP. O. BOX 44.\.49

TACOMA WA 98444

• Advenlu~ Tips• Orlginal proXnlms of inlereS!• Do·it,youlWlf hardware proJects• General lnle~sl artk1es* Bit-Copy Parameters

9330: SA 90 00 00 E8 00 F7 EE 9340- 0909 "" -9338: 30 93 EE 33 93 AD 33 93 9342- OOEA BHE O932E9340: C9 09 00 EA 4C 00 08 9344- 4C 00 08 "" """You can check your typing by comparing it 12) Save the main file

to the following disassembly: BSAVE ARCADE MACHINE,AS8FD,LS8D84

9300- "'00 LOX "'" 13) Return to BASIC9302- 80 00 20 LOA "lXXl,X9305- 900096 STA S96OO,X FPIOOl- E8 INX 14) Type in this short greeting program-- 00F7 BHE S93lJ29308- EE 04 93 INC S9304 18 PRINT CHR$(4) "BRUN ARCADE<>n- EE 07 93 INC S9307 MACHINE"9311- AD 04 93 LOA S9304 IS) Save it9314- 09'" "" "'" SAVE HELLO93'6- OOEA BHE S93lJ293'0- BD 00 80 LOA SBlXXl,x The Arcade Machine is now COPYAable.931s- 900086 STA S86OO,X The backside (with all the sample games) can93'E- E8 INX be copied with any good bit copier. If you93'>- 00F7 BHE 093'8 don't have a bit copier, you can insert a93"- EE 1A 93 INC O931A "POKE 47426,24" into line 10 of COPYA9324- EE 1D 93 INC 09310 to copy it.93"- AD 10 93 LOA 09310 One final note: The options from The Ar·93"- O9CO "" lISCO cade Machine were all written in Applesoft.932C- OOEA BHE 09318 If you RESET into the monitor and type93'E- so 00 SA LOA """',X CTFl.C to get into BASIC after choosing one933'- 900000 STA sam,x of the options, you can then list the file.9334- E8 INX

Arcade Machine Controller9335- 00 '7 ... O932E9337- EE 30 93 INC S9330933x- EE 33 93 INC 09333 410 G05Us 80 : HOME :AS =9330- AD 33 93 LOX 59333 "FORMATING" : FLA5H : G05Us

DEAR AUTHOR:Would you like to be published in Hardcore COMPUTIST? We would like to hear

from you.Hardcare COMPUTIST welcomes articles and submissions on a variety of subjects

of interest to users of the Apple (or compatible) computers and would like to publishwell-written material on the following:

• Softkeys• Hardwa", Modifications• Advanced Playing Techniques• DOS modifications• Ulililies• ProduC'l ",views

We prefer to see your submission on a DOS 3.3 disk using an Apple (or co~pati~le)editing program. Please enclose a double-spaced hardcopy (paper) manuscTlpt usmga dot-matrix or Jetter-quality printer (or typewriter). Submissions will be mailed backif adequate return packaging is included.

Hardco", COMPUTIST pays on acceptance. Rate of payment depends on the amountof editing necessary and the length of the article. Payment ranges between SIO for ashort saftkey, and SSO per typeset page for a full-length article. We pay more for ~oft­

keys if Ihe original commercial disk is enclosed for verification. We guarantee the dIsk'sreturn.

Softkey Publishing buys all rights as well as one-time reprint rights (for upcomingBEST OF Hardcore) on general articles, and exclusive rights on programs. We maymake alternate arrangements with individual authors, depending on the merit of thecontribution. At present we are nOI accepting fiction or poetry submissions, but Hanl­core COMPUTIST may make an exception for an outstanding computer-related sharislory or poem.

For a copy of our WRITER'S GUIDE send a business-sized (2D-cent) self-addressed,stamped envelope to:

450 : NORMAL: POKE 44033 ,18: POKE 44703,18: POKE 44764,18: POKE 42347 ,96

415 POKE 43364 ,255 : PRINT:PRINT CHRS (4 ) "INIT6HELLO,V"VL ",5" 52 ",0" 02 :Vl = 0RETURN

1000 REM ARCADE MACHINE1010 TK =3 :5T =0 :LT =18 :CD =

WR : POKE 47426 ,24 : G05Us1120

1020 T1 = TK : G05Us 4901030 G05UB 430 : G05Us 100 :ST =

ST + 1 : IF 5T < 005 THEN 10301040 IF 8F THEN 10601050 5T = 0 :TK = TK + 1 : IF TK <

LT THEN 10301060 G05U8 490 :TK = T1 :ST = 01070 G05Us 430 : G05Us 100 :ST =

5T + 1 : IF ST < 005 THEN 10701080 5T =0 :TK =TK + 1 : IF SF =

o AND TK < LT THEN 10701090 IF TK < LT THEN 10201100 HOME: PRINT: PRINT "DONE6

WITH6COPY" : END1120 POKE 44033,17: POKE 44703

,17: POKE 44764 ,17: POKE42347,76

1130 CD =RD :$0 =52 :DV =02 :G05Us 80 :TK = 18 :5T = 0 :G05U8 430 : GOSUs 100

1140 POKE 9985 ,18 : FOR A = 10052TO 10115 : POKE A ,0 : NEXT: CD = WR : G05U8 80 : G05Us100 :TK = 3 RETURN

410 SD1A9 1060 S2E6s415 - S0010 1070 - S266E1000 - S2067 1080 - SC7FA1010 - SD124 1090 SnOD1020 - SBE68 1100 S55881030 SA869 1120 S843C1040 S0084 1130 - S05611050 S3823 1140 - S17BE

4P1's 4P1'S 4P1'sCannonball Blitl

Here is how you can reduce the hazardson the second level of play. After finish­ing level I (a difficult task), press thespace bar and REPT keys simultaneous­ly until the screen shows the next level ofplay. When the second level of play be­gins, the number of cannons will havebeen reduced to only two!

Loderunner

There are a couple of keys in Loderun­ner that may help you see reach the higherlevels. They are:~:-lP - Adds another man to your

stockpile.~N - Transports you to the next level.C1~A _Aborts the current man (commit

suicide before the enemy(s) get you).

10 Hardcore COMPUTIST no.IO

Page 13: amaus.net computist...APPLIED ENGINEERING IS 100% APPLE That's Why We're So Good At II! • • p, 'IJ-' I ~JI rmtJi I • • I' • Complete 1I> voice music synthesizer on one card

Just when you thoughl changing con·Irollers in Super lOB wasn'l worth the d­fort (or the disk space), along comes theController Saver.

---- How it works ----

The Controller SaverBy Ray Darrah

"Just when you thought changing controllers in SuperlOB wasn't worth the effort (or the disk space), alongcomes the Controller Saver.....

The Conlroller Saver (named "SAVECONTROLLER") eJllractS the conlrollerportion of Super lOB and saves it to disk asa text file. Once this is done, softkeying adisk is as easy as loading Super lOB and EX­ECing the controller of your choice.

Saving a controller as a text file (denoledby "T" on the left side of the catalog) takesup 1/5 the space Ihat a different Super lOBprogram for each new controller would.SAVE CONTROLLER extracts lines 1000through 9999 as well as any other lines youmay have added or inserted inlO Super lOB.

SAVE CONTROLLER uses CRUNCH­LIST II which appears in this issue on page26. If you haven't typed CRUNCHLlST IIin yet, do so immediately.

Once CRUNCHLlST II has beenBSAVEd, type in the listing on this page and

SAVE MAKE SAVER

on the same disk. Next,

RUN MAKE SAVERThis will put a me on Ihe disk called SAVECONTROLLER which is an EXECable im­age of lines 50000-50220 in the MAKESAVER program. If you wish 10 alter theConlroller Saver, you should make the al­terations to these lines and then RUN theprogram and it will put the image of the newprogram on the disk.

--- How Do I Use II? ---

Hence forth, when you wish to save a con­troller, simply Iype

EXEC SAVE CONTROLLER

After some disk spinning and lots ofprompts rolling up the screen, the computerwill ask:

DELETE ANY LINES?

This is asking if you had to eliminate any linenumbers of Super lOB in order for it to filin the allocated space. If you type "Y", thecomputer will then ask which lines youDEleted. You must reply with a range ofline numbers separated by a comma. If youonly deleted one line then you must type thesame number twice (still sepanl.ted by a com­ma). When you art fmished, press "0,0."Now, upon the EXECing of this controller,those lines specified will be DEleted fromSuper lOB.

Next you are asked:

SAVE ANY EXTRA LINES?

If your conuoller occupies more area thanlines 1000-9999, then you must type a "Y"and enter the other range(s) (just like the de­letions) to be saved (besides the usual 1000through 9999). Again, you exit this routineby typing "0,0".

The final prompt is:

CONTROLLER FlLENAME= >This is merely a request for the entry of thefilename. I usually append a '.CON' to theend of the name to designate it as a con­troller.

-- Better Error Checking--

In the future (this issue included), Hard­core COMPUTIST will publish controllerswith checksums. To check your typing,NEW the program in memory and then typein the controUer. When you're done, BRUNchecksoft to check your typing. With all er­rors corrected, save the file by typing

EXEC SAVE CONTROLLER

(For in.formation on d~lt. ch.l'lId~rs ("") seeIMPORTAl'.T not~ on pagt 9.)

Make Saver

10 OS = CHRS (13) + CHRS (4) :NMS ="SAVE·COHTROLLER": HOME

20 vnB 12: PRINT TAB(11)"ONE·MOMENT·PLEASE."

30 PRINT OS"NOMONCIO"DS"BRUNCRUNCHLIST .OBJ"

40 PRINT DS"OPEN"NJIISDS"DELETE"NJIISDS"OPEN "NJIISDS' 'WR I TE"NJIIS

50 PRINT "DEL5oooo,59999": &50000,59999: PRINT"RUN50000":

60 PRINT DS"ClOSE": HOME : PRINT"C~TROLlER·SAVER·F I lE·COMPLETE": END

50000 TEXT : HOME : VTAS 5: PRINT"SUPER· I OB·CONTROllER·SAVE"

50010 PRINT : PRINT : PRINT CHRS(4)"BRUNCRUNCHLIST .OBJ": OHtX(10,3)

50020 PRINT "OElETE·ANY·LINES?·N"CHRS (8):: GET AS: IF AS < >"Y" THEN 50050

50030 HOME : PRINT "ENTER·THE·IINE·Nl/MBERS·TO""OElETE": VTAB3

50040 PS = "OElETE·":X :: 0: GOSUB502oo:NO = A - 1

50050 HTAB 1: VTAB 10: PRINT"SAVE·ANY· EXTR A·LI NE S1·N"CHRS (8);: GET AS: IF AS < >"Y" THEN 50080

50060 HOME : PRINT "ENTER·THE·LINE·NUMBERS·TO""SAVE": VnB 3

50070 X = 2:PS = "SAVE·": GOSUB 502oo:NI=A-1

50080 PRINT: PRINT: INPUT "CONTROLLER""FILENAME::>";NMS:DS = CHRS (13) + CHRS (4)

50090 PRINT DS"NOJIIONCIO": HOJIIE :VTAB 12: PRINT "SAVING·"NJIIS

50100 PRINT DS"OPEN"NJIISOS"DElETE"NMSOS' 'OP EN"NHSOS' 'WR I TE"NHS

50110 IF NO = 0 THEN 5013050120 FOR A =1 TO NO: PRINT

"OEl"XCA,O>","XCA,1): NEXT50130 PRINT "OEllooo,9999": &

1000,999950140 IF NI = 0 THEN 5016050150 FOR A = 1 TO NI: PRINT

"OEL"XCA,2>","XCA,3): &X(A,2).X(A,3): NEXT

50160 FOR A = 1 TO LEN (NMS): IFMIOS (NMS,A, " < > "." THENNEXT : GOTO 50180

50170 NMS = lEFTS (NMS,A - 1)50180 PRINT "1:1" CHRS (34)N"S"·

CONTROLlER·ENTEREO·"i50190 PRINT DS"CLOSE": HOME :

VTA8 5: PRINT "CONTROLLER·SAVED": Del 50000,59999

50200 FOR A = 1 TO 10: PRINT:PRINT PSi

50210 INPUT "":XCA,X),XCA.X + 1):

IF XCA,X) = 0 THEN RETURN50220 NEXT : RETURN

Make Saver Checksums

10 - SD60E 50090 - S30F520 - S86E2 50100 - SD20330 - S2BBE 50110 - S3BOB40 - S8F49 50120 - S108650 - SDn8 50130 - S6F3860 - S662E 50140 - SF18c50000 - S22C5 50150 - SA28A50010 - S63F6 50160 - SC64F50020 - S9FOC 50170 - $44C850030 - S2437 50180 - S46B550040 - S4C9F 50190 - S08C350050 - S21A7 50200 - SFAE850060 - so067 50210 - S641950070 - S2BE3 50220 - S536550080 - S5673

Hardcore COMPUTlST no.1O 11

Page 14: amaus.net computist...APPLIED ENGINEERING IS 100% APPLE That's Why We're So Good At II! • • p, 'IJ-' I ~JI rmtJi I • • I' • Complete 1I> voice music synthesizer on one card

12

SoHkey For"he Bank Scree«

W.-Her

Bank Street Writer17 Paul DriveSin Rafael, CA 94903$69.95

Requirements:Apple lI,H +,1Ie (minimum 48K and Ap­plesoft)One disk drive and DOS 3.3Blank disks

/' /'

The Bank Street Writer is a word process­ing program particularly suited to the begin­ner. As such it includes many features toprevent confusion and accidents which mightbe experienced by the computer novice. Indeveloping this softkey we have attemptedto retain as many of these features aspossible.

The original disk is able to operate withseveral different configurations of hardware.It requires (and checks for) a minimum of48K of motherboard RAM. In addition, thepresence of Applesoft is verified. If a 16K

Hardcore COMPUTIST no.lO

RAMCARD is installed in slot 0, Applesoftwill be placed there if necessary. If Applesof{is in motherboard ROM, the extra 16K willbe used to increase the user's text memoryallowing about 3,200 words instead of I ,300without the card. If installed into an Apple/ Ie, the program will use the / Ie's extramemory and the "open-apple, closed-apple"keys along with the four cursor movementkeys.

Extensive error-trapping is performed andhitting RESET is totally non-destructive tothe user's text, requiring only a press of theReturn key to carryon.

After experiencing some difficulty in get­ting the saftkey version to properly operatethe disk drive, we came upon a feature notdescribed in the manual. The program actu­ally prevents the user from accidentally orotherwise INlTing or SAVEing files to themaster disk (something that our instinctsprevented us from trying!).

We have made an effort to maintain asmany of these user-proof features as possi­ble in our softkey. The unlocked softkey ver­sion supports all but the following featuresof the original:1) At lellSt 48K of RAM and Applesoft mustbe resident in the macbine at the time thesoftkey version is booted. Our start-up pro­gram is in Applesoft. It is possible to enterthe program as an Integer Basic file and in­clude a few statements to load Applesoft intothe RAM card. The program will then worknormally. All the users we know have Ap­plesoft in ROM on the motherboard; there­fore, we felt this was not a serious limitation.2) The original boots VERY QUICKLYcompared to the softkey vers'on. Bank StreetWriter (BSW) uses a powerful bulk-loadingscheme to bring its files into memory. Thisscheme depends on the format of the dalaon the disk and, of course, that is what wewant to change. If you're not the kind wholikes to wait around, we strongly recommendthe use of one of the fast DOS's such asDiversi-Dos, Hyper-DOS, ProntoDos, etc.

The Boot ProcessThe following paragraphs describe {he

boot activity of the original disk as an insightinto the softkey method. You may, ofcourse, simply follow the Softkey steps if youwish.

BSW, like all disks, has a track 0, sectorothat must be readable by the disk controllercard's firmware at $C600 (assuming the cardis in slot 6). This data is loaded into $800to $8FF and executed. At this point, moredata is read from track 0 and placed intomemory at $1000 to $1700. Execution ispassed to the code starting al $1400.

At this point the program verifies that atleast 48K of RAM is present, printing a mes­sage and stopping if it finds less. If all is well,the BSW DOS is loaded from tracks $1 and$2 into $9600 to $BFFF.

Next, the type of hardware configurationis determined and an identifying characteris printed in the upper left corner of the

Page 15: amaus.net computist...APPLIED ENGINEERING IS 100% APPLE That's Why We're So Good At II! • • p, 'IJ-' I ~JI rmtJi I • • I' • Complete 1I> voice music synthesizer on one card

S1F'< Tracks Loeded .• into~

, n, U, S10 S6IID to SBFFF2 n, S1J7, SOl SlXXD to SFFFF

"" S880J to S9"FF3 '"', SOl, SOC SlXXD to SFFFF

SO> S880J to S9"FF

screen. There are four possible configura­tions which may occur. A value of 0, 1,2,or 3 is stored in memory location $ I F de­pending on the ty~ of hardware. Thesevalues represent;

o = No Applesoft and no ramcard in sloto (Screen character "0")

1 = Applesofl present in ROM or ramcardand 48K (Screen character "4")

2 = Applesoft in ROM and ramcard in sloto (Screen character "6")

3 = Apple lie (Screen character "e")

I Most Wanted List IReader response to our "Most Want·

ed List" has been very favorable. Wehave received softkeys for a number ofprograms preViously in our list. We willbe publishing the softkeys we havereceived just as soon as they have beenevaluated and edited by our staff.

So, keep those votes and softkeyscoming.

If there is a program that you havebeen pulling your hair out trying to back-up, lei us know about it.

Hardcore COMPUTISTWanted U,t

P.O. Box 44549Tacoma, WA 98444

II you know how to de-protect, unlockor modify any oftha programs below, weencourage you to help other HardcoreCOMPUTIST readers and earn someextra money at the same lime. Be sureto send the infonnalion to us in articlefonn on a DOS 3.3 diskette.

1. Apple Buaine.. Graphic,Apple Compu'er

2. Flight Simulator IISub Logic

3. Type AttackSlriu. SoHwa,.

4. DB Ma,ter 4.0Stonewa,., Inc.

5. Time I' MoneyTurning Polnr

6. CrOHword MAGICL & 5 Compulerwa,.

7. YlslblendMicro Lab

8. BPI General LedgerApple Compuler

9. Dolle,. And Sen..Monogram

10. Word JugglerQuerk, Inc.

11. Cetely,tQu.rk, Inc.

12. Rocky', BootsThe L..m/ng Company

13. PFS GraphSoftw.,. Publl.hlng Corp.14. The Slall,tlc, Serle,Human Sy.rem. Dyn.m/c.

15. Mlllional,.Blue Chip Softw.,.

16. FacemakerSpinnaker

17. SIOry MachineSplnnakar

18. MASTER TYPEScarborough Syslem.

S0551.....,SC81FS2E64SF3C7S8566S7117S"619sa",

The ProtectionThe copy protection on the BSW disk con­

sists essentially of changes to address anddala prologue and epilogue bytes on sometracks and non-standard encoding and sec­toring (for fast load) on other tracks. Half­tracks, track.arcing, track synchronizing,and nibble counting do not seem to havebeen used. The disk can be bit-copied(method given below) but seems to be speedsensitive which might indicate that the origi.nal was written at slower than nonnal speed.

The Sollkey

To obtain an unprotected version of BSW,the original is allowed to load the requiredranges of memory under the control of asmall machine language program. At specifICpoints in the boot, the program breaks intothe monitor. A slave OOS is then booted andused to save the files in the normal DOS 3.3fonnat. Finally, a Basic program is writtento emulate the functions of the original bootprocess, ending with a CALL 1317 ($S25) todo the initializing and start the program.

In an effort to make things a little moresensible, notes are included with the softkeysteps. There are quite a number of files tocapture and many machine code patches toperfonn, so we suggest you take your timeand double check any·typed in code.

At this point, the disk access is finallycompleted and the drive is shut off. The nextstatement 10 be executed is at $52S. This codedoes some initialization and patching andthen Slam the program with an indirect jumpthrough $0000 to either S6009 for hardwaretype I ($IF= I) or $098F for types 2 and 3.

I) Boot DOS 3.3 into your system.2) Enter the monitor and change the VTOCbuffer (explained later)

CALL·ISIBJBF:AS

3) RelUffi to BASIC and clear the programmemory

~C

FP4) Initialize a disk with this modified VTOC

INIT HELLO

5) Move the disk ][ controller ROM intoRAM

36811 <C6l1I1.C6F7M

6) Enter the following machine code

36F8: "9 05 80 21 08 "9 37 803700: 22 08 4C 01 08 AO 00 893708: 20 37 99 F8 13 C8 CO 053710: DO F5 8D 84 14 80 86 143718: 80 "0 17 "9 48 80 B6 143720: A9 32 8D 25 15 A9 37 803728: 26 15 4C 00 14 A9 01 853730: 1F 60 "9 4C 8D 25 05 "93738: 59 80 26 05 "9 FF 8D 27

t9CID to S98FFS25(I) to SlCFFS3IlD to S3FFFSOlD to S1 FFFSOlD to S1FFF

into ~ry

S1'S20,S>1S22S18, S1CS10, S1E

23

,S1F: TrKks loeded

Next, hi-res graphics page two is displayedand filled with the title page from tracks $18and $19. More data is read into S400 to $7FFfrom track $1 A. The drive head is then posi­tioned to track $11 and the SSW DOS iscold-staned with a jump to $9084.

Track $ II contains a file directory like anormal disk. The BSW DOS loads in an Ap­plesoft greeting program at $800 and RUNsit. The program filename is .. A"followed by7 backspace characters and 22 spaces. Whenwe later modify normal DOS to read thecatalog, this filename will not appear sincethe backspaces cause the visible charactersto be overwritten by the spaces when print­ed to the screen.

Program "A"first detects if the "ES·C"key has been pressed during the boot. Ifso, the UTILITY program is run (more onthis later). Otherwise, "A"loads two othersmall binary files. One is called 0$301 whichloads at $301 and the other is INIT, loadedat $200. Once these are loaded, "A"con­tinues the boot with a CALL 2048. This be­gins execution of the code loaded earlier at$4ll0.

Another hardware-dependent load is per­formed next as follows;

If no motherboard ROM Applesoft isfound but a ramcard is detected, the type­checking code automatically loads Applesoftfrom tracks 3, 4 and 5 into the card and ac­tivates it. For all intents, this is the same con­figuration as a 4gK Apple II + ($ IF = 1).

If $ IF = 0 after the type-check, the pro­gram informs the user that Applesoft is re­Quired and stops. For the otherconfigurations more data is loaded intomemory as follows;

Hardcore COMPUTlST no.10 13

Page 16: amaus.net computist...APPLIED ENGINEERING IS 100% APPLE That's Why We're So Good At II! • • p, 'IJ-' I ~JI rmtJi I • • I' • Complete 1I> voice music synthesizer on one card

ing machine code patch

1318: 2C 81 C8 28 55 13 fit &61388: 1C 88 C& 4C 15 13 18 3E1311: 13 n IC EA EA

A 1300L should produce:

Lei's Continue10) Move the BSW code out of the way soour slave disk can boot.

1418 <9Iltlt.9BFFM

II) Put the slave disk in the drive and boot it.

C...

12) We will now save as many files aspossible.

BSAVE TYPECHECK,AS1318,LS69BSAVE BSW.LOGO,AS4lt18,LSlItltltBSAVE BSW.48K.I,AS6ltllJ,LSJlltltBSAVE BSW.48K.2,AS25I1,LSIB81BSAVE BSW.48K.3,ASI4t1I,LSAA6

13) We are ready to move on to the 'type 2'files. So hop into the monitor and loadCODEBREAK

CALL·lSIBLOAD CODEBREAK

etc...Because our softkey requires Applesoft to

be installed before running, some minorchanges to the BSW type-ehecking routineat $1300 are needed to maintain maximumcompatibility. The BSW type-checker nor­mally first checks for a ramcard by writingand verifying that every bit pattern can bestored at $0000. This would clobber Ap­plesoft which might have been loaded thereby the user before running the soft key ver­sion. To handle this situation, the above codefirst enables motherboard ROM with a BIT$C081 and calls the BSW "check for Ap­plesoft" routine at $1355. This routinereturns with the zero flag set if Applesoft isfound. If it is found, we go to SI30E wherewe check for a ramcard via the JSR $133E.If a ramcard is found, the code branches tothe lie-checker at S132F. That code will exitwith a 'type 2' if a lie is not found or witha 'type 3' if it is found.

If Applesoft is not found in motherboardROM, execution falls through to $130S. Wecouldn't have gotten here with the softkeyversion if Applesoft were not in slot 0, soit is re-activated and the code exits indicat­ing a 'type I'. If the ramcard check at $130Efails, the routine also exits as a 'type 1'.

BIT SCCB1JSR $1355BEQ $13OEBIT $C(l\()

JIf) $1315JSR S133EBEQ $132FHOPHOP

lOX "'"

1300- 2C 81 CO1303- 20 55 13131Xl- FO 0613CB- 2C 80 CO1308- 4C 15 131JOE- 20 3E 131311- FO 1C1313- EA1314- EA1315- A2 01

Whew! Lei's Gel Some Files8) Put the BSW disk in the drive and exe­cute CODEBREAK

361IG

9) When the drive stops, make the foUow-

minimum hardware configuration.

3785.3711 - copies the small piece of codebetween $3720 and $3731 into the BSWcode starting at $13FS. This little patchwill be executed after the type<heckingcode. It simply stores a constant into$ IF, overwriting whatever the type­checking routine had placed there. Toload the different hardware-dependentfiles, we will simply change our cons­tant (at $372E) to a I, 2 or 3, as needed.

3712.37IA - the value in the accumulatorwhen we reach here is a $60. This willbe stored at three locations: $1484,$1486, and $17A0. The first two loca­tions will force the first type 2 and type3 files to be placed at $6000 instead of50000 (in the ram card) so we don'tneed a ramcard to capture these files.Location $17A0 is the start of the rou­tine that checks for minimum 48K ofram. The $60 (an RTS instruction) pre­vents this routine from being executed.The ramcheck code at $17A0 writes a$00 and an $FF at every page bound­ary from 52000 to SBF00 to verify thatram exists at these locations. We want­ed to avoid clobbering anything wemight want to put in memory, so webypassed this code.

371B.371F - a $4B is patched at SI4B6 toredirect the third BSW load ($S800 to59AFF for types 2 and 3) to start at$4B00. This prevents BSW from clob­bering our relocated files at $6000 to$SFFF. $4B00 is in hi-res page two andwould normally be overwritten by thelogo. We will capture the logo duringthe type 1 file loading and then disablethe logo loading for the types 2 and 3loads.

37l1t .372C - used to redirect the executionback to $3732 when the BSW code isfinished loading the second set of filesand about to cold start the DOS.

3720.3731 - This code is copied into loca­tions $13FS through $13FC and it"short circuits"the error checkingroutine.

3731.3743 - places JMP ($4C) to $FF59 at$0525 which allows us to break inlO themonitor after the last files are loaded.The boot is continued by cold-startingthe BSW DOS with a JMP 59DS4.

3744.374E - used later to store $2C (a harm­less BIT instruction) on top of two JSRinstructions used to load the hi-res pagetwo graphic. We will change the JMP$1400 at $372A to a JMP $3744 afterwe have saved the logo. We can then usethe space from $4800 to $5AFF for thethird portion of the type 2 and 3 loads.

How CODEBREAK WorksThe CODEBREAK program was deve­

loped by boot code tracing the original disk.It operates as follows:

3618.361'1 - copied from the disk controllercard, reads in the track 0 sector 0 datainto $800. Nonnally, there would be aJMP S080 I instruction at S36F8 but wehave instead placed the CODEBREAKprogram there.

36F8.37lt4 - forces the BSW code to jumpback to us at $3705 when it is throughloading the $1000 to $17FF data fromthe disk.

3740: 05 4C 84 90 A9 2C 80 " S902C

3748: 14 80 01 14 4C 00 14 S8B9F

If you can't check this code with check-bin then you may check it against the fol-lowing:

36F8- '9 rfj lO' #SIJ536FA- 802108 STA S082'36Fo- A937 LDA #$3736FF- 80 22 CS STA S0822'702- 4C 01 08 JO" ""'"'7[fj- ,(HI) lOY II1IJJ'707- B9 20 37 LDA 13720,Y

'7IlA- 99 F8 13 STA S13F8, Y,71»- C8 (NY

'7Oe- COrfj CPY #SIJ5,no- OOF5 SHE $37073712- 80 84 14 ST' $14843715- 80 86 14 'TA $14863718- 80 All 17 'TA S17All371B- '9 .. LDA "'"3710- 80 B6 14 'TA $1486,no- A932 lO' #$323722- 80 25 15 'TA S15253725- A937 LDA #$373727- 80 26 15 STA S1526'72A- 4C 00 14 JO" $1""mo- '9 01 LDA "'"372F- 85 1F STA S1F3731- 60 RT'3732- A9 4C LDA /t$4C

'734- 80 25 05 'TA 505253737- A959 LDA ..59373'>- 80 26 05 'TA 50526373C- A9 FF LDA .."373E- 80 27 05 'TA 505273741- 4C 84 90 J'" .-3744- A9 2C lO' me3746- 80 CA 14 ST' S14C.43749- 80 01 14 STA S1401374C- 4C 00 14 J'" $1""

7) Save the boot ROM and program

BSAVE CODEBREAK,AS36fHt,L$14F

The BSW subroutine at $13F0 calls type­checking code at $1300 and restarts the drivebefore it returns at $13F8. The type~hecking

code stores the value 0, 1,2 or 3 into SIFaccording to the kind of hardware it finds.We wiU short circuit this code so that we canload aU the files even if we only have the

14 Hardcore COMPUTIST no.1O

Page 17: amaus.net computist...APPLIED ENGINEERING IS 100% APPLE That's Why We're So Good At II! • • p, 'IJ-' I ~JI rmtJi I • • I' • Complete 1I> voice music synthesizer on one card

FFS9G

J6lIIG

29) Reset the character output switch andenter the monitor

30) Put the slave disk back in the drive andboot it

lITlLlTY contains twO lines that call amachine language subroutine. This routineis used by lITlLlTY to challJe the BSWDOS from non·standard to standard andback again depending on whether the BSWdisk or the data disk is being accessed. UTIL­ITY calls the routine through the now fa­mous ampersand ("&") vector.

Happily, our slave DOS will be the sameformat for both the BSW softkey disk andour data disks. If we remove the "&"calls,UTILITY will work fine with our new un­locked BSW disk.

SAVE UTILITYBSAVE INIT,A$63I',LSIIBSAVE OS381,AS731I,UCFBSAVE PASSWORDI ,AS8&81 ,LSlle

We have finally obtained all the requiredfiles from the BSW original disk. The re­maining tasks are:

1) Write a program to emulate the bootprocess.

2) Write two small machine language OOSpatches.

895S:A5895F:96896A:BFB99I:9A8994:1161

A CATALOG of the BSW original shouldreveal the names of the files mentioned earli·er. Notice the extra blank line at the top ofthe listing. This is where the "A"fiIe's file­name was printed. Since it is a tedious proce­dure to change DOS like this, it is convenientthat we can place all these files into memoryat the same time.

33) Load the files

BLOAD INIT,AS6381BLOAD OS3lI,AS731JBLOAD PASSWORDI,AweeLOAD UTILITY

Condnu«/ on fHlIe 11

34) Prepare to edit line 12

HOME: POKE: 33,33: LlSTJl

35) Using the ESC keys, and right arrow key,remove from this line the "&:1 "and "&9".36) Remove the "&1 "and "&9"from line 98.

LlST91

37) To save the flies, we must swilch backto standard DOS sector ID bytes. Insert theslave disk and type

CALL-lSI88E7:DSBIFI:AA88FC:AD8935:DEB95S:DS895F:AAB96A:96899I:DE

38) We can now save the flies in standardformat.

JSR S0486U,.."ASL

2SID- ill 86 0425Il5- AS 1F

2505- '"

etc ...If this is what you see, you've gOt il! If

not, try steps 27 through 29 again.

C61IG

31) Save the code beginning at 50525

BSAVE BSW.S525.S7FF,AS2515.LS1DB

Gelling The CATALOGable FilesThe next step is to capture the CAT­

AlOGable files from the BSW original. Inorder to do this, the RWTS (Read or Writea Track/Sector) routine of our slave DOSmust be modified to handle the non-standardprologue and epilogue bytes of the BSWdisk.

32) Enter the monitor and make the neces­sary changes to DOS

CALL-lSIBlE7:D4BlF1:D5BlFC:D6B93S:D78931:1161

You will not set any of the characters youtype, so be coreful. /f you think you madea mistake, tyfW c:nlX and stort over.

28) Move the file out of the way (be careful)

2S1lJ < see.7FFM

in the text page, since DOS normally printsa few prompts and carriage returns to thetext screen as it starts up.

We will take advantage of this by enter­ing the monitor at 5FF62 instead of 5FFS9.This will prevenl the monitor from fIXing thecharacter switch and give us time to movethe data manually. Since no characters canbe printed to the screen, we will be 'blind'for a moment so type carefully.

26) TeU CODEBREAK to turn off the driveand JuMP into the monitor without reset­ting the character output switch

BLOAD CODEBREAKCALL-lSI3732:2C E8 Ct 4C 62 FF

27) Put the SSW original in the drive andboot it with

You should now see the monitor prompt.If you type

".ILyou should see

Whal's Nexl?We must now capture the inilialization

code which resides in pages 55 to 57. Thisis not as straightforward as the other flle:s be­cause this memory range is pan of the pageI text screen. When we jump to the monitorat $FF59 it immediately begins to prim itsprompt and scroll the screen. This actionquickly destroys the BSW data stored there.

The data must be moved out of the textpage before anything is primed. We couldmodify CODEBREAK to move the data be­fore jumping to the monitor, but we hatetyping in code especially when there is an in­teresting alternative. BSW short-circuits thecharacter switch pointer ($36 537) by point­ing it to an RTS instruction at 5FF58 just be­fore it cold-starts its DOS. This is necessaryto prevent its OOS from destroying the data

20) To get the lie files. Enter the monilOr,load CODEBREAK, and teU it we want"type 3"files

BLOAD CODEBREAKCALL-lSI372E:lJ3

21) Prevent the hi-res graphic load

3728:44 37

22) Put the BSW original in the drive andstartup CODEBREAK

J6lI.G

23) Move this me out of the slave disk's bootpath

288.< .... IFFFM

24) Put the slave disk in the drive and bootit by typing

C61IG

25) Now save the lie files

BSAVE BSW.lIE. I ,A$6t188 ,LS3811BSAVE BSW.lIE.2,AS288',UI8I18SAVE 8SW.IIE.3,AS4Bt. ,UFA6

14) Prepare CODEBREAK for "type 2"files

372E:lJ2

IS) Enable the "hi-res graphK: load disabler"

372B:44 37

16) Put the BSW disk in the drive and exe­cute the modified CODEBREAK program

J6lIIG

Remember, the hi-res graphics load has beendisabled so don '/ be alarmed when you don 'Isee the logo appear.

17) Move the file out of the way so we canboot

288lJ <88lJ.IFFFM

18) Boot the slave disk again

C61IG

19) Save all of the "type 2"fiIes

BSAVE BSW.64K.I,AS6ItI,LSJttl8SAVE BSW.64K.2,A$2II',LSI'"8SAVE BSW.64K.3,AS4Bt',LSFA6

Hardcore COMPlITlST no.IO "

Page 18: amaus.net computist...APPLIED ENGINEERING IS 100% APPLE That's Why We're So Good At II! • • p, 'IJ-' I ~JI rmtJi I • • I' • Complete 1I> voice music synthesizer on one card

~16 Hardcore COMPUTIST no.1O ~

One of the barriers a compuler encoun­ters when dealing with the outside world isits need to process information in digitalform. Unfortunately, information in theworld is usually analog and cannot be direct­ly handled by a computer. The informationin an analog signal is usually transmitted asa voltage or current level, whereas the infor­mation in a digital signal is dependent uponthe frequency of that signal.

How Does it Work?ApplEar doesn't just repeatedly read lo­

cation $C060 and store the status of the highbit in consecutive memory bits. Although thiswould provide the best sound reproduction,it would use up a great deal of memory. In­stead, ApplEar reads the cassette jack andkeeps a count of how long the high bit at$C060 stays set or clear. This number is thenstored in the Apple's memory. With thistechnique, as much as ten times the amountof data (recorded material) can be stored inmemory.

The bytes that are played and recorded arearranged as follows:

Bit 7 - The state of the cassetle input jackat the time of sampling.

Bits 6-6 - A number that is a multiple of thenumber of clock cycles (amoum of time)that the input jack remained in thisstate.

TeU it What You WantA string of values are passed to ApplEar

that tell it everything it needs to know aboutthe sound it has to deal with next. The loca­tion of these values in memory (currently onzero page) could be changed by altering thesource code and reassembling it. The follow­ing is an explanation of various locationsused by ApplEar.

SFC (252) - This location tells ApplEar fromwhich page (block of 256 bytes) of memoryto start playing or recording. To play some­thing from the hi-res page 2, this locationwould hold a $40 (64 in decimal).

ing or where in memory to start playing. Inaddition, a timing variable is used by Ap­plEar to more efficiently utilize the Apple'Smemory. Six versions of ApplEar have beenprovided to allow maximum ease when in­corporating ApplEar into other programs.

What About the Program?AppLEar has the capability of playing back

sounds (even at different speeds) that it haspreviously "heard." The user can tell Ap­plEar where in memory to store the record-

the Apple that even comes close to perfonn­ing the process of analog to digital conver­sion (and rather crudely I might add) are thecassene input jack and paddle button inputs.

The cassette input jack is hard-wired sothat the staws of the voltage (positive ornegative) through it is mapped into bit 7 oflocation $C060. Therefore, if we were towrite a program that sampled location $C060and clicked the speaker everytime the msb(most significant bit or bit 7) changed state,we would produce a tone of the same fre­quency (but not of the same amplitude) asthe tone being played (via tape player or am­plifier) through the cassette input jack. Us­ing this method we can roughly reproduceany sound (such as a human voice) that canbe played into the cassette jack.

By Ray Darrah

VOICE SYNTHESISand EXOTIC SOUNDEFFECTS on your Ap­ple are as easy as piewith ...

o

Q

()

Digital?! Analog!?Since computers only understand digital

inrannalion, it would be helpful if we couldconvert analog information to digital so thecomputer could act upon it. The process ofconverting from analog to digital generallyinvolves measuring the amount of current (orvoltage) present at a point in time and thenconverting it into a binary number. This bi­nary number is merely a string of0's and 1'swhich can be stored in memory.

Unfo""",,,ly, th, onlyIhing~

J-

Page 19: amaus.net computist...APPLIED ENGINEERING IS 100% APPLE That's Why We're So Good At II! • • p, 'IJ-' I ~JI rmtJi I • • I' • Complete 1I> voice music synthesizer on one card

SFD (253) - This memory location specifies DOS which would prevent you from saving 0320: EA CA DO F8 A4 00 91 01 S134Ethe ending page for playing or recording. To your wonderful recording. Also, you prob- 0328: AA C8 84 00 DO DE E6 02 SC9BArecord something on the hires page 2, this ably shouldn't set the beginning page byte 0330: A4 02 C4 FD 90 D6 60 SC64Clocation would hold a S80 (l2g in decimal). (SFq lower then S08 beause that is whereSFE (254) _ Location SFE is used by twO ve..· the screen and other volatile memory emls. ApplEarl.Rsions of ApplEar to indicate whether to 0300: A9 00 85 01 85 00 AS FC 547B5record into or play from Ihe above men- ApplEart 0308: 85 02 2C 60 CO 10 F9 80 SA5ACtioned memory range. If the value in Ihis 10- 0300, A9 00 85 01 85 00 AS FC 547B5 0310: 30 cO 2C 60 CO 30 FB 80 S9055cation is greater than S7F (127 in decimaJ), 0308: 85 02 24 FE 30 03 4C 8F SFOFE 0318: 30 cO 2C 00 CO 10 EB 80 $60CCApplEar will record into those locations. 0310: 03 2C 60 CO 10 F9 80 30 O65E7 0320: 10 CO A9 00 FO 00 EA fA SlOSEOtherwise, il plays them through Ihe speakc:r. 0318: CO 2C 60 CO 30 FB 80 30 SlC7F 0328: EA EA AD 60 CO 10 15 30 SB1A7srF (255) - This location holds the timing 0320: CO 2C 00 CO 10 EB 80 10 SB53F 0330: 00 A2 80 E8 EO FF FO 20 S3C13variable mentioned above. It is used by all 0328: CO A9 00 FO 00 EA EA EA S079F 0338: A4 FF 88 DO FO 2C 60 cO 16575versions of ApplEarl but not any versions 0330: EA AD 60 cO 10 15 3000 S76EB 0340: 30 F1 10 14 EA A2 00 E8 S7164ofApplEar 2. Location SFF holds a number 0338: A2 80 E8 EO FF FO 20 A4 58C94 0348: EO 7F FO DC A4 FF 88 00 SF7F6(from SOO through 540) that specifies how 0340: FF 88 00 FO 2C 60 CO 30 $3C27long to delay between samplings of SC060. 0348: Fl 10 14 EA A2 00 E8 EO S25FB 0350: FO 2C 60 cO 10 F1 30 00 S3C5BHigher numbers produce worse sound qual- 0358: A4 00 SA 91 01 C8 84 00 S3C94ity and betler memory usage whereas lower 0350: 7F FO Oc A4 FF 88 DO FO S5603 0360: 00 cO E6 02 AS 02 C5 FO S9AOCnumbers produce bener sound quality and 0358: 2C 60 CO 10 F1 30 00 A4 SC494 0368: 90 B8 60 '600'worse memory usage. 0360: 00 8A 91 01 C8 84 00 DO S8FOE

0368: CO E6 02 AS 02 C5 FO 90 SEB28 ApplEar2.RSix Versions? 0370: 88 60 29 80 C5 F8 85 FB $6083 0300: A9 00 85 01 85 00 AS FC S4785

0378: FO 05 80 30 CO DO 03 EA S206CAs mentioned earlier, there are six differ- 0380: EA EA 8A 29 7F A4 FF 88 S1283

0308: 85 02 2C 60 CO 10 F8 80 U5AC

ent versions of ApplEar prinled at the end 0388: 00 FO AA EA CA DO F3 A4 S5EC50310: 30 CO 2C 60 CO 30 F8 80 S9055

of this article. Three of them (AppIEarl, 0390: 00 81 01 AA C8 84 00 00 S8369 0318: 30 cO 2C 00 CO 10 EB 80 S60CC

ApplEarl.P and ApplEarl.R) work exactly 0398: 09 E6 02 A4 02 C4 FD 90 SC8A40320: 10 CO A9 00 FO 00 EA EA SlOSE

as staled above. However, the other three 0328: EA EA AD 60 CO 10 10 30 S89A2

(AppIEar2, ApplEar2.P and Applear2.R) O3AO: 0160 585530330: 00 A2 80 E8 EO FF FO 16 $0210

have no delay routine in them. Therefore, 0338: 2C 60 CO 30 F6 10 OF EA Sl00F

the ApplEar2 series provides higher quality ApplEar2 0340: A2 00 E8 EO 7F FO 01 2C S9F130348: 60 CO 10 F6 30 00 A4 00 SE350sound but uses up memory at a faster rate. 0300: A9 00 85 01 85 00 AS FC 54785

In addition, because there are no delay rou- 0308: 85 02 24 FE 30 03 4C 80 SF2F9 0350: SA 91 01 C8 84 00 00 CA S158Etines, the delay byte (SFF) is nOl used by Ihe 0310: 03 2C 60 CO 10 FB 80 30 SOAOO 0358: E6 02 AS 02 C5 FO 90 C2 0690.Applear2 series. 0318: cO 2C 60 CO 30 F8 80 30 S1378 0360:60 S8909If there is nolhing appended 10 the name 0320: CO 2C 00 CO 10 E8 80 10 SOAllll

of Ihe program (ApplEar2 and ApplEarl) 0328: CO A9 00 FO 00 EA EA EA S0898 ApplEarl Source Codethen Ihat program contains BOTH the record 0330: EA AD 60 cO 10 10 30 00 SOCD4and play routines. However, if a ".R"isap- 0338: A2 80 E8 EO FF FO 16 2C S79E9pended 10 the name, then this is only the 0340: 60 CO 30 F6 10 OF EA A2 S812C 1(11) CASS.IN .EO ""'" CASSETTE INPUrecord routine. A ... P"at Ihe end of the 0348: 00 E8 EO 7F FO 07 2C 60 S0152 T JACKname indicates that it is only the play rou- 1010 10 .EO SCOOl START OF ...tine. If a ".R"or ".P"are attached to the 0350: cO 10 F6 30 00 A4 00 8A S10C8 LE I/Oname, then the direction byte (SFE) is not 0358: 91 01 C8 84 00 00 CA E6 S3E98 1C12O STAT .EO SF8 LAST MS8 STATused. 0360: 02 AS 02 C5 FO 90 C2 60 S8534 US

0368: 29 80 C5 Fe 85 FB FO 05 SCC49 1030 LEAST .PAGE .EO SFC START PLAYINGLet's Get Typing 0370: 80 30 CO 00 03 EA EA EA SE4E9 IRECOROING FIDI HERf

When typing in the hexdumps, use these 0378: 8A 29 7F AA EA CA DO F8 SEE42 1(),() K>ST.PAGE .EO SFO STOP PLAYINGI

parameters to save them: 0380: A4 00 81 01 AA C8 84 00 SA897 RECORDING \liEN YOJ REACH HERE

0388: 00 DE E6 02 A4 02 C4 FO S44C4 1050 OrRfCTI~ .m SFE RfCORD OR PLABSAVE APPLEARI, AS3II, LSA2 0390: 90 D6 60 S9352 YBSAV[ APPLEARI.P. A$JII, we 1060 DELAY .EO SFF TIMING VARIABBSAVE APPLEARI.R, ASJlI. L$6B ApplEarl.P I.EBSAVE APPLEARl, AS3II, LS93 1070 INDEX .EO soBSAVE APPLEARl.P, ASJlI, LSJ7 0300: A9 00 85 01 85 00 AS Fe 54785

llJ1) lEM.rn .m SlBSAVE APPLEAR2.R, ASJlI,LS61 0308: 85 02 00 10 29 80 C5 F8 SA876 ",.,I When recording, the computer first plays

0310: 85 F8 FO OS 80 30 cO 00 S07BF "00 .al SOlID0318: 03 EA EA EA SA 29 7F A4 58843 1110 •TF APPL£AR1

\ the sounds it hears through Ihe speaker0320: FF 88 00 FO M EA CA 00 "20directly. This allows you to gellhe sound lev- ssm

els right and provides a pause before record- 0328: F3 A4 00 81 01 AA C8 84 SE29E 1130 START ""'10 ALWAYS START

ing. When you are ready to record, simply 0330: 00 DO 09 E6 02 A4 02 C4 som AT BEGUIlING OF PAGE.11<0 STA lEM.rnpress a key. 0338: FO 90 01 60 06232 "SO STA INDEXRemember 10 enler the proper values into"60 LOA LEAST. PAGE FRl:Jl ADORESlocations SFC-SFF before starting the pro-

gram wilh a App1Ear2.P •"70 STA H94.PTR+l

311G 0300: A9 00 85 01 85 00 AS Fe 54785 ,,"' BIT OIRECTI~ PLAY OR RECO0308: 85 02 00 18 29 80 C5 FB SFA54It is best not to set the end page byte (SFD) 0310: 85 F8 FO 05 80 30 CO 00 som RD'

greater than $96 or else you may wipe out 0318: 03 EA EA EA SA 29 7F AA S0766 Continued on page 20

Hardcore COMPUTIST no.IO I?

Page 20: amaus.net computist...APPLIED ENGINEERING IS 100% APPLE That's Why We're So Good At II! • • p, 'IJ-' I ~JI rmtJi I • • I' • Complete 1I> voice music synthesizer on one card

Hardcore COMPUTIST no.1O

.. UOOl.r1------_....__.........._._"' ,.._Iao_.,___ __l.... ___- ''''-''-'''--''_ 1... ..__

______,"'EA "'f., !"EA,__..._._-_._.-.g...-' .._T5C_fCS ....___ ,...__......._ .._OOKO_ "'"--_ .._-_ .._--

• __-.....1"'1-------_ ..._--.._ .... ..... aoooa...__..._-._..._..- ""' _....."""-......._._-_..-, _-........-------_..._"'--.. TIoo_Tac;_TCS__-_ ...._-...,..,,_........_..-----_.._-

... ----.1...1"""-_..-""----~...__(-1_- - __.-....._-" ...,., _---...e_ .....-.",_to ... _ ,..---_ - .........._~- ..--_ '''*",••".,.,. ,.._-_ ..__..._ ....... ......_l

By Gal"}' Pelerson

•. 1' ~ r __

I..·~l.. "00_, ,_ _,m • "••a '......,.., '0" 0. , ,:0 ,~._ .."~ '.....,_'o..~, .... , _ ___ _00,"""....".-.00_'0·_ _ ..-"'--_.,.- , _..-_~ .. __,llI.,.-....... ..__L-e_..____•__ fu~,....~......--_.._.._-_._.--_.._...._.- ...._.---_.- ..._~......"'._"' _",_...-..___• __ '-D.__ ...,.....__ ......

-----~--­..........---.....--....--.t·~I..1Pootr- .-a_, '0_"'''___....__..__...~,.. oo......_,.....-"'"__.._IO........._~_ __ "'---_ _-_ __._·».."'·:IIIII~_-....._---•. ...._0MrI11ON'"""---_..._-_..._­...--_..-.-_.._­"---_..._-.---­-_._--_..------_..-----_...-----_-.-.._---... L-e ........

[,..U_I....... ,"'..",--....---_...,.._..-.... '0._._.........-..._........._---....-c .. ... •.. _ ...----_.._...---­...._----.._------_..- .....----------_....._-_......_----_._--,--....'------_.....".--,..__ ..--., ...._--11. to,TlM__............. _"'_____uc._-"'<.. __ __ _._. ' DlO_ ft _......ft,,""' ,... _._ .. •___ _CIO,S'Oc-._ .... _._,

, ....' TZIflO,."""",.....'.'811;0. "lIlT"'811:0' IIB'T, ·1lIIUl,. ,*GA.TIVE

c.­

""""'"""""O<CMW. ....1ttDE1I AlO, SEl.ICT

1lIfIlIOA'I' SEUCT

"""•..ow.....,..

....CMI"-.......'••• ModelC::]!K:: I ,in ! nm

.. [-..11_____I_._ _'OCO~, ..__..--""'_ .._ _<>I-...,.."...-_.....-..v....,_ ,.._ _--"'.-._ ..._-_ ........_--_....----..._-­..__....._---_........-_.. .....-....._--

... _ ........r-I"-_ ..--.__._--__.. _ _111

.........__ 1..._---_ ___.~_.....__ --........T." L-e

........t.. JI, QlIl","-_ .. _ ......... _ -..... T..-_...._._ _--_....-,_.._...---..--.---.,...----_._-_ ...----_.._._--------_...._-_...__..-_.. 01._-..__.-

• $' '.1"'.....~---_ ..._..­~.-''' ; ,----­_....---,,---.....---...._._ .._-.,...---_......._....-.... L-e--'l=).ltll,...__....__..... _ocuon_........................._-_..._­------- ...._----------_.......,--_._ ....__ .._----_..- ..----"' IJII---_.._---- .._-..,-_..- --.,....-.. ,1lI 1Oll.------_._-

[~~~] x"i.f~ +.~U>oo

[~~~J '~ .. TV~LD*

[::~ ::J-:;r"'f -::::l-I --=-~ ~­

EJt"4 = ltl ~[==~=-:J DQ;~ ~ l~o;;a.:r L_---STA1\,81lEG

1::;::;:~"'~=+:{~'!f".IMU.ATlOi'oIl.tICItL~V"XD' ZC

on the Apple motherboard could give thecomputer 16 bit capabilities.

The 65SC816 is internally a 16 bit micro­processor, bUI it has an address range.

Recently Developed Chips PromiseNew Life For Old Apples:

The 6SSC802 & 6SSC816

Thankfully, it looks as though a couple ofnew microprocessors just now becomingavailable may offer relief for Ihose of us los­ing sleep over this Apple hardwarelsoftwaredilemma. These new 16 bit microprocessorsdesigned by William Mensch have the abili­ty to execute software written for the older8 bit 6502's used in the Apple II and AppleIII series of computers (and Atari and Com­modore among others).

William Mensch was one of the originaldesigners of {he 6502 at MaS Technology,a company he helped found. Mr. Mensch hassince gone on to found another company,The Western Design Center, where hedesigned the 65C02 microprocessor beingused in the Apple /Ic.

The 65C0Z offers advantages over theoriginal 6502 such as low power consump­tion and expanded instruclion set, but is stillan 8 bit microprocessor. Mensch's latestmicroprocessors are also low power CMOSand have even more instructions along withthe ability to perform 16 bit manipulations.One of the major attributes of these chipsis their ability to execute code which waswritten for a normal 6502. Western Designis marketing two different microprocessorswhich are 6502 compatible; the 65SC882 andthe 65SC816.

The 65SC802 is internally a 16 bitmicroprocessor which is, pin for pin, com­patible wilh a 6502. The 6502's original ad­dress range of 65535 (16 bits) has beenretained. This implies that a one chip swap

"Every time a new computer thatuses a 16 bit (or 32 bit or 64 bit oretc ...) microprocessor is introduced,I wonder how much longer I canhang on to my Apple II Plus... Ofcourse, I could always upgrade tosomething more powerful, like IheMaclnlosh, bul what am I supposedto do with aU my Apple II software?Donate it to the Goodwill?"

Every time a new computer that uses a 16bit (or 32 bit or 64 bit or etc...) microproces­sor is introduced, I wonder how much longer1 can continue to hang on to my Apple IIplus which was designed before anyone hadthe faintesl idea of what to do with amicrocomputer. Of course, I could alwaysupgrade to something more pOwerful, likethe Macintosh, but what am 1 suppOsed todo with aU my Apple II software, donate itto the GoodwiU? Perhaps I am more sen­timental than mOSt people, but for some rea­son I can't bear the thought of parting withthe assemblers, word processors, utilities andgames that I have acquired over the years.Somehow 1 doubt that I am the only Appleowner around who harbors such hangups.

Page 21: amaus.net computist...APPLIED ENGINEERING IS 100% APPLE That's Why We're So Good At II! • • p, 'IJ-' I ~JI rmtJi I • • I' • Complete 1I> voice music synthesizer on one card

On power-up, the emulation flag of thechip is set 10 a I so thai it will act just likea normal 6502. When the emulation flag isset to 0 the extended capabilities of themicroprocessor are enabled. This emulationflag actually occupies the same position inthe status register as the carry bit. A new onebyte instruction. SCE, exchanges the carrybit with the emulation bit. To enable the 16bit capabilities of the chip, some code likethe following would be required:

The charts and diagrams accompanying this arfi­cle arefrom Ihe ad~anCf!d dala sheet on the 658J6and are reproduced with the kind permission ofThe Western Design Center.

PHP Push Current Status Regi ster onStack

CLC set Carry bit to 0SCE Exchange Carry bit and EmuLation

bitsPLP PuLL former Status Register from

Stack

Some of the new instructions which havebeen implemented on the Western Designchips should make life easier for assemblylanguage programmers. Forward and back­ward block memory moves are now availa­ble with the MVN and MVP instructions.Other useful new commands allow the swap­ping of the X and Y register (TXY andTYX), decrementing and incrementing theAccumulator (DEC and INC), relativebranching always forward or backward32767 bytes (BRL), pushinglpul1ing the Xand Y registers tolfrom the stack(pLX,PLY,PHX,PHY) and storing zeroesin memory (STZ). Multiplication and divi­sion instructions are not available as they areon other microprocessors such as the 68000 .This seems unfortunate. although the design­er probably had good reason for it.

Many of the existing 6502 instructionshave several new addressing modes availa­ble (the new chips have a total of 24 differ­ent addressing modes) and. combined withthe new instructions, the result is that all 256opcodes have been defined. There are nomore of those unimplemented opcodes whichcause unpredictable results when executed ona normal 6502.

It seems as though the impact of these twonew chips could be quite substantial. It willbe very interesling to see how the new chipswiD do in the marketplace against already es­tablished microprocessors such as the 68000and the 8086.

New computers based on the 65816 couldoffer Macintosh-like capabilities on a com­puter capable of running all existing AppleII software. Because the chip is based onCMOS technology this computer could betransportable like the Ilc. The market forsuch a computer could be quite substantial.

Continued on page 13

,J _ca .. ".• ~1'Qp~• CQP (;0.__.........__001>_

.... AIIOflT ...... _ ..~""""­

.. '-..~"'-1"'"··_....__PO'~

• $1P ~__~ ....oao:-_fOI'GrIlllNlJOur"'IJGr • n"._..__"esa- ... _ s..-_"""..ClooIot«I._.~_IlfSl't)roo""""_'"IIll """,_e__--.. __

,-...ng .... SlPo.,e-..Pfogr.,.__•WJU _ ....__lIIIlt .._ ...... OINt1<tl>ylllO

"'NUl""""'""""3 _ 1 """_O"todolloioAoll..___ ""' ........S_ I ....-scs.._.~""""

, ~,

II. _ .....,.. ..""CooIIII

, 8Rl. _""-o~__I"""""""'"",.~~~--....--...."'-...__~~RTl.tor_.not.....,.._-~......._- ......

G. _1lotIOHO__ lto.e-J'1(;0 ,,_c_..."""",..,.....ol IDC 1,_On<;"""",,,O"'C_J les 1'.......C ... s.... ......• ISC 1,."_SOo<"""",,",,,,"'_CS ,.. I' ""• 1'. I, ..1 .... f~ ..• SCE -.-.c...8oIC_....-...1.

L IItO'e-J, ........ 'X_I _

1'_,._~OotonM e1(. ...... _

,­,-"",-• 11I\

1 AOC .......-.."'_.."'c..rr.-2 AND "o\ffll.--'__3 CMI' e--.-...__• ~OJI -.:_"-..__~ ~DA '--__-.-

'Ollil -0..-..._.......-....I sac -.... -.. .......'SlA __..-...

I. 110ll~

'"A ....... EfIectn,,__o.-_~

-~-....... _ .. ..~o.._~.......... (_Pfo9r_Co\otIM< ...._o.-Pn>v>_C<>u<Mo _0.-_",,_.....Oob_~..-._.I'uO 00<00<'~ ........-.........Oob_~""_

........ Otr4c, ""_........"'~ _..,.....""-•. _ ......._aO'e-J, Ill" 0thNd&r--,-­0'00""'.-

2 "'.. $M_o...~ ....'_IIM.'·SocO-OO""'OOO<>llO

Register, which is used in conjunction withthe new addressing modes. A variety of newinstructions, such as block memory moveand branch always (relative) have also beenimplemented. For low power requirementsboth the new microprocessors use CMOStechnology. A new bit has been added to thestatus register to indicate whether the chipshould emulate the 6502 or work in 16 bitmode.

e._~...--._I..O'_1I. IJIl _80.. '''-,. ...... A"""""",,,, IO""•. X.-1<.'-,

_l_l_ ........ lo.-t_I$Opc:-n_l_l_ .._.-1 '

0. .... --.._I_O'c-.!lIfoool_ .....__ ' ..OPe-1

• !lIfoool_~lfOpe-J_"'__~__ll

I"Ope-)__..Opeo.ol____,_,tOpeo.o!

.. _WMKUI:_lQo.e-..""" ,,--..~PU. X__

)~.. """,,-­• _ """"x",,s.-,...... _.""s.-• STl S'O"z-,"' ,Onct.-.X,_, ...... lljI Ill8 _ .... _ _~b)'

~"tOn<;__

..... ,.' .... s.t-..80..~l>y_ Al....... 1

''''',-,..".-

Hardoore COMPUTIST no.10

T"2. INtrvcIlollIklwuset,,_taMOPC-1

A. n.~__"'I'$IOpe-1'~DC __yIOAeC_"''''c....

2 AND o'<NO" t .....A~3 AS!. _ 'Ono&<l-,-o.-_lO<l

• ecc 1It ""Ca;ty e-...-~ IlCS ""CAo<'y!k<• 810 """_2.,,,7 "f 1 e...",_._"-«"",,,1R><,- -~""-....""" ....Itlf: _""__Z"'O

'08P\. ........ ""__l\ 811~ f"""'_'21\IC "' ,,""''''''''''''"'C_lJ IVS "' ""0--$<1<'0 C!.C e-c....fiO\I,~C!.t:> C1N't:>o< '-'<>d4

" Cl-l (;lN' "' "''''~ I!Io<'T cu ClN,o-_Fl4g.. ('NO' Co<f><>o~-..- """ _..-.,."cPl< Com:>4«< """""'~__••~ C!'~ Co<f><>o,.""""""' '

2' t>£C tl4<_~b'f0n4n ClE_ ~ __.Xl>y0n4not' __"1J)'0n014 (OJ! E«:__._~

Z$ INC _~~~0n4it,... __ X&)'Ono2T 'NY __.... on.2t _ _"'_'-<>ea'-',. J$JI ""'IO_I..oo:ottons.-rl__illIUlA __~JI \.OJ! LGoO'_'__ tW LO" Loaa_._.......,..,:J3 ~$Il _0n4 •• """'l.......,..,O'-__J

)I HOP ....0.00-» OAA "OK--. ...,,-..,.• _ _""sa.o.n_ __""__JIV,. _ ....... _

• P\.P "' "-_

.. IlOL _on.8I01.4II1--''''_1•• _ _OnoBolJliglltt-""'_lq In, _.""",....,"'"

..,~ ........."--'...... SllC _..,.--.',""' _

4 u:t $loO eur. ''-''.. Sf:t:> ...__

oJ sr. $01 ..",."",0-- lltM..."51" _._...~_ sn _ ....... x...--,10 IJTY __''''-'''5' 1ill( ,.__ __

Vl".. 1.__ ,U T$ll 1 _ ••5il lAA 1'__....__

"'X$ 1_'_''''_~""''' 1,__.................-

of 16 megabytes (24 bits). Because the chipis still in a 40 pin package, the upper 8 bitof the address had to be multiple;o;cO with the8 bits of the data bus and is, therefore, notpin for pin compatible with a 6502.

All of the internal registers (A,X,Y, etc.)of these new chips are now 16 bit e;o;cept thestatus register (8 bits) and program counter(24 bits). The chips have II new addressingmodes and a new register, the Direct

Page 22: amaus.net computist...APPLIED ENGINEERING IS 100% APPLE That's Why We're So Good At II! • • p, 'IJ-' I ~JI rmtJi I • • I' • Complete 1I> voice music synthesizer on one card

Continued from pale 17 14,., 8HE .2 '810 Of) STAT SNE11500 BIT CASS.IN '820 STA STAT FOR NEXT TIME1510 IlMI .1 IF STILL MIHU '830 BEQ NO.CLICK SME, ~tT C11,., EMI .1 RECOR1:I I't.ISIC S LICK

12lll JMP l.Ol'O.IT TOO FAR TO BR 1520 BPL STORE. IT '840 STA 10+S30 CLICKI t""" 1530 '850 &HE PLAY.l..CO' ••A~YS'210 1540 PWS.01JfTER 1860 JrI).CLlCK JOl TIMUIG1220 .1 BIT CASS. IN PlAY BEFORE 1550 "'" TIMI/rtG 1810 "'" "-1250 BPL .1 BEFORE RECORD '560 LOX '" BIT 7=0 ''''' "'" TIMING STUFFING 1570 .1 INX C~T TllEM 1890 PLAY. LOOP TXA START PLAYING1240 STA 10+S30 CLICK I 15'" CPX ItS7F AS MANY AS CA HERE1250 .2 BIT CASS.IN SO 10 ADJUST N twl>LE? 1000 ....m"'0 EMI .2 sa..oo LEVELS ,"" BEO ~.IT YES, BAAHOt 1910 illY DELAY "'"12/0 STA IOtS30 CLICKI '000 lOY DELAY "'" 1920 .1 IIEY FOR A \f1ILE

"'" BIT 10 LHTIL KEYPRfS 1610 .2 IIEY 'I'''LE '930 BNE .1S '620 BNE .2 ,,'" 'XX A VAWE",., BPL .1 '630 BIT CASS.IN STIUD? '950 "'" TINING1300 STA I~O RESET KEYLATC 16/00 SPL .1 YES, BRANCH ,"" DEX OCWE1H 1650 1!f'1I STORE. IT TINING '970 IlHf PLAY. LIXF PLAY.LOOP ICE1310 ,,'" EP PLAYING1320 RECORD LOX'" TINING STUFF 1670 STORE.IT 19'"1330 BEQ .1 •• ALWAYS ,,'" lOY INDEX WHERE TO STOR 1990 ~D.IT illY INDEX HEK>RY OFFSET1340 .1 "'" E ,1350 "'"

,.., TXX 20lIl l..M OEM. PTR) ,Y GET BYTE13'" "'" ,1lIl STA O9l.PTR>,Y CUfIIY I..OCA 2010 'XX M IT IN X1310 "'" n", 2020 INY HEXT BYTE

13'" IllA CASS. IN TEST '710 INY 2030 STl INDEX13,., BPL PWS.co.JfTER 1120 STl INDEX 2()1,(} BNE PLAY11,(}() EMI NINJS.co.JfTER TINING 1730 BNE RECORD NO PAGE FLIP 2050 INC IEM.PTR+1 NEXT MSB1410 ,,'" INC 1EM.PTR+1 NEXT PAGE 2050 illY MEM.PTR+1 O(W'T lESS W1420 MUM. co..NTER '150 l..M MEM.PTR+1 ITH ,,"" LOX "'" BIT?:1 ,,'" Of) M:lST.PAGE 2070 CPr M:lST .PAGE [)()lE?1440 .1 INfI ca.NTING 1m BeC RECORD OONET "'"' sec PLAY1450 CPX ItSFF FINISHED? ,,'" RTS 2090 RTS •14'" SEQ STORE.IT YESI '''''1410 illY DELAY WAIT A \liILE 18]) PLAY ... "'" INTERESTED IN148) .2 IIEY B7

Hardcore COMPUTIST no.IO

Page 23: amaus.net computist...APPLIED ENGINEERING IS 100% APPLE That's Why We're So Good At II! • • p, 'IJ-' I ~JI rmtJi I • • I' • Complete 1I> voice music synthesizer on one card

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

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

Hold up an SS Stormtrooper andsearch him. After you have confiscatedhis bullets (search him twice to be sure),you can leave the room without fear ofthe S5 following you. Castle Wolfensteintrys to get the SS to follow you and thenshoot you on the run.

If the SS gent is out of bullets, the gamedecides that he is not much good and doesnot send him trailing after you.

Reviewed by Ray Darrah

eliminates it is to cut the spider's strand whileit has a hold of the baby.

The two things which will instantly des­troy Tim are contact with the fire or a stompfrom the Dino Mom. Contact with any ofthe other creatures starts a biological timebomb which can only be deactivated if Timenters a time portal. Failure to enter a timeportal initiates a unique process in which Timde-evolves to the level of a spider.

Tim may either transport dinosaur eggs orhatched baby dinosaurs back to his era.Dinosaur eggs must be physically placed inthe time portal in order to do this.

Although Time Master Tim doesn't have10 carry baby Dinos to the time portal likehe does the eggs, he must jump over themand press one of the joystick bunons whilein mid·air. Sometimes this action doesn'tregister, so you might have to do it a coupleof times. Once it takes effect, a time cage isplaced around the baby who is now imper­vious to spider attacks. Furthermore, thebaby can't hurt you or wander into fire likeit loves to do.

The author of this game has done a verygood job of shape-connict processing. Thatis: objects destroy everything it is logical todestroy and leave unharmed everything else.For example, in the game you must oftentumble boulders down the cliff to see what'sunderneath them. Usually there are eggs,wood or a power nower and sometimes thereis nothing al all. As a boulder rolls down thehillside, it kills everything in its path. Thisworks nicely for removing a couple ofprimordial nasties but has the side effect ofwiping out baby reptilians and any fires itshould land on.

In my opinion, Dino Eggs is one of themost enjoyable arcade games on the markettoday and I highly recommend it to anyonebetween the ages of three and three million.

Castle WolfenslelnContributed byEric Holman Whitaker

APT's APT's APT's

the Dino Mom.Dino Mom has a large multicolored foot

but the rest of her body is never seen. Mrs.Brontosaurus may nOI be the brightest crea­ture around, but she does know when some­one is trying to steal her offspring. In orderto deter would-be dino-nappers, she violentlystomps the ground in random locations. Timmust perfonn some quick evasive manuever­ing to avoid a Dino Mom attack. Since a sin­gle stomp from a 30 ton reptile is usuallysufficient to flatten small humanoids, play­ers are advised to keep a fire going at alltimes.

Dino Mom is not the only hazard Tim en­counters in the Mesowic era; snakes, spidersand centipedes are abundant. These creaturesbecome more numerous and dangerous asthe level of play advances.

Snakes can be avoided by jumping butcentipedes, which travel overhead, must beducked. Boulders can be used to smash theserather revolting life fonns.

Snakes attack constantly throughout thegames, but the centipedes only appear on lev­els 3 through 9. The spiders become consider­ably more nasty on these levels andperiodically fonn a living trap for the youn!!Dinos. If a baby wanders into one of them,they attempt to kidnap it.

To kill the spider, walk through its webstrand when it is below you. The only wayto save a baby dinosaur before a spider

Dino Eggs By Mlcrofun:A REVIEW

While visiting the pre-historic past, TimeMaster Tim (formerly a citizen of an aver­age 2047 A.D. metropolis) accidentally in­fects the dinosaurs with 21 st century measles.The dinosaurs are in danger of becom­ing prematurely extinct (Ihus changing his­tory and the way all things are to be) if Timdoesn't devote his life to saving the entiredinosaur population by transporting theireggs and them (via time warp) to Ihe 21stcentury.

Each of the ten levels of Dino Eggs con­sists of a randomly generated, four-ledgedcliff. Along the ledges, boulders, wood anddinosaur eggs can bl: found. The boulderscan be rolled down the cliff to smash hostilelife forms.

At the beginning of every level, the firstthing Tim must do is start a fire. This is ac­complished by picking up a piece of woodand dropping it on another piece of wood.Failure to start a fire invites an attack from

Hardware Required:Apple II, II plus, I Ie or compatibleOne disk driveJoystick

MicroLab, Inc.2699 Skokie Valley RoadHighland Park, IL 68835S48.8lJ

Hardcore COMPUTl5T no.IO 21

Page 24: amaus.net computist...APPLIED ENGINEERING IS 100% APPLE That's Why We're So Good At II! • • p, 'IJ-' I ~JI rmtJi I • • I' • Complete 1I> voice music synthesizer on one card

umtinu«l from pille J5

The Emulation ProgramMany of the SSW files were relocated be­

fore they were saved to our slave disk. Thesefiles can be loaded back into position sim­ply by specifying the Address parameter ofthe BLOAD command. However, there arefour files that must be given special consider­ation. The BSW.48K.3 file is loaded by theBSW original between $9000 and S9BFF.

This would destroy our slave DOS's filebuffer even if we set MAXFILES 1. A closeexamination of the file reveals that it con­tains no meaningful data past $9AA3 whichis the bollom of the first DOS file buffer.When we saved the fUe in step II, the Lengthparameter was shortened to allow us toBLOAD the file without overwriting the filebuffer. For types 2 and 3,thesame problemoccurs with BSW.64K.3 and BSW.lle.3 andthe same solution has been used.

The BSW.64K.2 and BSW.lle.2 ftIes bothneed to be loaded in the range S880 toSIFFF. This is normally Applesoft programspace and would conflict with our HELLOprogram. The solution is to cause DOS toload our HELLO program into the unusedspace starting at $2000 instead of the nor·mal $800. Since our program will be fairlyshort, we can load it at $2000 for all threehardware types and not conflict withBSW.48K.2 at $2500.

39) After booting the slave disk, type in thefollowing Applesoft program. When youhave checked for and corrected any error:s,save it.

SAVE HELW

100 IF PEEK (104 ) < > 32 THENPOKE 8192 ,0 : POKE 104 ,32PRINT CHRS (4 ) "RUNHEllO"

110 TEXT: HOME: NORMAL: IF PEEK(49152 ) : 155 THEN POKE 49168,0 : POKE 104 ,8 : PRINT CHRS(4 ) " RUNUTILITY"

120 IF PEEK (49152 ) : 197 OR PEEK(49152 ) = 229 THEN POKE 49168,0 : PRINT tHRS (4 ) "FP"

130 POKE 49168 ,0 PRINT tHRS (4) "MAXFIlES1"

140 PRINT CHRS (4 ) "BRUNTYPECHEtK,AS1300"

175 PRINT CHRS (4 ) "BlOAOBSW. LOGO,AS4ooo"

180 POKE 49234 .0 : POKE 49237 ,0: POKE 49232 .0 : POKE 49239,0

190 PRINT tHRS (4 ) "BlOAOOS301,AS301"

200 PRINT tHRS (4 ) "BLOAOINIT ,AS200"

210 PRINT tHRS (4 ) "8l0ADWRJTEPROTECT.AS8700"

220 IF PEEK (31 ) > 1 THEN 260230 PRINT tHRS (4 ) "8l0ADBSW.48K

.1,AS6CXXl"240 PRINT CHRS (4 ) "BlOADBSW.48K

.2,AS2500"

250 PRINT CHRS (4 ) "BlOAOBSW.48K.3.AS9OOO" : GOTO 340

260 PRINT PEEK ( - 16255 ) + PEEK(-16255)

270 IF PEEK (31 ) = 3 THEN 310280 PRINT tHRS (4 ) "BlOAOBSW.64K

.1,ASOOOO"290 PRINT tHRS (4 ) "8LOA08SW.64K

.2,AS800"300 PRINT CHRS (4 ) "8l0AOBSW.64K

.3.AS8BOO" : GOTO 340310 PRINT tHRS (4 ) "BLOAOBSW.lle

.1,ASOooo"320 PRINT tHRS (4 ) "BLOAOBSW.lle

.2,AS800":330 PRINT tHRS (4) "BLOA08SW./Ie

.3,AS88oo"340 POKE 44802 ,234 : POKE 44803

234 : POKE 44804 ,234 : POKE4472 3 ,4 : POKE 216 ,255

345 PRINT CHRS (4 ) "8LOAOPATCH,ASBFC8"

350 PRINT tHRS (4 ) "8RUN8SW.S525•S7FF, AS525"

This program does not create any varia·bles. In particular. the CHRS(4) must beused repeatedly rather than defining a"OS=CHR$(4)" since strings would bestored below HIMEM and conflict with filesto be loaded there. The program length hasbeen minimized by deleting unneeessaryspaces in DOS commands since it must fitbetween $20BB and $24FF.

The HELLO program begins by detennin­ing where it has been loaded. Location 104(568) contains the high byte of the start ofApplesoft program pointer which is normally$08. If this value is not 32 ($28) then the pro­gram pokes a zero at 8192 ($28B0) andchanges the pointer to point there. A DOScommand to RUN HELLO then re·'oads theprogram at 52000 and starts it running. Ofcourse. the second time through, 104 willcontain 32 and the program carries on.

Line 110 tests for the "ESC"key waitingat the keyboard and, if found, resets the stanof Applesoft pointer to $0800 and RUNsUTILITY.

As a handy exit, Line 128 checks for up.per or lower<.ase E at the keyboard and. iffound, gives the DOS FP command to resetthe pointer to $0800, clear the program andstop. This is convenient when you want toexamine files on the disk; just hit "E'dur­ing the boot, then load whatever you wishto look at.

Line 130 clears the keyboard of any otherkeys and then sets MAXFILES I. Line 140runs TYPECHECK to determine the hard­ware configuration and lines 150 to 190 loadthe files common to all three hardware types.Line 160 sets the softswitches to display thehi-res page 2 logo. The WRITEPROTECTflIe in Line 190 is created below.

Line 200 checks location 31 ($IF) andskips to line 140 if type 2 or 3 has been de­termined by TYPECHECK. For type I, lines21B to 230 load the "48K"files and GOTO320 to finish execution.

Line 240 write enables the ramcard so itmay be loaded for types 2 and 3. Line 250directs flow to either the "64K"or "lle"fiIeloading.

Line 320 pokes three "NOP"s into DOSat 44802 ($AF02). This skips putting DOSonto data disks initialized by BSW and,although not done by the original BSW, the4 poked at 44723 frees that extra space fordata storage. The Applesoft ONERR flag216 (508) is set to prevent DOS from issu­ing its own error messages since the programhandles these itself.

Another small piece of code is loaded intoDOS in line 330 and the initialization pro­gram is run to start the BSW program.

The Write Protect PatchThere is a small section of code at $B700

in the BSW DOS which is called whenevera write operation is about to be performed.This code reads the catalog track of the diskin the selected drive and checks for the non­standard disk bytes of the original BSW disk.If it finds this pallern, the carry flag iscleared. location $9AAC is loaded with a$40 and the routine returns to the caller. Ifthe pattern is not found, the carry flag is setand the routine returns.

We originally thought this might be somekind of copy protection. It turned out to bea routine to prevent the user from writing tothe original disk when he should not. Sim­ply pUlling a write protect tab on the diskwould provide similar protection. but thisdisk is likely to be used by children and itis easier to remove the write-protect tab thanto change the format of the disk (as we haveseen). In addition, the UTILITY program isused to customize BSW to the user's needs.It stores the initialization data on the SSWoriginal disk and the write-protect tab wouldneed to be removed for this operation.

It seemed logical to find a way to supportthis valuable feature. ODS maintains abuffer at $B3BB which contains the VTOC(Volume Table Of Contents) for the most reocently read disk. This buffer is read fromtrack $11. sector S0 on any standard DOSdisk. It is also written to a disk when thatdisk is INITed.

Not all bytes in the VTOC are used byDOS. Before we INlTed our slave disk, wechanged one of these unused bytes (SB3BF)to an $A5. This byte will be used by our ownroutine at $B700 to determine if the diskabout to be written is our saftkey ver:sion ofBSW.

Following is the code needed to implementthis feature on the softkey disk.

40) Enter the monitor and type this code in

CALL-lSI

8700: AO 09 .9 EB 87 99 3D .78708: .9 47 .7 99 EB 87 88 '08710: F1 AC C1 .. AD C2 AA '08718 : 85 .7 80 '0 AC Sf 83 cO8720: AS FO 03 " 80 0' A9 4D8728: BD AC 9A ,. A9 00 80 Sf

22 Hardcore COMPUTIST Do.IO

Page 25: amaus.net computist...APPLIED ENGINEERING IS 100% APPLE That's Why We're So Good At II! • • p, 'IJ-' I ~JI rmtJi I • • I' • Complete 1I> voice music synthesizer on one card

B730: B3 AO 0' 89 30 B7 99 "B738 : B7 88 10 F7 60 00 00 00B740: 00 00 00 00 00 00 00 00B748: 11 00 FB B7 88 83 00 00B750: 01

41) Disassemble and check this code

8700L

.700- A009 CDY_'71)2- 89 EB B7 LDA SB7EB,Y'705- W 30 B7 STA SB730,Y.7lE- B9 47 B7 LOA SB747, Y.7lE- 99 EB B7 STA SB7EB,Y'70<- 88 DEYB70F- 10 F1 BPL SB702B711- AC C1 M LDY WC1B714- AD C2 M LOA WC2B717- 20 B5 B7 JSR SB7B5B71A- '" 10 BCS SBnCB71C- AC BF B3 LDY SB3BFB71F- CO" CPY #SA5

'721- FO<B BEQ SBn6'7Z3- 38 SEC8n4- "'06 BCS SBncBn6- A940 CDA "'".728- 80 AC 9A STA S9MCBnB- 18 ClCBnc- A' 00 CDA nooBnE- 80 BF B3 STA SB3BFB731- A009 CDY _

•m- B9 30 B7 LOA SB730, Y.736- WEB B7 STA SB7EB, Y'739- 88 DEYB73A- 10 F7 BPL SB733B73C- '" RTS

B73D.8759

B73o- 00 00 008740- 00 00 00 00 00 00 00 00B748- 11 00 FB B7 BB B3 00 00.75<>- 01

42) Save the code

8SA VE WRITEPROTECT,ASB799,LS51

WRITEPROTECf uses the RWTS rou­tine to read the VTOC from the disk into theVTOC buffer at $B3BB. In order to do thiswithout disturbing BSW's use of RWTS,$8700 to $B710 save the current RWTSparameters into temporary storage at $B73Dand replace them with the VTOC-readingparameters from the table at $B747. Thenthe RWTS is called to read the VTOC.

If an error occurs, it may well be becausethe disk is unformatted so we exit as 'OK­to-write' by branching to $B72e. If no er­ror occurs, the value at $B3BF is comparedto our constant ($A5). If our protected diskwas in the drive, this byte would match andthe branch to $8726 would be taken. Other­wise, it is safe to write the disk so the carryis set and we branch to $B72e.

At $B726, $40 is stored at $9AAC (likethe origin a!), the carry is deared indicating'Not-OK-to-write' and execution drops into

the exit code at $B72C.At $B72C, a zero is stored at $B3Bf to

guarantee that a $A5 is never written out toa data disk since that would write prOlect it.Then at $8731, the parameters saved at thestart of the routine are restored beforereturning to the caller.

43) One other tiny piece of initializing codeis needed to satisfy the BSW program's useof DOS. Enter it as follows

DFC8:2lJ DC AD A9 19 8D F9 83BFDO: A9 23 8D EF 83 6lJ

and then

8SAVE PATCH,AS8FC8,LSI4

Your softkey slave disk is now ready toboot! We have used this softkey version ofBSW to write this artide and that has al·lowed us to weed out many of the bugs. Wewere able to test all three hardware­dependent versions 10 some degree, so youshould have few, if any problems. The useof a fast DOS makes a welcome improve­ment. We have successfully used Diversi­DOS but have not tried any of the others,although they should work just as well.

The IUtorial on the back of the 8SWmaster disk is not protected and may be co­pied with the normal copy methods, but formaximum protection we recommend thatyou mark the disk as a "master" so 8SWcannot write to it. This can be done by us­ing steps I to 5 of this softkey to INIT thedisk on which you wish to copy the tutorial.Then, use the DOS 3.3 FlO program to copyall the files from the original tutorial disk tothe INITed back-up disk.

An alternative method is to use a disk-zaptype program to modify the fifth byte oftrack $11, sector $0 to an $A5. This methodcan be used to protect other disks that mightbe accidentally written by someone using theBSW program.

As a final note, we would also like to offera method to 'nibble copy' the BSW originaldisk. We are not sure if all the parameterchanges and use of different programs isnecessary but we have used this method andfound it to be successful.

l) Track 0 is the hardest to copy; the trac~

0, sector 0 is imbedded in a long, non­standard data field. Use Copy II + with thefollowing parameter changes: 9=0, A=3,E=05, F=B5, 10=05,31=0.2) For tracks $1 to $19, use Locksmith 4.1with these parameters: 44=A5, 45=96,46 = BF. When tracks $1 to $19 have beenwritten, go back and re-copy track $I!.

3) For tracks $IA to $22, change the Lock­smith 4.1 parameters to: 44=F6, 45=FA,46= FB.

As mentioned earlier, the original seemsto have been recorded at a slower than nor­mal speed so you may have to slow downyour drive to get a good copy with thismethod. On the other hand, once you havea functioning softkey version, why bother?

Checksums

100 - 576C4 250 5101 F110 52F60 260 - 519F1120 - S5BF9 270 50834130 - 5094F 280 50682140 - SF655 290 5985"175 - 593F3 300 S419F180 549E8 310 - 549ED190 573E2 320 5C504200 - S8EE6 330 - $8641210 SF39F 340 - S4BB9220 - 5B617 345 52313230 51979 350 - 57181240 57409

t

Continued from page /9

Add-on co-processor boards based on the65816 should also become available for theApple. Rumors are cheap, but Apple is saidto have a 65SC816-based computer in theworks.

Although the 65802 can't address anymore memory than a normal 6502, its pinfor pin compatibility with the 6502 offers aroute by which an Apple owner can upgradeto a 16 bit computer by simply dropping ina new microprocessor. The upgraded Applewill work juS! like it always did until soft­ware switches the 65802 out of emulationmode.

Don't rush out to your computer dealeror electronic parts supplier just yet, however,to ask for one of these new chips. As of thiswriting (2nd week of June '84), fully func­tional samples of the chips are not yet avail­able, although Western Design says theyshould be available by the end of June. Thepartially functional samples of the chipswhich are now available do not operate cor­rectly in the emulation mode and could notbe used to replace a regular 6502. Hopeful­ly, by the time you read this, fully operation­al samples of the 65SC802 and 65SC816 willbe available in single unit quantities for$95.00 each, directly from Western Design.Western Design's address is: The WesternDesign Center, Inc., 2166 East Brown Road,Mesa AZ 852lJ3, (6lJ2)-962-4545.

The only Apple assembler currently avail­able which supports the new 65802 and 65816instructions is the ORCA/M Macro Assem­bler from Hayden Software. Early versionsof this assembler did not support the 65816,so if you decide to purchase the assemblermake sure it is the latest version.

Hardcore COMPUTIST no.10 23

Page 26: amaus.net computist...APPLIED ENGINEERING IS 100% APPLE That's Why We're So Good At II! • • p, 'IJ-' I ~JI rmtJi I • • I' • Complete 1I> voice music synthesizer on one card

"First we must determine if the protected program is written in Ap·PLESOIT read the package the program came in. It may saywhat language it was written in. If it doesn't, a dead giveaway is in thehardware requirements. If the program requires APPLESOIT in ROM,then at least part of it is undoubtedly written in APPLESOIT."

RESET inlO the monitor after the programhas started running.

Now you can try to enter the immediateBASIC mode by typing:

'DOG

or by loading a register with S80 or greaterand storing it at SD6.

Now if 3000, 9D84G or 90BFG did notproduce a BASIC prompt, then the DOS inuse is more elaborate. So re-load the pro­gram and RESET into the monitor after itis running.

LOA UFFSTA $06

SaVing the ProgramNow come the final steps in trying to exa­

mine a BASIC program. If you are using aROM card in slot zero with an old style F8monitor ROM to reset lolo the monitor, tumon the mother board ROMs and turn off theROM card INTEGER ROMs by typing:

CIO'Now RESET the RUN flag to nonnal, JUStto be sure. Type:

06:18

Finally, enter APPLESOFT the sure fire way

The code at $J00 nonnally jumps to theBASIC wann start routine but, if the pro­tcaion scheme is wonh anything, this willnot work.

Assuming that didn't work, reload theprogram and RESET into the monitor again.The next thing is to try typing 90840 or90BFG. These are the DOS cold and warmstan routines, respectively. If you are luckyenough to get a BASIC prompl, you havedone well. Most of the time, however, youwill not.

If in either case you succeed in getting aBASIC prompt, try LISTing the program orCATALOGing the disk. If anything you typestarts the program running again, the pro­tection has changed the RUN flag at SD6.So RESET into the monitor again.

The RUN flag is a zero page location (alS(6) which will automatically RUN theBASIC program in memory if SD6 containsa value of S80 or greater (128 or grealer indecimal). This is easy to defeat after you haveRESET into the monitor by typing:

06:11

This resets the RUN nag to nonnal. Nowif 3I>eO, 9D84G or 90BFG previously re­warded you with a BASIC prompt, this willsolve the probkm of the program re-runningwhen you type a command.

For debugging effons, the RUN flag canbe changed from within a BASIC programby issuing the code:

11 POKE 214,255

or by poking location 214 with anythinggreater than 127. From Assembly language.the code would most likely look like this:

800- A9 FF802- 85 06

from the keyboard is easily accomplishedfrom BASIC using PRINT and INPUTstatements. Doing this from Assembly lan­guage however, requires a great deal morework. Also, we should realize why aprogrammer uses Assembly language. Theonly real advantage to Assembly language isspeed. If speed is not critical, most non·sadistic programmers wiu use BASIC.

With this in mind, take nOie of how theprogram runs and displays information onthe screen. Ifit runs at about the same speedas the BASIC programs you have written,it is probably written in BASIC. Remember,Assembly language is considerably fasterthan BASIC in every respect.

Finally, read the package the programcame in. The package may say what languageit was wriuen in. If it doesn't, a dead giveaway is in the hardware requirements. If theprogram requires APPLESOFT in ROM,then at least part of the program is undoubt·edly written in APPLESOFT.

Viewing the CodeNow that you have figured out that your

protcaed program is written in BASIC, it istime to LIST their code. The first step is to

M any protected programs are written inAPPLESOFT. Of course, most publishersare sly enough to protect against breakingout of their program with CTRL C orRESET. Also, most protect against re­entering BASIC from the monitor by chang­ing the typical BASIC re~ntry point (atS3D8) so thai it points to disaster. Many pro­grams also set the autorun flag at SD6 so ifyou manage to break out of the prOlram intoBASIC, anything you type will RUN theirBASIC program. I win describe how to beatall these protection schemes, assuming youhave an old style F8 monitor ROM or somemeans to enter the Apple's monitor at will.

Is It BASIC?First, we must determine if the protected

program is written in APPLESOFT. If af­ter you boot the program a BASIC promptappears, this is a good indication that at leastparts of the program are written in BASIC.Furthermore, if the program prints a lot oftext on the screen, or requires a good dealof user input it is likely that the program iswritten in BASIC. The reason for this is thatprinting text on the screen and inputing data

ExaminingPl'otected Apple.oftBASIC Pl'OgI'alD.By Clay 8a.....11

Page 27: amaus.net computist...APPLIED ENGINEERING IS 100% APPLE That's Why We're So Good At II! • • p, 'IJ-' I ~JI rmtJi I • • I' • Complete 1I> voice music synthesizer on one card

by typing:~C

You should see an APPLESOFT prompt.Now type:

LIST

and your APPLESOFT program should nowappear.

Siralegic Simulation's RDOSApplying this to a real world example. try

this method with one of Strategic Simula­tion's (SSI) releases. SSI uses a highly modi­fied DOS called RDOS for their protection.SSI uses all the tricks mentioned to preventyou from LISTing their programs but. us­ing the above procedure, you can LIST theirBASIC programs.

In addition, the DOS used by 551 (RDOS)uses the ampersand (&) in all of its DOScommands. So if you see any ampersandsfrom within their BASIC program, youknow it is a DOS command. For example.to catalog a SSI disk. after you follow theabove procedure and you are in BASIC.type:

'"CATThis will display SSl's catalog. Very differ­ent. eh!

Well. back at the ranch. If you want toSAVE your a protected APPLESOFT pro­gram to a normal DOS disk, foUow thesesteps:

I) RESET into the monitor after the programis running.

2) If you are using a ROM card in slot zero,disable its ROMs by typing:

C8813) Next turn off the autorun flag and movepage $08 to page $95 where it will be safe

06:889S88 < se8.8FFM

4) Check where the APPLESOFT programends by typing:

AF.a85) Write down the two bytes that are dis­played.

6) Boot a 48K normal DOS 3.3 slave diskwith no HELLO program.

P.....7) Enter the monitor by typing:

CALL-lSI8) Restore the APPLESOFT program bytyping:

888 < 9518.9SFFM

BCD: enter the two bytes you recorded instep 4, separated by spaces.

9) Enter BASIC and save the program bytyping:

30fGSAVE PROGNAME

What you have done is to move S806 to S8FFout of the way so you can boot a slave disk.After normal DOS is up, you reSlOre S800to S8FF from $950010 S95FF, and then re­store the end of APPLESOFT programpointers so DOS knows how big your BAS­IC program is. Finally. you just SAVEd itto your disk!

Of course there are other more automat­ed ways of getting programs to a normalDOS 3.3 disk (such as Demuffin Plus), butthis is a quick and dirty method that willoften work. Keep in mind that the programmay not run from normal DOS because ofsecondary protection within the BASIC pro­gram il5Clf. Any curious CALls. POKEs orPEEKs to memory above 40192 (this ismemory where DOS resides) or below 256(zero page memory) should be examinedclosely.

Another thing to keep in mind is that theprotected disk may have more than one file

AOVlNTUll TIPSCranslon ManorSit". O"-L1,,.How do you lure a hungry mouse to atrap?No fireflies in that dark cave? Bettercheck Out the General Store.Don't try "open sesame" on the vault.Read the sign.

Zork I(.(orom, I.c.Only sticky fingers can open a lock. oran egg without breaking it.Where would YOU hide if you were adungeon door7 In the floor, of course.Santa may carry many things up thechimney, but you only need a light andone other item.Is that a sword or a light saber whendanger is near?

Planeltall(o(orom. (DC,

In the brig? Look for writing on the wall.The emergency bulkhead will open on itsown when needed.The auto pilot in the pod needs drivinglessons. so strap in or you'll be very dead.

Mission ASleroidSic". O.-LloeIf you were a General, how would youwant your men to address you?Fatties don't pass military physicals. Ifyou want in, you've got to get in shape.Phew! Someone needs Shower ToShower.

on it. If the protected ooS's commands havebeen modified you may not be able toCATALOG the disk directly 10 see howmany files are on it. If this is the case, youcan try to execute the CATALOG commandhandler at $A56E. To do this, boot up withthe protected disk and RESET into the mo­nitor. Then type:

A56EG

With any luck at all, the disk's directoryshould be displayed. If there is more thanone file you will probably want to transferall the files to normal DOS with the use ofa program such as DeMuffin Plus.

If you experiment with the techinques Ihave described in this snide I think you willbe surprised at the number of programswhose copy protection can be fairly easilyremoved. '

AOVlNTUll TIPSTime ZoneSierra Oa-LbleIf you see a pteradactyl, run for cover!Those cavemen look hungry enough toeat a Iagomorph.Try using a rock to kill dinner for yourpre-human friends.

SuspendedInfocom, I"c.Waldo can help Iris, but first he needsto "extend" himself.When she's in top condition, Iris can bea big help in reading those monitors.Every Whiz Kid needs a power source.If you want to find a specific piece ofinformation, look in the index.

Crilical MassSirius SofhnreWhat's on the wall?There's something in that envelope. Bet­ter read it.That's a pretty old elevator. Get readyto jump!Who likes to eat peanuts?

Zork UI.forom. IDC.-If you pass through the curtain oflight, you will leave in the same direc·tion as you entered the vault.-The safe is to the south.-OoIS are easier to control if they wearcollars.-"Babe Flathead" played baseball.-Oon't kick the bucket.

-Contributed by Cuffe" Johnson

Hardcore COMPlITlST no.1O

Page 28: amaus.net computist...APPLIED ENGINEERING IS 100% APPLE That's Why We're So Good At II! • • p, 'IJ-' I ~JI rmtJi I • • I' • Complete 1I> voice music synthesizer on one card

By Rey Derreh

••

••

••

••

SAVE POINTal.

SClJEEZE IT IN

GET A NEW BAS

~INT A AS AS

PRINT A CARRI

N.JeER OF lAS

RETRIEVE THE

.al S300

.EO S3F5

.EQ SFD8E

.EO SFDEO

START OF PFI:lGRN4

KlNITOR RCJJTINES

ZERO PAGE lOCATCNS

PAGE THREE lOCATICWS

118J LINPRT .EO SED24 AWTINE THATPRINTS X,A IN oeCI~L

l1W TOKTABl .EO SlOXl TABl£ OF TC*:ENS SPEllfO OUT12(1) GETCHR .EQ sonc IOJTUIE THATGETS NEXT CHARACTEIl OF COfWID IIORll1210 F....EVAL .EO s007B EVA~TES ANEXPRfSSIC»I MO PUTS IT IN THE FAC1220 INT.Cf.MY .EO SE8F2 caM:RTS YAWE IN FAC TO INTEGfR AND STORES IT IN SAO.SA'1Z30 CHKCCtl •EO SOf8E

"40'250 •1260 •1270 •

''''''290 COOTCII1300 CIOJT

"" RETUlN13101320 •mo·,"".13501360 CHROOT .EO $87lAST CHARACTER FRCM BASIC1370 CHRGET .EO $81Ie CHARACTER1380 LI...... .EO SSOT LIN.JeER TO LIST1390 WlTR .EO S98 POINTER TO CURRBIT LINE THAT WE ARE LISTINGIt,£(J FalPfIT .EO S85 T9FORARY STORAGE OF THE OFFSET FOR THIS LINE1410 FAt .EO S9D USED 8Y GET01R stKllLD POINT TO "HCM T()I(Bj YO..R GETTI..'4201430·'440 •1450 •

'''''1470 AMPERLOCATICW

,W1490 •

'500 •1510 ..

'520,.,0TO PAGE TltREE1540 .TF CllI.MCHLIST.OBJ1550 LM IS4t MAKE NftRSANo J~ TO START1560 STA NFER1570 LM mART158J STA AMPER+11590 lOA ISTAATHID STA Nf'fR+21610 RTSTE1620 START JSR LINGET SET LINfrIJIl TO

START OF RANGE1630 JSR FINOLIN POINT I..QIfR To 1ST LINE'640'650'660

S2C5AS883AS8A48S3470SF9AOSD76FS62E8S3398S2308S3442

SE174SI07ESAFA8S371 0S7589SAF52moo.9999'D957s2830

Crunchlisl II Hexdump

Crunchiisl II Source Code

1000 •••••••••••••••••••••••••••••••••1010 .. •1020 • CAl.MCHUST II •1(15(1 • •101t0 .. •1Q50 .. 8Y RAY DARRAH III •1060 • ..lanD •••••••••••••••••••••••••••••••••H'"H""1100111011201130 • ..1140 • APPlESOFT AWTIHES/lOCATICNS ..1150 .. ..11",1170 FUIOLIN .EQ SD61A

O3AO: FO 4C 55 03 20 78 DO 20 S6030031.8: F2 E8 AS 1.0 85 51 1.5 1.1 S76E10380: 85 50 60 SA844

BASIC expression to specify a line number.Because of this, you may no longer use ahyphen (-) to separate the starting and end­inglines to list. If you do, Crunchlist II willjust think it is a minus sign and try to evalu­ate the entire expression. Instead, you mustuse a comma to separate start and finish linenumbers.

I think you'll find this new crunchlistereven more versatile than the laSt!

0350: 84 85 20 24 ED 1.4 85 4C0358: SF 03 09 80 20 ED FO C80360: 81 98 DO 12 20 8E FO AD0368: 00 81 98 AI. C8 81 98 860370: 98 85 9C 00 C4 60 10 E20378: E9 7F M 84 85 AD DO 840380: 90 AD CF 84 9E AD FF CA0388: FO 07 20 2C 07 10 F8 300390: F6 20 2C 07 30 08 09 800398: 20 ED FO 4C 91 03 20 ED

0300: 1.9 4C 80 F5 03 1.9 10 800308: F6 03 1.9 03 80 F7 03 600310: 20 1.4 03 20 11. 06 AS 980318: 48 AS 9C 48 20 87 00 FO0320: 06 20 8E DE 20 1.4 03 680328: 85 9C 68 85 98 AS 50 050330: 51 DO 06 1.9 FF 85 50 850338: 51 1.0 01 81 98 FO 36 C80340: 81 98 AI. C8 81 98 C5 510348: 00 04 E4 50 FO 02 80 25

Dear Subscribers:

We have updated the (onnat ofour mailing labels. If it is time (oryou 10 renew your subscription,your label may look like this:

(OR/5) 2 issues leflRENEW your subscription loday

John Dot333 Main StreetBay City, OU 44239

To r~new your subscripdon withno delay in mailing, CUI out therenewal (orm on page 20 and sendtoday to:

Hardcore COMPUTISTSubscription Departmenl

P.O. Box 44549Tacoma, WA 98444

The WeaknessUnfortunately. Crunchlisl had one wed;·

ness: II could not lisl the line number as·sociated with an expression. That is, it couldlist 1000 but not (999+ I). This is becauseit used the same routines that the LIST com­mand used to determine which line Rurn­ber(s) to list. Therefore, just like the LISTcommand, you couldn't use expressionswhen specifying line numbers.

Crunchlist II is an updated version ofCrunchliSI which appeared in Hardcore 116.The original Crunchlisl program wasdesigned for saving disk space while creat­ing EXECable text files. As a side effect,Crunchiisl also saved time when creating andEXECing the text file that was made whenusing it.

Crunchlist saved disk space by LiSTingline numbers (of a BASIC program) withoutunnecessary spaces.

The RevisionCrunchlisl II works the same way Crunch­

list did, except now you may use any legal

CRUNCHLIST II

26 Hardoore COMPUTIST no.1O

Page 29: amaus.net computist...APPLIED ENGINEERING IS 100% APPLE That's Why We're So Good At II! • • p, 'IJ-' I ~JI rmtJi I • • I' • Complete 1I> voice music synthesizer on one card

. . . . . . . . . . . . . . .News Of Note

'670 PIIA 1760 LOA LII....! IS T1if EHD MJ,..., JSR CHRGOT ~ SPEtHI I'IlER A PlJlL1ED? '770 au. LIltlJlt+lW!ll BeQ ""INlST YES, LIST IT ''''' "" NXIST IF ,.,. START'700 JSR CHJ(~ SKIP TliE CCJtt LISTING

• 1?'lll LDA ftFF YES IT IS, SO1710 J$R LlNGET SET LINN.JIl TO SET THE END NUMBER TO 65535

END RANGE llDJ STA LIJrIt.M1720 ""INLST ,LA J«)\IE I..QITR 8A 1810 ST" LIIrlfUt+1

" 1820 NXLST ..", LIST AN EHTI-173ll STA 1..Offlt+1 RE LINEmll ,LA 'lllll LOA (UWTlU,Y IS HIGH 8YTE

'750 ST. """ Of LINK ZERO

IlCQ FINISHED YES, DCJfE LIS

GET LINE NJII

CCMllETElY DO

BAAHCH IF POT

M\KE IT A III>

INY

lOY I'TaCTABl-5100STY FAC+1

LOY KTOKTABl-S100STY FAC POINT FAC TO

To help l_te ou maillD.v"'''.,~ MIl.d • PMtcudwith you DADle aDd.d~uelth. cUt. you ~lved thlt m~zln. (lludcore COMPUTIST 110.

10) to:Bardcor. COMPUTIST

MalliD.V S1I1'VeyP.O. Box 44549

Tacoma, WA 98444

CondnUN on pa,e JO

Dear Sub8cribers:

,,'"liNG,""ER1860 LOA (L.CWTR), Y1870 TAX1880 INY1Bt;U l.DA (u:wTR) , Y1900 CMP U.........11910 BNE lSTtI1920 CPX U",-"1930 BeCI lST1UN19toO lSTtI BCS FINISHED1950 LST1LIN STY FORPNT1960 J SR lUlPRT1970 LISTt..ClCP lOY ~T19(1) JJlP PRINT1

1990 SEHDCHR ORA nil)2llJ) JSR CClJT2010 PRIm INY2fRO LM (L.CWTR), Y2mO fIE 1QC8rOF POT 00 OF IIHE so SEE IF TCItiB2OtoO JSR CfOJT EVERY LINE ISTSIUNATED WITH A CARRIAGE RET\JlN

2050 LOY MJ AT END OF LINE TO GET NEXT LINl(2060 LM (u:wTR) , Y

2ll7O 'AX2Clll INY2QIjI{) LM (LJ)ITR), Y21m STX LJ)ITR POINT TO H£XT

LINE2110 STA l.CWJltt-12120 ME NXLST

AT END OF PfIOGRNiI2130 FINISHED RTSNE LISTING so RETURN2140 TaCENOf' BPl SENOCHR IF POT A TOKEN, JUST PRINT IT2150 SEC2160 S8C IIS7FEX JrOIIER FOR THE TABLE2170 TAX218) STY FORPNT SAVE LINE POIINTER21902200

'AB"221ll222ll

ACracking Reward

ny of our readers who have access toan IBM PC or compatible might be in­terested in a challenge that has bet'n putforward by Denver-based Defendisk Inc.Thty are offering a $10,080 reward to thefirst person to produce a duplicate of adisk for the IBM that has bet'n protectedby their Defendisk syStem.

Their literature claims that this systemplaces a unique electronic "signature"onthe disk that can be read and verified bysoftware. Of course, protected programswill refuse to ellccute if the correct signa­ture is not found. Apparently this signa­ture is recorded so strongly that evenreformaning the disk will not remove it.

This sounds like a variation of thenibble-count scheme which many of ushave come to know and love. It seems likethe routines which check the signaturecould be tracked down and removed bya diligent programmer, although with$10,''1'0 at stake, Defendisk probablychecks the disk several times and uses ad­ditional protection schemes.

If you want to get a copy of the com­petition disk call 1-808-522.1800, Ext.720. The cost is 59.95 plus $2.65 for ship­ping and handling.

Alpha Logic Business System4119 N. Union RoadWoodstock, IL 60098

pages than the first issue (12 pages). Ifyou have tried to order a subscriptionfrom Omega and the letter was returned,you will have to send it directly to AlphaLogic. Their address is:

Omega's decision to declare bankrupt­cy must have come abruptly because thecompany's ads appeared in some Junecomputer magazines. No doubt there isa very interesting story behind the demiseof Omega.

Omega MicrowareFiles For Bankruptcy

R~ntly we received several calls fromreaders asking us if we knew anythingabout the rumor thaI Locksmith's pub­lisher, Omega Microware, had gone Qutof business. Omega was not answering itsphone.

A call 10 the phone number listed in theLocksmith 5.0 manual was intercepted bya recording saying the phone had beendisconn«ted and calls were being handledby 312-5)7-3528. We called that numberquite a few times but there was never ananswer, ahhough occasionally therewould be a busy signal. It seemed like abad sign. We decided to call some otherpeople in the publishing industry to seeif they could enlighten us.

Central Point Software's sales managerhad also heard the rumor about Omegabut couk!. not confirm it. s-e Softwaretold us that they now had to get copiesof Locksmith from a distributor in Illinoisand nOt directly from Omega. A call tothat distributor finally confirmed therumor; Omega had filed for Bankruptcyunder Chapter 7 (anyone out there speaklegaleze?) and the marketing rights forLocksmith 5.0 had bet'n acquired by Al­pha Logic Business Systems of Wood­stock, IL.

Alpha Logic will be marketing Lock­smith 5.0 and publishing the locksmithNewletter. Improved support for it hasbeen promised. It is no secret thaI Ome­ga's support for Locksmith had beenmarginal at best.

Alpha Logic plans to establish a24-hour ho!line in addition to POStingparameters on the SOURCE and MCI.They also have promised to rewrite theLocksmith 5.0 manual and 10 release ver­sions of Locksmith for the IBM PC andthe Macintosh.

Future editions of the new letter prob­ably will be appearing more often thanquarterly, although each will have fewer

Hardcore COMPUTIST no_l0 27

Page 30: amaus.net computist...APPLIED ENGINEERING IS 100% APPLE That's Why We're So Good At II! • • p, 'IJ-' I ~JI rmtJi I • • I' • Complete 1I> voice music synthesizer on one card

Backing-UpMinit ManBy Clay Harrell

Penluin Soft".~

830 4th AyenueGene"., lL 60134534."

Requirements:48K Apple with old (or modified) F8 moni­tor ROMOnc disk drive with DOS 3.3Two blank disksMinit ManSuper 108

M init Man is a Choplifter type gamefrom Penguin Software. The game plays welland has nice graphics, demos and title pages.Unfortunately, its slow loading is practical­ly unbearable at times. My original intentwas to make Minil Man load at the speed oflight... But in order 10 do this I had to firstremove the disk's copy protection, Mini!Man proved to be a challenge on which I hadto U~ some of my own programming 10

overcome Penguin's protection. First, letstalk about the protection used in Minil Man..............._..;=~: ......................................

_ .. die ..................You can protect a program by various me·

ans, or you can protect a disk full of pro­grams with some sort of DOS modification.DOS modifications are the least successfulof protection schemes, since someone alwaysseems to fmd a way to copy aU the files onloa normal DOS disk, eluding all the pro­tection.

The classic program for dealing withmodified DOSs is Demuffin Plus. II worksmuch the same way as Applt:'s Muffin pro­gram works. Muffin was written to read filesfrom a OOS 3.2 disk and tht:n writt: themto a DOS 3.3 Disk. DeMuffm was a varia­tion of Muffin, allowing the Hardcort: 3.2user to copy disks from DOS 3.3 to OOS 3.2.Demuffin Plus Opc1ates on the samt: princi­pit:, bUI uses whatever DOS is in memory toread the disk, and then writes out to an in­itialized DOS 3.3 disk. While this is a power­ful utility, it only works with programs thatare based on DOS and thaI have a CATA­LOG track with normal, or somewhat nor­mal, files.

Now, with this tidbit of information inmind, how do we know that a disk uses amodified DOS? There are many hints, tht:foremost being the appearance of a BASICprompt al the bottom of the screen duringbooting.

Somt: publishers have bypassed the rou­tine that outputs the prompt, but you can stillguess that Ihut:'s a modified DOS presentif the boot sounds like a normal DOS boot,but the disk won't copy with COPYA.

Minit Man's protection scheme falls intOthis category of modified DOS protection.Upon booting the disk, the normal DOSboot sounds are heard and a prompt appearsat the bottom left of the screen. Instead ofattempting to use Demuffin Plus, we are go­ing to use a different approach to thedeprotection of Minit Man, using the pro­gram "Super lOB."

The actual modification on the Minit Mandisk is thaI the end of address and end ofdata markers have been changed on everytrack to "DA AA"inslead of the usual "DEAA." In addition, the start of addrt:ss mar­kers on every other track have been changedto "D4 AA 96"instead of "DS AA 96."

Tht: Super lOB controller starts copyingfrom track two (we do nOt want the protect­ed DOS residing on tracks 6 through I) ofthe protected disk and writes back to thesame tracks of our normal DOS 3.3 Disk.

With the Super lOB controllt:r in hand wecan now start todeprotect Minit Man. Hereare the first few steps:I} Type in the following SUpl"r lOB con­troller and save it with the SAVE CON­TROLLER program on page II of this issue(or just LOAD SUPER lOB and type in thecontroller)

(For infonnaUon on delta characters (A) seeIMPORTANT note on page 9.)

Minit Man Conlroller1000 REM MINIT MAN CONTROLLER1010 TK = 2 :5T = 0 :LT = 35 :co =

WR1020 T1 = TK : G05UB 490 : G05UB

11101030 G05UB 430 : G05UB 100 : 5T =

5T + 1 : IF 5T < 005 THEN 10301040 IF BF THEN 10601050 5T =0 :TK =TK + 1 : GOSUB

1110 : IF TK < LT THEN 10301060 POKE 47505 ,222 : POKE 47413

,222 : GOSUB 230 : G05UB 490:n: = T1 :ST = 0

1070 G05UB 430 : GOSUB 100 :5T =ST + 1 : IF 5T < 005 THEN 1070

1080 5T = 0 :TK = TK + 1 : IF BF =o AND TK < IT THEN 1070

1090 IF TK < IT THEN 10201100 HOME: PRINT: PRINT "OOftEA

WITH-COPY" : END1110 POKE 47505 ,218 : POKE 47413

,218 : IF TK I 2 = INT <TK I 2) THEN 230

1120 RE5TORE : GOTO 19063010 DATA 212 ,170 ,150

EXEC SAVE CONTROLLER

2) Copy Minil Man with tht: controUer placedinto Super lOB.

3) Boot a normal DOS 3.3 Disk (preferablywith a fast DOS since the load is 50 slow onthe original Minit Man) and initialize tht: diskwith HELLO as the boot program. ThenFlO aU the files to the freshly INlTed disk.

INIT HELLOBRUN FID

When the copy is done you will have thebulk of Minit Man deprotecled. Now wemus! make the programs on Ihe Mini! Mandisk compatible with DOS 3.3, since the pro­tecled DOS has some built in routines thatnormal DOS dOfi not. (Notice you can nowCATALOG the disk and see the files thatmake up Mini! Man).4) Clear any program in memory and get theHELLO program

FPLOAD HELLO

5) Make the foUowing changes:

I HOME5 HGR2: HGR6 CALL 33172

6} save the program

SAVE HELLO

Now some other mes on the disk need tobe changed to complt:te the deprotection.Follow these steps:

7) Removt: the fLle "PLAYGAME PROG"

DELETE PLAYGAME PROG

8) Clear any program in memory and typethis short one

'-PI PRJNT CHR$( 4); "EXEC PROG"

9) Save it

SAVE PLA YGAME PROG

16} Replace the program "DEMOSET­PROG"with the following:

DELETE DEMOSETPROGFPI PRINT CHRS( 4); "EXEC DEMO"SAVE DEMOSETPROG

Now you must create some text files 10

load in the game and/or demo files. Youmay use a word processor that ClUtes NOR­MAL t61 files or you may crt:ate an Ap­plt:soft program to crt:att: them.

Note: The fil~D_mamust be typed exaedyu sbo".-n or )'OU ".-m get _ 1'FlLE NOTFOUND trTor

II) Create the text file "PROO"thatcontains:

BLOAD DP.7.2.SHAPESBLOAD DPBC,A8S16BLOAD DP7,AI6384BLOAD PACPICS,A2048BLOAD DP.7.2.ANNEX,A22574

28 Hardcore COMPUTIST no.IO

Page 31: amaus.net computist...APPLIED ENGINEERING IS 100% APPLE That's Why We're So Good At II! • • p, 'IJ-' I ~JI rmtJi I • • I' • Complete 1I> voice music synthesizer on one card

Be sure to carefully enter the text files exactly as shown above.Have fun with lightning fast Minit Man!

BLOAD MEMSORT5C0I ,AS5C01BLOAD PACMOVE,AS6000BLOAD TRAINS,AI400eBLOAD DP.7.2.ANMXCALL 23553

12) Now create the text file "DEMO"that contains:BLOAD DP7.DEMO,AI6384BLOAD DPBC.DEMO,A8516BLOAD DP.7.2.SHAPES.DEMOBLOAD PACPICS.DEMO,A2048BLOAD DP.7.2.ANNEX. DEMO,A22574BLOAD MEMSORT5C01.DEMO,A$5C01BLOAD PACMOVE.DEMO,A$60e0BLOAD TRAIN.DEMO,AI4000BLOAD DP.7.2.ANMX.DEMOCALL 23553

Dear Readers:

We at Hardcore COMPUTIST apologize to all thosewho have been confused by the format and namechanges our magazine has undergone in the past. Tomake it easier for you to identify the order of our pub-lications and to facilitate acquiring back issues, see thefollowing which lists all the magazines that have been

published through

1981·82 June 1984.

Hardoore Computing I Hardcore COM-Update J.I· Newsletter PUTIST has beenHardoore Computing 2 numbered consecu-Updatc 2.1- Newslcllcr tively from JanuaryHardoorc Computing 3Updatc 3.t- Newsletter 1984 with the excep·Update 3.2· Newsletter tion of the March is-

1993 sue.- Please note thatCORE. is no longer

CORE VoU No.l- Graphics April printed 'as a separateHardcor. COMPUTIST I May

magazine. II has beenHardoorc COMPUTIST 2 Jun.CORE Vol.! No.2- Utilities "","" combined with Hard·Hardoorc COMPUTIST 3 September core COMPUTISTHardoorc COMPUTIST 4 NovemberCORE Vol. I No.3- Games D<:cember and you now receive

Hardcore COM-,,,.PUTIST with a

Hardcore COMPUTlST S January CORE seclion in-Hardcore COMPUTlST 6 Fcbruary eluded in it eachHardcore COMPUTIST 7 Mar<:h

month.(Vol. 3 No. J.. green oover)Hardoor. COMPUTIST 8 AprilHardeorc COMPUTlST 9 M" For bock tulle informo-Hardoore COMPUTlST 10 June tion, set' i~ide back cove:r.

Controller Checksums

Output Byles:e) 00ABCDEF87) 00JKLMNP174) eeSTUVWX341) 00ZYRQHG

bg Rag Darrah

DOS 3.3 Legal Bytes

96 97 9' 9. 9' 9E OF "A7 AB " " " " B2 B3B4 BS B6 B7 B9 " BB Be

BD BE BF CO co CE Cf 0306 07 '9 " DB DC " DEOF ES E6 E7 '9 " EB ECEO EE EF F2 F3 F4 F5

,.F7 F9 " FB Fe FO FE FF

Whiz lid

Reading a Sector

When reading a sector, this entire process is performed in an oppositemanner. First of all, a byte is read from the disk. Nexl, it is translatedthrough the use-of a different table (at SBA96 through SBAFF). A S96is translated to a $00, a S97 becomes a $01, a S9A becomes a $02 andso on up to a SFF which becomes a S3F.

Now these 342 bytes have to be converted into the original 256 bytesthey once were (called denibblization). This process is what you wouldget if you exchanged the "Input Bytes" and "Output Bytes" labels inthe table above.

The numbers before the parenthesis are the relative byte number wi~

thin the siring of inpul or output bytes. TIle letters in the example representthe individual bits within these bytes. Note thai for every three input bytesthere are four output bytes. This is because the output bytes have onlysix changeable bits. With a little math (256_413 .. 341.33) we can see thata sector encoded like this would take up 342 bytes (byte 8 through 341).

After DOS has encoded the sector to be written, it lakes the outputbytes (called nibblized bytes), translates them and writes them on the disksurface. The translation is performed with the help of a table in DOS(at SBA29 through SBA68) which contains the 'laUd disk bytes listed nearthe beginning of this article. A S08 is written to the disk as a S96, a $01is stored as a S97, a $02 is stored as a S9A and so on up to a S3F whichis stored as a SFF.

Confusing?Sounds prelly confusing doesn't it? Actually, this is a slightly simpli­

fied version of what happens. In addition to all this, DOS Exclusive ORs(EORs) the bytes with themselves (flips bits in bytes) as they are readand written. This is called a checksum and is a way of checking the da­ta's validity because it always starts with a uro when writing and it shouldalways end with a zero when reading.

I suggest reading the above several times untll il finally makes sense.For a more complete explanation of this process consult 'Beneath AppleDOS' by Don Worth and Peter Lechner.

Writing A Sector

The method of storing all 256 values with only 64 different bytes iscalled 6 and 2 encoding. This means thai 6 bits of the byte arc storedin one byte and the other two are saved in another byte. Here is an illus­tration of this:

Input Byles:0) ABCDEFGH87) JKLMNPQR174) STUVWXYZ

Did you know that all 256 different byle values cannot be reliably readfrom an Apple's disk drive? This is because of a hardware "'eakness whichis: A byte stored on the surfact of the disk mllst haye fhe high bit utand contain no more than one instance oj two conUClldye uro bits. Thisresults in only 69 "valid bytes." Two of these bytes (OS and AA) arereserved for marking the beginning and end of data and address fields.This leaves 67 bytes, but only 64 are needed for the type of encodingthat is used. The bytes that don't have a pair of consecutive one bits inthem (not counting bit 7) are also eliminated which leaves exactly 64 bytesthat can be stored on disk. They are:

- SSe40- SE4e6

S7942- S7EA2- SCOB7- SCFA4

SS8A1

10701080109011001110112063010

- S356B- S3764- SB2ee

U4eD- S34F8

S7477- S5448

'00010101020103010401050'060

Hardcore COMPUTIST no.IO 29

"'.....

Page 32: amaus.net computist...APPLIED ENGINEERING IS 100% APPLE That's Why We're So Good At II! • • p, 'IJ-' I ~JI rmtJi I • • I' • Complete 1I> voice music synthesizer on one card

Condnued from pale 17

ZZ50 lDY NSFFZZ(,() SICPTK oex caMT TOt(ffIISVERSA ,2250 BfO PATOt2260 TOICLP JSR GETCHR2l7O BPL TOICLP228'J 8MI SI(pTll:2290 PRTOK JSR GETCHR GET A CIWtACTER OF THE TOKEN

2300 II.U TOKDCNE2310 ORA nllI2320 JSR CQJTZ530 JI'IJ PRTOK2340 TOKIlCIfE JSR CQJT sal) LAST CHAMCTER OF TOKfN2350 JI'IJ LI STLOClP ; GO DO NEXT TKING 1/11 LINE

"""2370 LINGET JSR FlIt EVAL EVALUATE FORMUtA

23lIlIh'TEGER

1390VAU.<

"m2410

"'"''''''''''''

JSR IHT. caN CQrIVERT IT TO

tOlE INTEGER

STA UIR.M+1

"'" ..,STA LIIMJIIRTS

...................1.1 1 •••• _ ..

i!I!ii

OH Shhhh-

YOU NEED THENow the fun begms' With theCIA (ConlldenliallnlormalionAdVISOrs) on Ihe lrail 01 yourdiSkS. fiXing those 1/0 ERRORS is really lun! BUI repairingclobberred disks qUickly and easily is actually just Ihebeginning. The CIA IS a collection of five advanced disk ulilities.working logether to invesligate, edit, locale, list, lrace. rescue,transtate, patCh, repair, verily, examine. protect, unprOlect,analyse encrypt and decrypl programs or textflles on normaland even protected diSks, be they DOS, PASCAL, or CPMI Asyou can see th'$ 1$ no ordinary bag of trlcks! It IS. In faci a newgeneratIon disk uhlity thaI goes lar beyond anythll1g elseoffered !OD farBut best 01 all, you don't have 10 bea member of Ihe GI31ed EyeBrigade to make full use 01 every oneollhesesophlstlcated andunIque features We Include a copyof the top secrel 'CIA Files',a 120 page easy to follow, hand holdmg tutOrial about the Apple(R) disk and Ihe frve CIA utilities. Eyerythlng you need to knowabout disk palchll1g, repair, formatling, protection, andencodll1g IS explained In plam Englishl

We're betlll1g Ihat Within a few days at recelYIng Ihe CIA Kit,you'll be TRYING to ClObber a disk - JUSI 10 have the fun ofpulling it back logether! You'll enjoy a new confidence wllhyour data slorage

To get ALL FIVE ullillies PLUS 'The CIA Files', for use withApple (A) 1I'/lIe, 48K, 1 or 2 drives S.nd 165.00 Montly Ord.r

ICheekl, .now tim. to cl_1 NOT COPYe-e-.___ PROTECTED

S.1es Dept .• Met. GOLDEN DELICIOUS SOnwAAE LTD..350 Fifth A_, SuIte 3308, N_ York, NY 10001.

Hardcore COMPUTIST no.IO

Highest Quality, Lifetime Guarantee!

DISKETTES$1 65 5V4" soft-sectored, hub ring,

• envelopes, double density,double-sided on APPLE drives -- 100 for$155,100 single-sided for $149.

Hard plastic stand-up 10-diskette carryingcases $2.75 each, 4 for$10 (beige, black,blue, green, grey, red, yellow). Smoked­plastic flip-top 75 diskette file cases,$19.50. Heavy-duty nibbling tool, $22.

Disk Drives$199 100% APPLE-compatible, 40­

track, full-size, Siemens typequality drives, with manufacturer's 1-yearwarrantee. Controller card, $65.

COD & VISA/Master Card orders welcome.Add $4 for shipping & handling (only $2 tororders under $50) plus 6% sales tax for DCresidents. Send for our catalog,

VF ASSOCIATESWestern Ave., N.W., Wash., D.C. 20015

(202) 363-1313

Page 33: amaus.net computist...APPLIED ENGINEERING IS 100% APPLE That's Why We're So Good At II! • • p, 'IJ-' I ~JI rmtJi I • • I' • Complete 1I> voice music synthesizer on one card

PfRA TES· Get your own Pirate T·Shirtwith the above flag on the chest' Sendsize & color, (Red or Gray), and $8.00 +$2.00 StH to: Captain Clone,Box 183tHC, Granville, IL 61326

$20.00 BOX OF 10WE PAY SHIPPING

5\{" SOFT SECTOR,SS/SO/, W/HUB RINGS

Apple ll. II + • lie.Franklin users:Do you have problems

backing-up yourcopy-protected programs?

Do you lack parameters foryour copy programs?

Are you looking tor programsthat you can AFFORD?

Are you hesitating toupgrade your equipment due to

expensive pricesquoted in other ads?

It's simple now.Just drop us a line,

Send $1.00 U.S. funds to:

ReliantP.O. Box 33610Sheungwan, Hong Kong

IMPORTANT: We have over 600 PCname-brand programs and varioushardware offers. Programs @ U.S.S8.aO/PC includes the disk endregistered airmail handling.

2361 TEE DIUVLAKE HAVASU CITY, AZ. 8640

(602) 855·159

~ C!'£Ql;S NCl MOI£Y ORDERS WElCOME.!,~~ I AZ RES ...ao 5.. SAl.£S TAX

iIU'lI on Apple IlQpU.. or.~__,-'1",2.

H_

E SSE N T I A LOA TAD U P Lie A TOR III·• EOO rarely needs parameter changIng• AutomatIcally finds the beginning of each track• Unlike any of the Copycards. EOD backs up the entire dIsk.

nOI Just what Is In memory• Accurately finds "auto-sync" bytes and their lengths• Can copy ',to and ~ tracks

TO OIIOEII OC FOIl MOll£ ~T1ON.O\LL (707J lSl·2420

UTIUCO MICROWARE 3377 Solano Ave. SUIte 3$2. Napa. CA 90'558

Hardcore COMPUTlST no.l0 31

Page 34: amaus.net computist...APPLIED ENGINEERING IS 100% APPLE That's Why We're So Good At II! • • p, 'IJ-' I ~JI rmtJi I • • I' • Complete 1I> voice music synthesizer on one card

FREE INTRODUCTORYBONUS with purchase

01 TIck Slor_Trok Stor disk contoins patching

.oftwore..Slmpll..t(H)perote, menu-drivenTrok Slor softwole outomallcallylepalB a bod trock withoutl&quhtng technical expertise.

gg!~.....--.-.....FoIlign airm,.;J & handling $8.00.

AOOPieI" r9QUlled Ioi 2-dnYe SVSIeIT"6 sl2~!(JhOI'loolv S3

QeI\;nCIObIe ......ttl PJl"d'lOSe of T,ok SIalP9nonaI~.MO.VISCl and Mo:\IeICOId

Microsystems9071 Metcalf I Suite 124Ov6llond Pork. KS 66212

FOR SERIOUS COLLECTORS

CoinMasstoreStampMasstore

Masstore CollectorFor Appl,,- lL D+. D".nd compatible,005 3.3 . -18K RAM· I Did: om·"

n.e MMautoreW ~rie. for Coin CoIIKtinJ. StampColl«tilll Ind Gel'>l'ral CoIWtabl", (i.". bx.Nbx.Un1rd.. "10:.) pnwid", I quick. con,·"Rienl .ndemdenl Wly 10 m.ant«e taUenionx. n.eN UNrfriendly. menu dri"en pl'OJl"llDU require no addt­Donll prolTl"'min&- Feamr... indu.w.• SIOft UId -' c:otlectlOns by lkte!mint!Mlt. Scon

........ber. dellOmi...lioD, MUJlIry. ere.• UHr derlNIble pliMOUu..• Want. In'... nto<y. Evalwolio~ • !'ric. ~.t..• Up to 14 """"cIition/endel" (01 .uh it.....• Auw"",tic Inxert, Delete. RevUe _nd Find model.• Up 10 100 ""Ueotion. per m..t.r dilk-~y.ble

for eIIdinon.l coll.rHo....• Summori,.. IOtal coU«lion ,..luu• Referenoe vilue, ....ily .hong.d• Complete with .Imple ",,1I.otion..• Includes dlto.iled stop-hr·,t.p m,nulL

In Addition CoinMuSIOTt .lso:• Estim.us and display. referenoe v.lu., for up

to 81 coIn ~.d .. (Fille.. l to MS·70, Proof·6010 proor·70J.

• Co1eul'tu and printll out bullion v.luu.e Includes IImple I.inroln Cent data h....

CoinMlW._ . $$9StompMlWtlore.t MOII_ Colkctor' $49 eo.

Any two ·.sSS ....U thrH • $121tC.... __ ..u ,~ MIn <Ul

Send 0"""'1t or money order IIlC

SoftShoe Enterprises10959 Kane Auen..e. Dept. 401

Whittie,., California 90604Phone: 213·944·5541........ lI/U1'ro. <Il"pploe-.........

$9~5"50~rJtiIlt & Handling

Call. ct>«:k or M.a. No C.O.O.·&

• Saves copying time• For nibble programs

Know where your head is, at all times,with TRAK STAR constant digital readout

Midwest~Phone 913 670.7242 W1W

+ 'Mlr\(S ""'1tl nbbIB COP¥"PI'ograms lOarsploylrocbond hOll-lrock$lI'lOllhe program <:KX:eSSeS

+~1o'lITlCXf<fApple"~progrcm+So.,oetmebVCOlJ¥lOQ~lhelrocl<s bW>g U5ed

+ DlspIoys l4)1080lfOCIecod llOlI-lroclo1COIl i(lOlible WIII'I hIgn densd'ydnYe5.

+'oopoeoprogornooesn·' ru'l. Trol<SJar~.-acklObelecoped

+~l we pe!mIIS pIooomenl OIl lOP ot--+ Does nof use 0 loloI I"l lhe AppIe3 COfTlPOJI6I"+ For Apple' I. cod lie.o.pole II 0 reg.>leIlO ~0Cl8IT"0fl<ol Apple Ccwnpo.- nc

Easy-ViewDisk File

WorkStation

• Stores 100 Disks, Dust Free• 25 Disk Titles CI84rly Visible• Fast, Easy Access• Top Flips Back, Locks Upright• Closed Files are Stacbb/e

PRICE

Alpabet zoo $20.97Apple Mechanic $20.67Bank Slreet Writer $48.97Castle Wallenstein $20.97Chopillter $24.97Copy II + $27.97Deadline 534.97Dragon's Eye $20.97Facemaker $24.47Flight Simulator $34.97Frogger $24.47Games lor Young Child $20.97HI·tez Computer Goll $20.97The Home Accountant $52.47Home Word $34.97Inlldel $34.97Kindercomp $20.97Locksmith $67.97Lode Aunner $24.47Masl8rtype $27.97Math Blaster $34.97Menu Generator 527.97Midway Campaign $14.70Millionaire $41.97N. Atlantic Convoy Raid $14.70Pinball Construction Sel $27.97Robot War $27.97Rocky's BOOls $34.61SAM. $69.97Sargon II $24.47Sargon III $34.97Screenwriter II 590.97Speed Reader II $48.97Steps toAdy. Reading $69.30Story Machine $24.47Succ. with Math (mulldlv)$17.47Super Invaders $17.97Temple of Apshai $28.00Telengard $19.60Type Attack $27.97Typing Tutor $17.47Ultima III $38.47The Voice $27.97Wildcard $97.30Wizardry $34.97Word Attack $34.97Zaxxon $27.97Zoom Gralix $34.97Zork I $27.97Zor1\. II $27.97

PROGRAM

DISCOUNTSPECIALS ON

APPLE SOFTWAREALL PRICES 30% OFF

PLEASE make cheek or M.O. p'yablllo:

Slmpty Sottw_P.O. 80. 36068Kenau City. Missouri 64111

Add $3.00,~. Missouri "'JldenrJ Idc15 $"8'1& HJN rex. Allow ...., wee.b lor delivery.

32 Hardcore COMPUTIST no.1O

Page 35: amaus.net computist...APPLIED ENGINEERING IS 100% APPLE That's Why We're So Good At II! • • p, 'IJ-' I ~JI rmtJi I • • I' • Complete 1I> voice music synthesizer on one card

Do you need BACK ISSUES?

Are you tired of typing in programs that are available on disk fromHardcore COMPUTIST's PROGRAM LIBRARY?

If Jou'r~ ruding H.rdcorr COMPUTIST tor tbe Onl time,

~edon't mw oul on past issfts.And. takt .dvantagt of 0.' SPKfaI Orrtr.

.Q f-JPleue Hnd mr Ib~ bKk tuua .Itd/Of" Ubnry dlslu I hue Lilt...". DWi " ....•~.....~.....~.. S9.f5 0daeccked below: Hardcore COMPUTIST 19:

Super lOB and relaled Conuolkn

Ihrdcore COr-tPUllST 11. ...........•.........•...53.50 0CORE Word Searcll QmcrllorSensible Speller LOadCT &: Siver

lIudco,," COMPUTlST n •.........••............$3.50 0 Ubl'llf)' DhIl. 15•.•...........•................... $9.95 0H.rdC'O,.. COMPUTlST n •..•...•...•...•........$3.50 0 Hardcol'f: COMPUTlST 11:

H.rdC'O,," COMPUTlST f.4 ••••••••~ •••..•• , , •.•.••.. $3.50 0CottfikrDislt Directory DesiJfler

Hmlco,," COM:PUTIST 16 .........•................53.50 0 Hardoore COMPUTlST II:Hanlcore COMPUTlST n ......... .................SJ..50 0 Confder Fonnauer

H.ncon! COM.PUTIST is .•..... •••......•.......••SJ.5G 0Ubrary DiJ,k 14 .•.............•....•....•..•.•...59.95 0

HanIaln! COMPUTlST 16:H.ankon! COM.PUTIST Ill .•.....•........•.......••SJ.50 0 Modirltd ROMsCORE ,. C...p.kI................................504.5G 0 Cnmc::taUJc

COREn Udlltin ...••.•.•....•.•...............•. 504.5G 0CI1ICial Code Fmdtt

LIb...". DiIt IJ.................••...............S9.95 0CORE tJ Caones ••.••.•.••.•••..•......••..•...•. 504..51 0 CORE GamM5 iuue:

• u.kHl "pplks ~NloCes

Dnaoa """_t.lltra". DiIk n ................................ .St,.95 0

SPECIAL OFFER! CORE Utilities bRJe:H"Res Utilities

Order these: malanneldisk combinations and SAVE. DynamiC" MenuLiDe FU'id

CORE 11. COTO RqllaccHardcoft COMPUTIST II, GaTO L.abdaad Ubrw.ry Disk 11 aU for oDty ......... $19.95 0 • F_ Copy

CORE 11.1.3 .......................... $10.00 0 Hmkore COMPUT1ST IJ:Map MaJr.~

HareScore COMPUT1ST 1&:Ultima II Character Generator

Ub...". 0kIr. 11 ...........•..................... $I9.9S 0Name CORE Graphics issue:

"ddl't:M Sau""'~Quick Dnlw

Clly 50 Zip QD.Editor

Co••.". Dcsi'll PlusFaster Sh.apcs

VlSMMC up S~ Raid

S••II.RH&reScore COMPUTlST 11:

"""""'nSa4 neck or •••.., Inlno 10: Cb«kbin

Hankore COMPUTlST n:Buk LssueslUbrary Disk Offn Pap; F1ippcr

Hardco~ COMPUTIST Strin, PkJu~

P.O. Box 44549 Wall Dnw

""" CCMItroI. ...........•....•.••••..•.•..•.•.•S13.OCl 0Tacoma. WA 91444 DiU: Edit

10.w~oa"lI,uidNII ad41..~ .... IB. Ftlftila CIrHn add ZO~ Mm.Mil"., ..4 hitdU.•• U.s. r.... Hir. Dis.k View

Page 36: amaus.net computist...APPLIED ENGINEERING IS 100% APPLE That's Why We're So Good At II! • • p, 'IJ-' I ~JI rmtJi I • • I' • Complete 1I> voice music synthesizer on one card

cat on a soft thin disk.You need software insurance.Diskettes are fragile. and when a protected program Isdamaged. the results are expensive and inconvenient. Ifyou have a backup diskette. though, you can bave yourApple. IBM or compatible computer back on line withinseconds ... afforoably. That's software insurance.

Copy II Plus (Apple IL )[ Plus. lie)

This is the most widely used backup pt:OgraID (or theApple. Rated as "one aftha best software buys of theyear" by Ineldar magazine. its simple menu puts nearlyevery disk command at your fingertips. The manuaJ,with more tban 70 pages. describes protectionschemes. and o~Backup Boot"'li~simple. -Instructions for backing up over 300 popular programs.A new version is now available that is easier to use and-more powerful than before. Best of all, Copy II Plus isstill only $39.95.

WildCard 2 (Apple 1[. Il Plus. lie)

Designed by us and produced by Eastside Software,WildCard 2 is the easiest-to-use, most reliable cardavailable. Making backups of your total load softwarecan be as easy as pressing the button, inserting a blankdisk and hitting the return key twice. WLldCard 2 copies48K, 64K and 128K software, and, unlike other cards,is always ready to go. No preloading software into thecard or special, preformaned diskettes are required.Your backups can be run with or without the card inplace and can be transferred to hard disks. $139.95complete.

....__ : n..... p_""'..... p......-,.". p_.t_I>IlaoiI,...."

........."' 1_.. <>Ny Ul'd tI>e Cop,,,,b' l.o _ ... tI>e ......... Ill • ..m,......P...... t ON .ft"Il to _ ""'" for .tdol• .ol ......--__u.-prO<l WIn ....Ill to _

Thoo. p__••n ppllo<l ,... .... oftd _ ON _ ,......... to

vul.... .- foro"" , ..... <l>o' .poo<It\O<l.

••'. \••

Copy II PC (IBM)

This is THE disk backup program for the IBM PC andPClXT that backs up almost anything. Others may makesimilar claims, but in reality. nothing out performs CopyU PC ... at any price. Copy U PC even includes a diskspeed check and is another "best buy" at only $39.95.

We are the backup professionals. Instead of dilutingour eWorts in creating a wide variety of programs, wespecialize in offering the very best in backup products.So, protect your software investment, and get surefirerelief from scratchy disks.

~NTRALPOINT""-Software, Inc.The Backup Professionals

To order, call 5031244-5782, 8:00-5:30 Mon.-Fri .. or sendyour order to: Central Point Software. 9700 SW Capitol Hwy;Suite 100, Ponland, OR 97219. Prepayment Is required.Please include $2 for $hipping and handling ($8 outside U.S.or Canada).