IMD 1.16: 8/06/2007 11:50:28 ebmmug.001 eastbay micromate users' group public domain software utilities, modem, games, etc. disk issued: february 2, 1984 EBMDIR01TXTCATALOG DOCR COPYFILECOM LU COM TYPESQ COMDxSQ COM{ MDM711 COM!"#$%&'()-EBMMUG 001ADVENTURCOM"+,-./012345ADVENTURWRK6789:;<=>?@ABCDEADVENTURWRKDFGHIJCATALOG COMKLCRCK COMMDISPLAY COMNDISPLAY DOCOPEBASIC COM`QRSTUVEBASIC HLP[WXYZ[\ERUN COM\]^_`abFIND COMcFIND DOCdLDIR COM0efgLOCATE COM hMAST CATiNSWEEP COM2jklmPACMAN COM nopqrstuvwUSQ COM`RCPMDATA18 fyz{|}~SMICRO COMNSMODEM37DOCOSORTCAT COM SQUEEZE DOCTSQUEEZE DQCsCAT SUBPHONE 001M7KP-1 ASMRXFERTIMECOMT-EBMMUG BAK*-EBMMUG 001*VERIFY COMVERIFY DOCLIBRARY LBR Files: 37 space used: 378k (8k free) -EBMMUG .001 4k : EBASIC .COM 12k : MAST .CAT 2k : SQUEEZE .DOC 28k ADVENTUR.COM 22k : EBASIC .HLP 12k : MDM711 .COM 18k : SQUEEZE .DQC 16k ADVENTUR.WRK 42k : EBMDIR01.TXT 2k : NSWEEP .COM 8k : TYPESQ .COM 10k CAT .SUB 2k : ERUN .COM 12k : PACMAN .COM 20k : USQ .COM 12k CATALOG .COM 4k : FIND .COM 2k : PHONE .001 2k : VERIFY .COM 2k CATALOG .DOC 12k : FIND .DOC 2k : RCPMDATA.18 14k : VERIFY .DOC 2k COPYFILE.COM 4k : LDIR .COM 6k : SMICRO .COM 10k : XFERTIME.COM 12k CRCK .COM 2k : LOCATE .COM 2k : SMODEM37.DOC 26k : DISPLAY .COM 2k : LU .COM 18k : SORTCAT .COM 2k : DISPLAY .DOC 4k : M7KP-1 .ASM 12k : SQ .COM 16k : ϭ݄4P%rIRfKmD^2-HS5P"G  !"#+#3\+#!t#6ð :%I`!#: $: %H2z#i!#6!"%}2%*%+% ~ fiW?:%<:%:%H:%H:%­ ͋:% :#!# :%^> :#2#O> w:#!#?!w#6!#6!w#6:#2#!#&:#2#:#2#:#!#< ,V*%+% ~ P !%6:%ƒ> *%% ~2%O͟ !%6:% *%+% ~ HҬ ͟ - *%Mo ^w:%@Ow:% :z#/H- : % :% !#4 :% :#O>!#w-:% :% /!%6  w4!%6!#6pi:%O- !#6:~#!z#] ð O͸ u\Kð :%RRP"m2 %Ғ!v#6:v#: %ڬ P"r"!\"6!p"6#6P"!v#6Y2%-!v#6P"Kð Q͸ +#ͺ:t#/!s# #+#3+#ͺsð :%-&͂ !%6:%#7ͻ͂ t!T!:%:Q!%6L=!t:%:t͂ !=!:%t*%#"%Ҁ!%6:%B¡!%>w!"%*K""%ͅð :%C²Ͳͅð :%DͲ͋ð :%K͋ð :%L͑ð :%P !%6w  VOLUME 001 DESCRIPTION: E BASIC, GAMES, MODEM & UTILITIES NUMBER SIZE NAME COMMENTS 001.1 4K -EBMMUG .001 DISK NAME & CONTENTS OF VOLUME 001 (FEB 2,'84) 001.2 22K ADVENTUR.COM THE GAME OF ADVENTURE 001.3 42K ADVENTUR.WRK THE WORKING FILE FOR ADVENTURE 001.4 2K CAT .SUB THE CATALOG SUBMIT FILE 001.5 4K CATALOG .COM A DISK CATALOGING UTILITY-THE COMMAND FILE 001.6 12K CATALOG .DOC DOCUMENTATION FOR THE CATALOG PROGRAM 001.7 4K COPYFILE.COM A DISK COPYING UTILITY-THE COMMAND FILE 001.8 2K CRCK .COM CYCLIC REDUNDANCY CHECK-A FILE VERIFIER UTILITY 001.9 2K DISPLAY .COM DISPLAY AN ASCII FILE W/COMMANDS SIMILIAR TO ED 001.10 4K DISPLAY .DOC DOCUMENTATION FOR ABOVE PROGRAM 001.11 12K EBASIC .COM E BASIC PROGRAM-THE COMMAND FILE 001.12 12K EBASIC .HLP THE HELP FILE FOR E BASIC 001.13 2K EBMDIR01.TXT DIRECTORY OF THIS DISK 001.14 12K ERUN .COM E BASIC RUN COMMAND FILE 001.15 2K FIND .COM A CATALOG FILE LOCATER 001.16 2K FIND .DOC DPIP C:=B:-CAT*.*[OV REN C:-EBMMUG.=-CAT*.* ERA B:-CATALOG.*  4K CATALOG.COM 001.5 12K CATALOG.DOC 001.6 4K COPYFILE.COM 001.7 2K CRCK.COM 001.8 2K DISKETTE.NDX 001.9 2K DISPLAY.COM 001.10 4K DISPLAY.DOC 001.11 12K EBASIC.COM 001.12 12K EBASIC.HLP 001.13 12K ERUN.COM 001.14 2K FIND.COM 001.15 2K FIND.DOC 001.16 6K LDIR.COM 001.17 2K LOCATE.COM 001.19 12K M7KP-1.ASM 001.20 2K MAST.CAT 001.22 8K NSWEEP.COM 001.24 2K PHONE.001 001.25 14K RCPMDATA.18 001.26 10K SMICRO.COM 001.28 2K SORTCAT.COM 001.29 16K SQ.COM 001.31 16K SQUEEZE.DQC 001.32 10K TYPESQ.COM 001.33 12K USQ.COM 001.34 2K VERIFY.COM 001.35 2K VERIFY.DOC 001.36 12K XFERTIME.COM K SQUEEZE.DQC 001.32 10K TYP"7C^p Tn{ieRG{49VnB  )~#/}>|U?vHSie},2=[y|h#ViAJ;_6_@ʐ诼yϭ݄4P%rIRfKmD^2-HS5P"G  !"OCUMENTATION FOR THE FIND CATALOG UTILITY 001.17 6K LDIR .COM LIBRARY DIRECTORY COMMAND FILE 001.18 2K LOCATE .COM CATALOG FILE LOCATER-WILD CARDS ALLOWED 001.19 18K LU .COM LIBRARY UTILITY-THE COMMAND FILE 001.20 12K M7KP-1 .ASM SRC FOR MODEM 7XX-KAYPRO2 OVERLAY 001.21 2K MAST .CAT THE MASTER CATALOG FILE 001.22 18K MDM711 .COM MODEM 711 COMMAND FILE 001.23 8K NSWEEP .COM NEW SWEEP UTILITY COMMAND FILE 001.24 20K PACMAN .COM GRAPHICS GAME 001.25 2K PHONE .001 A PHONE DIRECTORY FOR USE WITH A MODEM PROGRAM 001.26 14K RCPMDATA.18 REMOTE CP/M BULLETIN BOARD USE DOCUMENTATION 001.27 10K SMICRO .COM A SMART MODEM PROGRAM-THE COMMAND FILE 001.28 26K SMODEM37.DOC DOCUMENTION FOR SMART MODEM VERSION 37 PROGRAM 001.29 2K SORTCAT .COM A CATALOG SORTING PROGRAM-THE COMMAND FILE 001.30 16K SQ .COM A FILE SQUEEZER-SAVES ABOUT 40% OF THE KBYTES 001.31 28K SQUEEZE .DOC DOCUMENTATION FOR THE SQUEEZE UTILITY 001.32 16K SQUEEZE .DQC SAME AS ABOVE BUT IN A !#6*'%M :#    !#55!(%q:(% :#O>H2)%yQ !(%6 !*%6:)%!*%n *(%M !*%4V !+%q:+% ~ >:+% :+% H:+% H!,%q*,%Mo ڻ ^+ :,%@2,%*,%M+  ͟  ͟ !.%p+q*-% !0%p+q */%DM !2%p+q *1%DM !4%p+q*3% !6%p+q*5%:! %6O!"$%@!8%p+q*7%!:%p+q*9%2#!<%p+q*;%2#!>%p+q*=%!@%p+q*?%!B%p+q*A%!#6# >>!D%p+q*C%!F%p+q*E%!K%r+s+p+q+q:G%=2G%+*H%*J% w*H%#"H%*J%#"J%!M%p+q###*L%gR !O%p+q*N%f!P%q*P%&-:u#Ҁ#^͵  !R%p+q*Q%DM s+#K͍:#ҹ#!T%p+qͬ*S%DM^!V%p+q*U%DMͺͬ*U%DM͑!X%p+q*W%DMͺͬ*W%2#!\%s+q+p+q:\%=2\%2*Y%:[%w*Y%#"Y%!`%r+s+p+q *]%*_%DM"͹!a%6:#!a%ڵ*N#*#DM\q2#ʤ>!#ґ͟*N#*#6:#2a%î*N#"N#!a%4`͹!"N#:s#>#N#!X*N#*#~2b%*N##"N#:b%:t#):s#SQUEEZED CONDITION 001.33 10K TYPESQ .COM TYPING A SQUEEZED ASCII FILE W/O UNSQUEEZING 001.34 12K USQ .COM THE UNSQUEEZE COMMAND FILE 001.35 2K VERIFY .COM CP/M 3.0 FIND.BAD-LOCKS OUT BAD SECTORS OF DISK 001.36 2K VERIFY .DOC DOCUMENTATION FOR ABOVE PROGRAM 001.37 12K XFERTIME.COM GIVES TIME TO TRANSFER FILES VIA MODEM  001.23 8K NSWEEP .COM NEW SWEEP UTILITY COMMAND FILE 001.24 20K PACMAN .COM GRAPHICS GAME 001.25 2K PHONE .001 A PHONE DIRECTORY FOR USE WITH A MODEM PROGRAM 001.26 14K RCPMDATA.18 REMOTE CP/M BULLETIN BOARD USE DOCUMENTATION 001.27 10K SMICRO .COM A SMART MODEM PROGRAM-THE COMMAND FILE 001.28 26K SMODEM37.DOC DOCUMENTION FOR SMART MODEM VERSION 37 PROGRAM 001.29 2K SORTCAT .COM A CATALOG SORTING PROGRAM-THE COMMAND FILE 001.30 16K SQ .COM A FILE SQUEEZER-SAVES ABOUT 40% OF THE KBYTES 001.31 28K SQUEEZE .DOC DOCUMENTATION FOR THE SQUEEZE UTILITY 001.32 16K SQUEEZE .DQC SAME AS ABOVE BUT IN A OCUMENTATION FOR THE FIND CATALOG UTILITY 001.17 6K LDIR .COM LIBRARY DIRECTORY COMMAND FILE 001.18 2K LOCATE .COM CATALOG FILE LOCATER-WILD CARDS ALLOWED 001.19 18K LU .COM LIBRARY UTILITY-THE COMMAND FILE 001.20 12K M7KP-1 .ASM SRC FOR MODEM 7XX-KAYPRO2 OVERLAY 001.21 2K MAST .CAT THE MASTER CATALOG FILE 001.22 18K MDM711 .COM MODEM 711 COMMAND FILE 001.23 8K NSWEEP .COM NEW SWEEP UTILITY COMMAND FILE 001.24 20K PACMAN .COM GRAPHICS GAME 001.25 2K PHONE .001 A PHONE DIRECTORY FOR USE WITH A MODEM PROGRAM 001.26 14K RCPMDATA.18 REMOTE CP/M BULLETIN BOARD USE DOCUMENTATION 001.27 10K SMICRO .COM A SMART MODEM PROGRAM-THE COMMAND FILE 001.28 26K SMODEM37.DOC DOCUMENTION FOR SMART MODEM VERSION 37 PROGRAM 001.29 2K SORTCAT .COM A CATALOG SORTING PROGRAM-THE COMMAND FILE 001.30 16K SQ .COM A FILE SQUEEZER-SAVES ABOUT 40% OF THE KBYTES 001.31 28K SQUEEZE .DOC DOCUMENTATION FOR THE SQUEEZE UTILITY 001.32 16K SQUEEZE .DQC SAME AS ABOVE BUT IN A ͻ:s#)2%)*%M%%!=*%% :%w:% VL2%:% :z#/HH/Wҥ:% ”!%6 ͦ!%6 :%Ÿͦx* %&$ :%w: %<2 %d!%s+q*%"%!%6:%/%K"!H8*%#"%"%:%2%*%&$ *%% !%:%2%/H5!%4*%#"%:%I*%+"%ͅ:%! %6x: %2 %* %l!%p+q*%DMM2%: %ڍ! %6O@ *% ~ :#/Hҷ *%#*%#~ *%##:%*#$*!$DM!z#6:%!"#$*%"%*%"%*%+% ~2% %:#" ,*#$#"#$*%"%%%!v:% Z*#$#"#$ͭZ*%% ~2%O͟ *%"%2*!%&"%*%"%*%"%̀w͑:%2%!%6w:%2%K"%!>%!H͇!%6>!%ͭ@>!!%4!%6!"%ͻ, M"%!& )  !%6 -!%6 -:#>%!H] @!|#6*%M͌2%*%MP2%:%/!}#+w!|#6L2%^ !%q!%:%:#H: %H!%q*%M͑  *%M V ; Oͤ2% :%N à:%Y > > Put the following files on this master disk: MAST.CAT SORTCAT.COM CATALOG.COM LOCATE.COM -anyname.nnn -----USING THE CATALOGING SYSTEM----- WRITTEN BY: Lewis Moseley, Jr. 2576 Glendale Court, N.E. Conyers, Georgia 30208 GENERAL INFORMATION ------- ----------- Severa year ago War Christense o Chicag wrot an place i th publi domai se o program whic provide comprehensiv diskett softwar catalogin system Th concep o th syste wa tha eac diskett shoul contai specia fil whic identifie th diskett b nam an number labl fil o fla file i yo will Al o th labl informatio wa containe i th fil nam an fil type th content o th fil wer irrelevant an eve a empt fil woul suffice Th syste program woul rea th dis director an updat specia catalo fil (name MAST VOLUME 001 DESCRIPTION: E BASIC, GAMES, MODEM & UTILITIES NUMBER SIZE NAME COMMENTS 001.1 4K -EBMMUG .001 DISK NAME & CONTENTS OF EBMMUG.001 (FEB 2,'84) 001.2 22K ADVENTUR.COM THE GAME OF ADVENTURE 001.3 42K ADVENTUR.WRK THE WORKING FILE FOR ADVENTURE 001.4 2K CAT .SUB THE CATALOG SUBMIT FILE 001.5 4K CATALOG .COM A DISK CATALOGING UTILITY-THE COMMAND FILE 001.6 12K CATALOG .DOC DOCUMENTATION FOR THE CATALOG PROGRAM 001.7 4K COPYFILE.COM A DISK COPYING UTILITY-THE COMMAND FILE 001.8 2K CRCK .COM CYCLIC REDUNDANCY CHECK-A FILE VERIFIER UTILITY 001.9 2K DISPLAY .COM DISPLAY AN ASCII FILE W/COMMANDS SIMILIAR TO ED 001.10 4K DISPLAY .DOC DOCUMENTATION FOR ABOVE PROGRAM 001.11 12K EBASIC .COM E BASIC PROGRAM-THE COMMAND FILE 001.12 12K EBASIC .HLP THE HELP FILE FOR E BASIC 001.13 2K EBMDIR01.TXT DIRECTORY OF THIS DISK 001.14 12K ERUN .COM E BASIC RUN COMMAND FILE 001.15 2K FIND .COM A CATALOG FILE LOCATER 001.16 2K FIND .DOC D.CAT base o th curren content o th diskette addin th name o file whic ha bee place o th diskett sinc th las updat an deletin thos whic wer n longe o th diskette Ther i provisio t allo commo file whic ar normall o al o mos o th disk t b omitte fro MAST.CA t sav tim an space Thes are called IGNORE files. Anothe specia progra woul searc MAST.CAԠ an mak report base o severa criteria whic disk contai specifie files whic file ar o specifie disks etc Th program whic mak u Ward' origina syste ar know a FMAP QCAT UCAT an CAT The ma b foun o CP/ User' Grou Dis 25 an a update versio o CPMU 40 Fo mor informatio abou th basi system se th fil CATALOG.DO o thes disks. GETTING STARTED: I yo ar alread usin Ward' program fro th UǠ disks yo wil fin tha CATALOG i full compatible wit you existinAT creat a initia MAST.CA containin dumm ignor lis like: (DUMMY.FIL) T minimize th possibilit o dis erro bombin MAST.CA an makin yo g t th troubl o recatalogin al o you disks backu i created Specifically a MAST.CAԠ i processed temporar maste fil i written Whe thi temporar fil i complet an ha bee sucessfull closed th ol MAST.BA i erased th ol MAST.CA i rename MAST.BAK an th temporar fil i rename MAST.CAT On resul o thi i tha th CATALO SYSTE DIS mus hav enoug fre spac fo THRE copie o MAST.CAT MAST.CAT MAST.BAK an th temporar file USING CATALOG: Basically CATALOG i CP/ transien progra ( .CO file an i execute b typin it' name Th disk t b cataloge ar inserte on a time an MAST.CA i automaticall update base o th curren content o tha disk Addition an deletion ar sh MAST.CAT an ca b use i plac o FMAP/QCA an UCA withou makin an changes If however yo ar jus gettin starte with the catalog system, there is some preparation to do. A i th cas wit Ward' programs th fla fil mus firs b pu o al o you disks Th fil nam o th fla fil mus star wit th characte "- t identif i a th fla file Fo reason whic wil discus late (i th sectio o SORTCAT) us onl thre characte dis I whic plac i th堠 fil typ o th fla fil name Fo eas visua identification writ thi sam numbe wit bol Magi Marke o th 2 squar labl i th uppe lef han corne o th diskette yo ca se thi fro acros th roo i necessary Colo code ca als b use i desired. Wheneve yo pu ne dis int servic yo mus plac -anyname.nn entr i th director wher .NN i th disk` uniqu seria number Thow o th consol a MAST.CA i updated. CATALOG wa designe t ru adequatel o singl driv system Brin u th progra b typin "CATALOG o "CATALOG A:" Th progra wil lea yo throug th step o cataloging Yo wil b aske t alternatel inser th DIS T B CATALOGE an the reinser th CATALO SYSTE DISK a needed Afte eac dis i done yo wil b aske i yo hav anothe dis t catalog I so th proces i repeated. I yo hav tw o mor drives however lif i littl easier Brin u th progra b typing fo example "CATALOG B: t tel CATALOG tha ther ar tw drives Leav th CATALO SYSTE DIS i driv A an D NO REMOV I unti th catalogin proces i complete Yo wil b aske t inser th DIS T B CATALOGE i driv B: Again th proces ca b repeate fo additiona disk i necessary I yo hav mor tha tw drives an especiall i yo hav mixtur o 5  easies wa t plac a entr i th director wit dat associate wit i i t typ堠 E -ANYNAME.NNΠthe whe NE FIL show o scree typ contro C Thi wil leav th entr i th catalo bu wil no tak an dis space The typ RE -ANYNAME.NNN=-ANYNAME.$$$. Yo mus als us you norma edito t creat fil name MAST.CAԠ an plac i i th lis o file t IGNORE ie t leav ou o MAST.CAԠ eve i the ar o th disks Fo example mos disk woul hav STAT.CO an PIP.COM an perhap you edito an director utilit suc a XDIR.COM Th file t b ignore shoul b liste on pe line wit th firs nam preceede b "( an th las nam followe b ")" IE th lis i enclose i parentheses Fo th file note above th initia MAST.CA loo lik this: (STAT.COM PIP.COM ED.COM XDIR.COM) Ther mus b a leas ON nam i th ignor list I yo wan al file t b i MAST.Can 8 drives yo ca specif an driv fo th DIS T B CATALOGED ie "CATALOG D:" Not tha yo canno catalo th CATALO SYSTE DIS itsel i thi manner thi shoul b don separatel b "CATALOG A:". Th easies wa t lear t us CATALOG i t tr it Us th 'LOCATE comman t sca th catalo a yo us 'DIR t sca th director o th curren disk Th operand o 'LOCATE ar jus lik 'DIR excep tha ther i secon filename.typ - namel th disk' nam an serial# N-O-T- tha CATALOǠ delete th leadin "- whe i place th dis nam i th director Therefor yo don' us th '- whe askin fo particula disk. Examples of 'LOCATE' command requests: LOCATE lists entire catalog LOCATE *.* *.002 lists entries for disk 002 LOCATE *.asm lists all asm files LOCATE A*.* lists all files starting with 'A' LOCATE *.BAS WORK.* lists all 'BAS' files ly us thi are t hol thre characte diskett numbe o dis ID Fo archiv diskettes i i simpl digi number Fo workin disks mos o whic ar flippies i i usuall digi numbe wit sid specifier ie 12A. SORTCAT read th entir MAST.CAT an make tabl o fil names fil types an dis IDs Thi tabl i sorte alphabetically an a outpu fil i writte a listin image Th listin i formatte on fil nam pe line followe b th ID o al disk tha contai tha file Th numbe o dis ID pe lin i a assembl tim parameter PIP.CO o pretty- printe progra i use t prin ou th outpu file Fo example shor SORTCAT listin woul loo lik this: ASM .COM - 012 037 12A 23B EDIT .COM - 019 127 31A CATALOG .COM - 20A CATALOG .DOC - 01A ZSID .COM - 017 SORTCAT i ru a CP/ .CO file I brough u b typin "SORTCAT" th outpu fion any disk with name 'WORK' (any serial) Note that what you type following the LOCATE command appears as the title of the resultant listing. This is particularly useful for keeping hard copy listings of your catalog, such as by typing: LOCATE *.* *.* AS OF 02/17/78 this will result in the title: FILES: *.* *.* AS OF 12/17/77 appearing on each page of the catalog listing. 4) If you want to erase something from MAST.CAT you do so by erasing the file from the diskette it is on, then cataloging that disk. If you crash a disk and want to erase all it's entries from the catalog, you have to edit a dummy 'NAMES.SUB' with just the disk name in it, then execute 'CATALOG' which will be faked into thinking you are cataloging an empty disk. This will cause all entries for the disk to be erased. EXAMPLE: Suppose disk '-WORK.023' crashed, and you want to delete all references to it from MAST.CAT. (you might first want to l i writte usin th defaul fil nam "DISKETTE.NDX" Yo hav th option however o specifyin th nam t b use o th outpu file Fo example "SORTCAT LEWIS.NXD" names the output file "LEWIS.NDX". LE DWARF IN THE ROOM WITH YOU!$ONE SHARP NASTY KNIFE IS THROWN AT YOU!$NONE OF THEM HIT YOU!$ONE OF THEM GETS YOU!$A HOLLOW VOICE SAYS "PLUGH".$THERE IS NO WAY TO GO IN THAT DIRECTION.$I AM UNSURE HOW YOU ARE FACING. USE COMPASS POINTS OR NEARBY OBJECTS.$I DON'T KNOW IN FROM OUT HERE. USE COMPASS POINTS OR NAME SOMETHING IN THE GENERAL DIRECTION YOU WANT TO GO.$I DON'T KNOW HOW TO APPLY THAT WORD HERE.$I DON'T UNDERSTAND THAT!$I'M GAME. WOULD YOU CARE TO EXPLAIN HOW?$SORRY, BUT I AM NOT ALLOWED TO GIVE MORE DETAIL. I WILL REPEAT THE LONG DESCRIPTION OF YOUR LOCATION.$IT IS NOW PITCH DARK. IF YOU PROCEED YOU WILL LIKELY FALL INTO A PIT.$IF YOU PREFER, SIMPLY TYPE W RATHER THAN WEST.$ARE YOU TRYING TO CATCH THE BIRD?$THE BIRD IS FRIGHTENED RIGHT NOW ANdo 'LOCATE *.* *.023 to see what was lost). Edit NAMES.SUB and place the following single line in it: -WORK.023 then run CATALOG. This will result in all files referring to -WORK.023 being erased. SORTCAT -------- Th report-generatin progra o Ward' syste i calle CAT.COM I allow yo t searc MAST.CA fo ambiguou fil name o ambiguou dis names an othe helpfu things On thin tha i doe no d conveniently however i mak a eas t us har cop catalo o al file an al diskettes Th progra wil mak th printou wit n trouble bu i print onl tw file pe line an th listin i awkwar t scan An so SORTCAT wa born. SORTCAT give mor human-usabl ful repor fro you MAST.CAT a th expens o som o th detail Specifically SORTCAT assume tha onl th file-typ portio o th nam o th fla fil i significant Personalf a single drive PMC-101 to copy a single file from one diskette to another diskette. The user is prompted for a file NAME, the SOURCE diskette and the DESTINATION diskette. As much of the file as can fit into RAM is read from the SOURCE and written to the DESTINATION diskette, which should have been previously formatted. If the file is larger than available RAM the prompts repeat until the entire file is copied. The maximum file size that can be copied is 8 Megabytes. If the DESTINATION diskette already contains a file by the same name the user is given the option of aborting or erasing the existing copy of the file.$$YOU'RE IN SLAB ROOM.$YOU'RE AT JUNCTION OF THREE SECRET CANYONS.$YOU'RE IN SECRET E/W CANYON ABOVE TIGHT CANYON.$YOU'RE IN NARROW CORRIDOR.$YOU'RE AT STEEP INCLINE ABOVE LARGE ROOM.$YOU'RE IN GIANT ROOM.$YOU'RE IN CAVERN WITH WATERFALL.$YOU'RE IN SOFT ROO}COPYFIL Copyright (C), 1983 Personal Micro Computers, Inc. 475 Ellis St. Mountain View, CA 94304 version 3.0 4 April 19831O7<Vù͇7ͭA7͢>2Ò͇ͭA7]7q7 1" ͑͑>͖-͑>͖1x1 x #:*"*R"Ri C*[R*"*["*R*"*[R1*"!"͈ͥ :A1*"!"͈͸»* "! >w#(7)͑>͖!1~_Y( ѷ»¶!![s#rS*R!" *"!"S *[~#SɃ_[*R3:L͑k͑͑k>Ö͑k>Öj͑k>ÖÑ?͑!q#p#s#r#| !/wͣ  !` }7͑k Insert SOURCE diskette into A: drive$ Insert DESTINATION diskette into A: drive$ Verifying............$ Insert SYSTEM diskette into A: drive$ Enter name of file to copy: $ Press to continue.$ ***** File is too large to transfer! ***** $ ***** File name is incorrect! ***** $ ***** Read error! ***** $ ***** Write error! ***** $ ***** Cannot determine file length! ***** $ ***** Open error! ***** $ ***** Close error! ***** $ ***** Cannot ERASE file! ***** $ Do you want to erase it (Y/N)?$ ***** File is good! ***** $ ***** Bad file, please copy over again! ***** $ SINGLE DRIVE SINGLE FILE COPY UTILITY This utility permits the user o8 ;b͡zFEnvzÕùEK]0 2͵ ^#V#*~#fo^#*~#fo^#V#*n^#*n^#V# ~#fo^#& ~#fo!+!#!+!#!+!+}|z{|}|z7||7zZZ)|/g}/o#|͉k|/g}/o#ɯ2cZZk:c|/g}/o#|/g}/o#:c<2cqDM!xxGyO҃)v|͔`i|)Öxڷz/W{/_ѯzW{_=yOxGæ2cZZ͉M|}ȯ|g}o)|/g}/o#z/W{/_!9~#fo! ! ! ! ! ! K!9~#A!9"q**q"e!c*"_!"a!Y"C>2Y>2\>2[2^>2m2n>2l>2p!";!"?!@"=!"A !F#x:~#!e2d~# :" 2d +}|~#:G:dx."2d+w# +6# !6#@**|^+R2i2:*e!#"0!#"2!>ڋo&͕=|  v~2ʷ͹56!+W ?_!~7z?ͤ:>͛@w#2!N!. s->2NCan't close library: %s Old library: %s closed. !9DM ͐q|u ! ͐ͦ|ڃ ͐!G͐!NTE!.͐ͦ|ұ !]!NjE!!Nͻ?"N#| !N!bs-.!N@"N#| !N!w!U-!N!͋-+| *N͏| .͐!>2N*N*N!s- Bad library name: %s.LBROld library: %s has New library: %s. Allow how many entries? %d Can't create library: %s%d entries, %d free. !9DM*N|͐!_s-V͐q|:! 6#6! ^#Vr+s͐`iͥ#|7`i V͐!|s-͐g|a!s-V!͐ͻ?"N#|ƒ!s-V!*N *Ns#r*NW@*N*Nʹ@s#r*N@!!*NW@*N~#fo*N*Nt"#|*NA!s-V͐*N#*N6!!*NA*N*N~#fo"N*N+"N>2N*NA!9No room for %s in directory Adding: %s Name already in library File not found Can't add. Disk space too tight. !9DM͐*`i7A!$ s`in!% s! n} .ww#w#w#w*>?=͉;w#͉2> w#=ͤͲd 2l&0OxGͲg/ʃPxY͛.7:77!a{  ʥ ʥ0:?ŷO !y$ 7o&))T])))!y 2k_ :k"$"$"$"""W"("X"X"""$"%"&""Y"Y""""+"Z"Z""`"Z""(")"*"""""[("[*"`,"`[""""""""   !9DM;$͐ ! %*F}*F}*F&|g}o}2F! ! ! !! !U-! ͐*>^!% n}#!% n&++!v?!% s ! v?!% n&!v?!$ n&! v?!&9!9DM`i6͐! *N "N*N*N! s#r! ^#Vr+sz`i*N|!&*N "Nà!&!9!9DM͐*`i7A! ͐(! RA!$9!9DM`i6 #6`i^#Vr+szʂ͐n͐ nѯgW! s#rzi͐ n}?i͐È! ^#Vr+s! ^#Vr+s(!È!9!9DM͐g}¸͐!s-͐q|! 6! n&͐`iq#|`i͑! 6͐!=s-*N6>2N!9Can't delete %s; not in library Deleting: %s !9DM͐g}r͐!s-×͐q|ʵ! 6! n&͐`iq#|ʲ`iK! 6Æ×͐!s-!͐ͻ?"N#|*N||*NA!s-×*NA͐@"N#|!s-×!!*NW@!*N ~#fo*NW@*N~#fo*N*Nt"#|~*NA!s-×*N͸?#|—!+s-×!9Can't extract %s; not in library Extracting: %s Skipped: Output is read-only. Skipped: Can't v?|g}o| ! !) "n{2N{2N!"N!"N͐ͯ`is{[ !͇?"N>?2N!! v?}2N!v?}2N! 6#6͐͐ڼ `in}q ! s#r͐ ! &#|q ! ~#fo͐)~#foͯ |ʛ ! ~#fo͐)~#fo#n}2N*N}A( CP DV EV OY U\ Lz Xʃ Rʊ > ͜ *N|6 c !> s-*N&!P s-Ó Ó ͜ c *F}o *F}o c !g s-> ͜ BÓ `i6Ó ͜ ͡Ó >?2Nc *N}Aʻ D E O U+ G ! ~#fo͐)~#foc ! ~#fo͐)~#fo͑c ! ~#fo͐)~#foKc ! ~#fo͐)~#foI c ! ~#fo͐)~#foc ! ~#fo͐)~#fo>c ! ^#Vr+sÆ !͇?+! s-*N&!v?*N&! v?)!9Copyright (c) 1983 by Gary P. Novosielski83-01-30Library Utility Ver:%d.%02d %s %s Requires CP/M 2.0 or betterLIBRARYDirectory Full! Invalid operator: -%c Directed I/O is active. Highest memory used: %04x *N}­ *nI !9DM͐n}-͝ ͐@E++|͝&*N} *N͸?#| !N! create output file I/O error. Disk Full? Error closing output. !9DM*Nʹ@! s#r*N@!N!s-*N"N*N~#fo! s#r!s-! s#r! s#r*N*N! s#r! ^#Vr+szD*N "Nn}6*N`i͙#*N~#fo*N ~#fo`i!s-! ^#Vr+s! ~#fo*N~#fos#rA! ^#Vr+sú*N*N͐! ^#Vr+s͐͐͐͐!s-!9! ^#Vr+sÓ!9 Name Index Size Library: %s DIRECTORY %4u %-8s %5u %4u Active sectors %12u Unused %12u Total %12u Active entries: %u, Deleted: %u, Free: %u, Total: %u. !9DM͐!Vs-Unexpected input: %s !9DM!! s#r͐͐~#foқ!&! ^#Vr+s͐~#fo͇?`is#rz!&*N|͐"N͐͐s#r!&!9!l}e!!*NW@!*N*NͣA+|j!;*N|j*N ~#fo|j*N~#fo|r!H*N~#fo*N~#fokl}¢e*N~#fo+*N*NͣA*N~#fo+!U*Nʹ@"N !*N~#fo#! !:"s-! *N "N͐RA*N *N@s#r!͐ ~#fo͐W@͐~#fo͐*Nt"#|‡!!G"! ^#Vr+s\ >2N*N͸?#|¸!!N!c"{2N{2N͐*VB͐C͐*͙#͐A͐*͐(!9DM! 6! n&|#! n&`i! ~#fo! 4n&n&|g}osç#! s! s! s! ! !$`i0*N}Dy$Ly$Ry$'$! ! ͐ n}I$͐ n&@U$!v?A!! v?!$͐0Ó$! ! !$͐0͐Ú$!9%8s %3s %d/%c:%s.%s%s.%s!9DM!$`is#r͐^#Vr+sz$!$s-!v?!9No prk"N"N*N"N*Nn}4*N|4*N+"N*N "N>2N no directorya bad directory!pa directory too big for memory!9DM͐|Ҽ*NA!NVB!͐*Nͩ*N͐! s#r! ^#Vr+s! ?l} !s-!õ*N6!*N#*N w#w*N͐͐|ͣs#r))"N"N*N+"N`is#r*N"N`i^#Vr+szʌ*N "N6n>2N*N~#fo"N!N!s-!õ!9Illegal sizeToo many. Try again. .Created %s with *N}!!*NW@*N~#fo*N*ǸB*N~#foL!N!S>2N Error updating directory: %s!9DM!*͐ͦ|ͯҢ!?͐ͦ|ͯ!9DM`iw#w͐n}! ^#Vr+sn! n}͐`i^#Vr+sô!!9!9DM͐ ͐͐͐!U-*N&!v?*N&! v?!gVB>2F)!q!U-!v?A:$$$.SUB...ABORTED!9DM͐C 5C|g}o&!9DM!!v?!! v?!% s͐.`i7A! v?!& w#w͐&͐0҉`iogram in memory!9DM͐@E! s#r͐ 6#6`iw#w͐͐%͐n&͇E|\%%! ^#Vr+s͐s#r͐ ^#Vr+s͐͐%͐͐n&͚Es͇E|ʰ%%`i^#Vr+s! ^#Vr+s}%͐6`i^#Vr+s! ^#Vr+s8%͐ ~#fo+%!9!9DM*s*s*s! ~#fo͐ ~#fo)* s#r*6**s#r! 6#6`i6#6͐͐ ~#foҏ)w}ʌ&Ï)! ~#fo͐)~#fon}<ʹ&|ʂ'+'>(x)! ~#fo͐)~#fo#n}&0(*! ~#fo͐)~#fo#A0#|<'!!)́0!! ~#fo͐)~#fo#́0!!)́0ͫC*6!)! ~#fo͐)~#foͬE|'*n&|g}os(*4! ~#fo͐)~#fo#* s#r! ~#fo͐)~#fo#n}'! ~#fo͐)!)s#r! ~#fo͐)* s#r(*n&|g}os! ~#fo͐)~#fo#n}@(!!)́0ͫC! ~#fo͐)~#fo#VB*! ~#fo͐)~#fo#0#|¿(!!)́0!! ~#fo͐)~#fo#́0!!)́0ͫC*4w}O)͐! s#r͐͐ ~#fo))! ~#fo͐)&|!!v?!$ s!$ n&|h!!!!$ ng ?|h!v?!$ s!$ n&|{É!& ^#Vr+s!$ n&|ҵ!$ ng ?͐,͙#!% n&! v?!$ n&|ͩ!!!(9LBR!9DM! ^#Vr+szb! ^#Vr+sn! nѯgW|g}o! ^#Vr+sn! nѯgW|g}o`is#rz_͐h!h!9!9DM!`is#r!! s#r!3 n}ʺ͐*Ns#r͐*N*Ns#r!! v?!) s͐1! 7A! v?! n!* s! 6͐^#Vr+szt! ͐^#V! r+s|q! ! ͐~#foRA!* n! s! ͐/͙#!) n&! v?!Ô͐6#6!) n&! v?!Ô!+9!J9DM`i!* s#r*N}*nI !N! "s-*N! s#r!N͐*TE!! *N*Nͳ->2NB"N!"!( s#r͐(VB͐(I !"N*N"N!͐*ͻ?! s#r! 6#6! 6#6͐͐ҕ!͐͐ʾ ͐! s#r!͐͐W@!!, ͐ͣA͐!, ! k! s#r͐n} !)"s-Õ!͐! ! ~#fo͐#)~#fos#r! ^#Vr+s(͐ ^#Vr+s`i^#Vr+s* ^#Vr+su)͐ ͐s#r! ~#fo͐ ~#fo)w#wÃ)! ^#Vr+s`i^#Vr+sl&!9Can't open 5!!h9DM! ^#Vr+s~#fo! s#r͐! s#r! ^#Vr+sn`is{\9`in}%-9! ! s#r! 6#6! s! s! s͐n}-5! ^#Vr+s! 4͐n}05! 4͐n&E}5! O>6!! s#r! ^#Vr+sn`is{.H6! O>! s#r! 4! ^#Vr+sn`is`in&͚E}Dt6Uʰ6Xʹ6O6C7S978͐~#fo|Ұ6! ^#Vr+s6-͐͐~#fos#r! ^#Vr+s! 6 6! 66! 6! ~#fo! n&! ^#Vr+s~#fo! ͭ=ѯgs#rñ7! ^#Vr+s! ^#Vr+s~#fos! ^#Vr+sñ7! n}L7! 6#6! ^#Vr+s~#fo! s#r͐n}ʱ7͐|ʱ7! ^#Vr+s! ^#Vr+sns! ^#Vr+s! ^#Vr+sg7͐6! ! s#r! n}8͐n}-8͐͐! ^#Vr+sn&!8!9~#fo#|8!\9! n}k8! ^#Vr+s!|k8͐͐! n}H8!0K8! !Y8!9~#fo#|h8!\98͐n}ʯ8͐͐! ^#Vr+sn&!8!9~#fo#|¬8!\9k8! n}8! ^#Vr+s!|8͐͐! !8!9~#fo#|8!\9ù8*9͐-! !v?! n&!v?͐! ns!9File output error; disk full? !9DM͐!5! @5!9DM!;,! @5!y9DM`iC! `ie9ê-!9!9DM͐͐k! s#r͉͐! s#r͐|/͐͐k! s#r͐͐! s#r͐͐! s#r͐ `is#r͐͐.͐͐ ! s#r͐|.͐͐ ͐͐͐!.!9~#fo|ҙ..͐ ͐͐͐͐<=! ~#fo͐s#rW.`i~#fo͐s#r1.! ~#fo͉s#r-!9!9DM`i6#6͐ ! s#r͐ 3! s#r!|M/͐#|S/!/! ^#Vr+s͐s{ /͐͐ #Қ/͐++n} š/! ^#Vr+s6 /`i^#Vr+sz/͐ 3! s#rz/͐|S/͐|/͐ ͓͐4͐6͐ /!9!9DM! ͐e9!9DM! !=! @5͐6!9DM͐!͐ͻ?s#rzk0!͐##w#w͐~#fo!9DM! ^#Vr+sn`is{0`in} ·0͐! `1͐`in&`1#|0!0É0!0!9!9DM͐͐@s#r͐`in&!9!9~#fo#|*9!\9Y9͐͐`in&!J9!9~#fo#|Y9!\9o5!9!9DM! ^#Vr+s~#fo! s#r͐! s#r! w#w! ͬ>! s{,=͐n},=! ^#Vr+s! n}%9! n͐n}9͐ 3=! ^#Vr+sÜ9! 6 `is! s͐n}*:`i4! ^#Vr+s͐n&E}<:! O>?:!! s! ^#Vr+sn&͚E}Xʁ:O:D:U ;Rʤ;Sʩ;Cʡ<}0:͐#n&͚E}X:! ~#fo##s#r! n&++s ;! 6 ;! ͬ>}- ;! ~5o} ;! 4! ^#Vr+s! w#w! n&! ͬ>&>#|;;͐ 3=! n&! ^#Vr+sn&>! s{ʖ;! ~5o}ʖ;͐ ! nѯg?! nѯg! s#r;;! ^#Vr+s}¾;͐ 3=͐ ~#fo! s#r! ~5o}y<͐n! s{yƒ1>ʪ1>1>ʸ1>›1>1>§1>1 2! n&;,! n&!v?! n&!v?! n} 1! !v?! n&!v?͐##^#Vr+s|h2!͐͐~#fòB|G2!͐##6#6͐͐s#r͐^#Vr+s! ns&!9DM͐ڡ2!þ3͐##~#fo|º2!þ3͐##~#fo`is#r͐͐͐~#fòB͐3!þ3͐+?`is#r͐##~#fo|ʗ3!͐͐͐RA͐##~#fo͐s#r͐~#fo͐s#r!!͐~#foW@þ3͐##6#6͐͐s#r!þ3!9!9DM͐|3*Ê4͐+++|3!v?Ê4͐##^#Vr+s|s4!͐͐~#foͣA`is#r!|F4͐##^#Vr+sÊ4͐##͐?+s#r͐͐s#r͐^#Vr+sn&Ê4!9!9DM͐|²4! n&+͐4͐##~#fo|4!͐^#Vr+s! ns͐##^#Vr+s!! n}=͐ =͐ s#r! ^#Vr+sÜ9͐ 3=!9!9DM̓`i̓RA̓̓̓ RA̓̓ `iRA!9!9DM͐^#Vr+s͐s!9DM͐͐ =͐^#Vr+s͐=͐0=͐7s!&F>͐ ͐͐ ͉͐ͭ=`is͐ ͐͐ )͐ͭ=`in&#&F>!9!9DM`iw#w͐~#fon&E}ʜ>͐ ?͐^#Vr+snѯg`is#r]>͐ã>!9!9DM͐~#fon`is͇E|>͐^#Vr+sô>`in&>!9!9DM! n&͚E! sE|$?! n&sL?! n&E}G?! n&sL?!! n! n&+k?!t?! n&7:KO*M *_ڭ?+*a|/g}/o#9ͱ?ҭ?#"_z{#7,?> 2c*K/:l2> @:c):M@=@=> @:lw:co&552:7*KVB:l2\5I@> 2:!*Kͻ?7:K,>m@2:ͬ@*M:Oʠ@=ƒ@à@:K)~2#5ͬ@*M!s#r!^#V7:K,@>2::K)~2#!~#fo5 ,@>2:!~#*K͞+%"i'+FÎr ͖ 8{ Ăw#w#w^#V#*~#fo^#*~#fo^#V#*n^#*n^#V# ~#fo^#& ~#fo!+!#!+!#!+!+}|z{|}|z7||7zZZ)|/g}/o#|͉k|/g}/o#ɯ2qZZk:q|/g}/o#|/g}/o#:q<2qqDM!xxGyO҃)v|͔`i|)Öxڷz/W{/_ѯzW{_=yOxGæ2qZZ͉M|}ȯ|g}o)|/g}/o#z/W{/_!9~#fo! ! ! ! ! ! !9~#A"s!`*"!"!Y">2>2>22!"!"!@"!" ʞ!F#x±~#±!b2r~# "2r+}|~#G:rx"2r+w# +6#!6#2w2x*s!>r<o&F=-` r'~h6!+`W?_!~7z?` :>ª@w#G.¶ww#?*>?w#> w#.7:77fo )A>2:6!7*M*K:OOz2Aq#*A7*M*K/:lo&7*O|DM*M*KځA>PBz>PBz2:K,"e!"g*O|*gA5*M*e!ѷB2:BB!A*gA*O+"O*M"M*g#"g*e! N#Fp+qxA##6>2:A2: !\/:l25!yB> 2:+7:K)V>Cz> Cz2:K,"e!"g*O|B*g5*M"M*e"*gB2:öB#"g*O+"O*e! N#Fp+qx«B##6>2:óB2: ).C>2: , n&7*K!vC/:l2*M!C/vC5!oC> 2:+Q:zJEËC–EQyQxQRQ* 7*M^#V#z¶Cx2C+V+^+C*KD:Co&9! !j96  #F#xD~#D7*K!9/:l2 6C#6O#6M5LD*M|bDM!\&tD!\&*O|tD!O!l&!9~#foʤD> + E#~’D##ÆDxSDD GDEXECL: Command line overflow $!pE!*w#D*:1D*E!!a{   `OE!y6$ -7rBo&))T])))!y!9DM! ! z͐|!͞!͞!͞#!! ͞! 6! n͐Ҷ! ~#fo! n&)~#fo`i; >q*>Q>a6>ʀ>xB>ʊ>N>ʍÍ`i_>d>s>ap>v}}`i^ î`i^ îî! ~#fo! n&)~#fo!J ͞! 4!ü!9Syntax: TYPE filname.typ ... Wild chars. (* and ?) OK, MuE!a{ ѷ!bkFE{ozg7*K*M~#^E*K7*M*K~#tE+w#{E*K!9~! -!9~o&a{_o7*K*ME#¶E!ɖg!9~!0:,!9~!A[,*e!ѷB BEYOND THEIR (OR MY!) CAPABILITIES AND SHOULD TRY A COMPLETELY DIFFERENT TACK. TO SPEED THE GAME YOU CAN SOMETIMES MOVE LONG DISTANCES WITH A SINGLE WORD. FOR EXAMPLE, "BUILDING" USUALLY GETS YOU TO THE BUILDING FROM ANYWHERE ABOVE GROUND EXCEPT WHEN LOST IN THE FOREST. ALSO, NOTE THAT CAVE PASSAGES TURN A LOT, AND THAT LEAVING A ROOM TO THE NORTH DOES NOT GUARANTEE ENTERING THE NEXT FROM THE SOUTH. GOOD LUCK!$IT MISSES!$IT GETS YOU!$OK$YOU CAN'T UNLOCK THE KEYS.$YOU HAVE CRAWLED AROUND IN SOME LITTLE HOLES AND WOUND UP BACK IN THE MAIN PASSAGE.$I DON'T KNOW WHERE THE CAVE IS, BUT HEREABOUTS NO STREAM CAN RUN ON THE SURFACE FOR LONG. I WOULD TRY THE STREAM.$I NEED MORE DETAILED INSTRUCTIONS TO DO THAT.$I CAN ONLY TELL YOU WHAT YOU SEE AS YOU M*K͞+@,>IY'+FÎr ͖ 8{ Ăw#w#w^#V#*~#fo^#*~#fo^#V#*n^#*n^#V# ~#fo^#& ~#fo!+!#!+!#!+!+}|z{|}|z7||7zZZ)|/g}/o#|͉k|/g}/o#ɯ2qZZk:q|/g}/o#|/g}/o#:q<2qqDM!xxGyO҃)v|͔`i|)Öxڷz/W{/_ѯzW{_=yOxGæ2qZZ͉M|}ȯ|g}o)|/g}/o#z/W{/_!9~#fo! ! ! ! ! ! !9~#A"s!`*"!"!Y">2>2>22!"!"!@"!" ʞ!F#x±~#±!b2r~# "2r+}|~#G:rx"2r+w# +6#!6#2w2x*s!>r<o&F=-` r'~h6!+`W?_!~7z?` :>ª@w#G.¶ww#?*>?w#> w#.7:77#|) ! ~#fo!B!-! o/ !")H!SV.! ͯ! o/! ~#fo!  ͛!_V.! ! ~#fo.#|š ! ~#fo!k!- ! }! s#rz !  ! ~#fo͘/#| ! ~#fo!!- Ý !V.! o/!  0!  o/!9 %s -> %s: Can't open %s for input pass 1 Can't create %s analyzing, squeezing, Can't open %s for input pass 2 ERROR - write failure in %s done.!9DMW! ~#fo`is#r`i~#fo#|`i6#6`i~#fok6H! s#r~#fo#|! ~#fo^#Vr+s`i~#fo|º!  6#6!  ~#fo#|C!>V.!  ~#foR!  ~#fo͉s#r! s#r! s#r! ~#fo|! ~#fok6H~#fo|! ~#fok6H##6! ^#Vr+s)! ! ~#fos#r! ^#Vr+sy! ~#fo! ! ~#fo! u*=V! #|-͑>2FY!"DY! 9*** rescaling ***, !9DM! s#r! s#r! s#r! ~#fo|! ~#fok6H~#fo! ~#fo! ~#fo! ^#Vr+s! ~#fo! ~#fok6H~#fos#r! ^#Vr+sr! ~#fo#!a{   `OE!y6$ -7rBo&))T])))!yT_ENBUILDENPHUF!!9DM! ~#fo`is#r`i~#fo#|R`i6#6`i~#fok6H! s#r~#fo#|ʄ! ~#fo^#Vr+s`i~#fo|, !  6#6!  ~#fo#|ʵ! !  ~#fo!  ~#fo͉s#r ! s#r! s#r! ~#fo|]! ~#fok6H~#fo|O! ~#fok6H##6! ^#Vr+s)! ! ~#fos#r! ^#Vr+s! ~#fo! ! ~#fo! *=V!#|ʟ>2FY!"DY! 9*** rescaling ***, *6Is[l!9DM! s#r! !9DM! ! 7 ! ~#fo! '>2.H>2+H>:2,H>2-H`i6#6`i~#fo! ~#fo ! ~#fo`i~#fo)~#fo7 `i^#Vr+s! ~#fo|*@}e! ! !-!h !-! !-!4 !-`iw#w`i~#fo|&,! s#rz¡! 6 #6`i~#fo! ! ~#fos{ `i~#fo! 6`i^#Vr+sx! n}! 7 ! n}e*!! s#r! 6! w#w! ~#fo|Ҟ! ~#fok6H~#fo! s#r! ~#fo! ~#foҐ! ~#fo|ʐ! ~#fok6H! ~#fos#r! 6! ^#Vr+s! n}Z! ~#fo| ! w#w! ~#fo| ! ~#fok6H~#fo! ~#fo͉s#r! ^#Vr+s! 9!9DM! ~#fo++`is#r`i~#fo|h! ~#fo+`i~#fo! ~#foq`i^#Vr+s1!9!9DM! ~#fo)#`is#r! ~#fo! ~#fo)~#fo! s#r`i~#fo! ~#foڰ`i~#fo! ~#fo! ~#fo`i~#fo#)~#fo! ~#fo`i~#fo)~#fo͹|`i^#Vr+s! ~#fo`i~#fo)~#fo! ~#fo͹|ʰ! ~#fo! ~#fo)! ~#fo`i~#fo)~#fos#r! ~#fo`i~#fo)! ~#fos#r! ~#fo`i~#fo! ~#foq!9!9DM! ~#fok6H~#fo! ~#fok6H~#fo!&! ~#fok6H~#fo! ~#fok6H~#fol! ~#fok6H##n! ~#fok6H##nѯgWl!&!&!9DM`i6#6! ~#fo| ! ~#fo~#fo! s#r! ~#fo! ~#fo! ^#Vr+s)~#fos#r! ~#fo+!! ~#foq! ~#fo~#fo!91.6 06-12-82File squeezer version %s by Richard Greenlaw 251 Colony Ct. Gahanna, Ohio 43230 Accepts redirection and pipes. Omit other parameters for help and prompt Parameters are from command line or one-at-a-time from standard input and are output drives and input file names. Empty to quit. *!9DM! ~#fon}-] *.H}͝}2.H% ! ~#fo#n}: ! ~#fon&%.|ʷ ! ~#fo##n}´ ! ~#fo!. V.! ~#fon}2+H% ! ~#fo!@ !-% ! ~#fo`is#r`i~#fon}+ `i~#fon}* `i~#fon}? ! ~#fo!U !-% `i^#Vr+s ! 6!+H! {.! ~#fo#n}:\ ! ~#fo##d ! ~#fo! {.! `is#r`i~#fon} `i~#fon}. `i~#fo#n}ª `i~#fo6 `i~#fo##n}q Q ! ~#fo!p !-% `i~#fo###6`i~#fo##6Q `i^#Vr+sy ! ! {.! ! ~#fo͖ !9 Output drive =%s ERROR - Ignoring %s Ambiguous name %s ignored %s ignored ( already squeezed?).QQQ!9DM! ~#fo! ~#fo!V.! ! ~#fo.#| ! ~#fo!"!- !  ! ~#fo/ s#r`i~#fok6H! s#r! ~#fo`i^#Vr+ss#r! ~#fo###! ~#fos#r! ~#fo! ~#fos#r! ~#fo! ~#fok6H~#fo! ~#fok6H~#fos#r! ~#fo##! ~#fok6H##n&! ~#fok6H##n&"s! ~#fo+!! ~#foqÄ! ~#fo~#fo"=V! 9!9DM! n! nѯgWͩL! n&Q! n&!9DM`iw#w`i~#fo|`i~#fok6Hw#w`i~#fok6H##6`i~#fok6H###6#6`i~#fok6H6#6`i^#Vr+se!9!9DM`iw#w`i~#fo|`i~#fo?V6`i^#Vr+s!9!9DM! ~#fok6H###~#fo`is#r! ~#fok6H~#fo! s#r`i~#fo#|! ~#fo#|! ~#fo?V! ~#fos! ~#fo)@W*BY! ~#fo|g}os#r! ~#fo|!!ÒÌ`i~#fo#|>*BY! ~#fo}/o|/g|g}o"BY`i~#fo! ~#fo# #|>!Ò! ~#fo#|ʌ*BY! ~#fo|g}o"BY! ~#fo! ~#fo# #|Œ!Ò!Ò!9!9DM! ~#fo!vq! ~#fo*)Hq! ~#fo#n}:! ~#fo##s#r! ~#fo! ~#fon&#Vr+s)!D ! ~#fo͐o)~#fo#s#r"! ~#fo͐o)~#fo&%|~!! ~#fo`i^#Vr+s)! ~#fo͐o)~#fos#r"! ~#fo͐o)~#fo! :!. !B s#r! ~#fo͐o)~#fo#n!/ s{:"! ~#fo͐o)~#fon!. s!0 !B s#r!. n&!9!- 6! !- n}""!%"!9!, s!, n}?"û"!- 6!, n& ?͐B#! ~#fo͐)!. B3#9s#rz’"!#!. ! ~#fo`i^#Vr+s)~#fo3 "!n n&!9!o ^#Vr+sá !o w#w͐o͐l#!q 6#6͐q͐#!n n&! ~#fo͐q)~#fo͐o)!D ~#foo%|ʳ#͐q`i^#Vr+s[#ó#͐q!s s#r͐s͐Ұ#! ~#fo͐s)! ~#fo͐s#)~#fos#r!s ^#Vr+sg# #!q ^#Vr+s"!o ^#Vr+s"͐y͐s#r͐{͐s#r!#!u9*.*!9DM! w#w`i6#6͐|s$! ~#fo͐n} ;$s$! ~#fo! ^#Vr+s! ~#fo͐ns`i^#Vr+s$! ~#fo n} ʠ$! ~#fo! ^#Vr+s6.`i6 #6͐|%! ~#fo͐n} $%! ~#fo! ^#Vr+s! ~#fo͐ns`i^#Vr! ^#Vr+sn}*=V|ͩ)!0*=V! s#r! ~#fo! ~#foq! w#w*=V`is#r! ~#fo! ~#fot`i~#fok6H###~#fo! s#r`i~#fok6H~#fo! s#r! ~#fo|ͩ! ~#fo#*=V! ~#fo! s#r! ~#fo|ͩ! ~#fo#'*=V! ~#fo! s#r! ~#fo! ~#foq! ~#fo! ~#foq! ^#Vr+s`i^#Vr+s`! 9!9DM`i6! 6*FY! nѯgW ! n}´`in&ø`in*GY! ng|g}os*GY! nѯg"GY*FY! nѯgW}2FY`in&ø*FY&|T`in*GY! ng|g}os! n*FYѯgWs*DY|~>2FY! n}v!{`in&ø! ~#fo"DY#|š!"DY*DY)@W~#fo"GY*DY?Vn}2FYÏ!9>25H!9DM*5H}ʡʮø>25H! ~#fo"1H*1H>>!>>+0>25H!!!"/H! ~#fo"3H*1Hg*/H|g*/H#"/H6*/H>v>ʅ>‚>ʍ×*3H"1H>25H*1H>25H!>25H*3H"1H>25H*/H!1!9Bug - bad state !9DM! ~#fo+2`is#r`i~#fo#|+sç$! ~#fo͐6͐%!9!9DM! ^#Vr+sn`is{`%`in}*W%`in}?]%!f%.%!f%!9!9DM! ~#fo#n}:%! ~#fo#n}:%! ~#fon&! n&%! ~#fo##s#r%!'&! ~#fo#n}:&! ~#fon&! n&&! ~#fo##s#r&!'! ^#Vr+sn`is{&`in}?g&! ^#Vr+sn`is{^&`in}.^&&d&!'&`in}*&͐n`is{ʘ&! ^#Vr+s`in}.•&Ø&p&͐n`is{&! ^#Vr+s`in}.½&&Ø&&`in! ^#Vr+sn}&&&!'&͐n}&!''!'!9!9DM*##s*#s*s! ~#fo! ~#fo~#fo)*s#r! 6#6`i6#6`i~#fo! ~#fo~#foҋ**##n}ʅ'Ë*! ~#fo`i~#fo)~#fon}<ʴ'|h(+(>(t*! ~#fo`i~#fo)~#fo#n}')*! ~#fo`i~#fo)~#fo#.#|((! ~#fo`i~#fo)~#fo#!*!-9*6!*! ~#fo`i~#fo)~#fo3|e(*n&|g}osß)*##4! ~#fo`i~#fo)~#fo#*###s#r! ~#fo`i~#fo)~#fo#n}(! ~#fo`i~#fo)!*s#r! ~#fo`i~#fo)*s#r(*#n&|g}os! *)H`i~#fo")H`i~#fo!9!9DM! ~#fo! ~#fo͘/#|X!ZV.!9Write error in putc() !9DM! ~#fo! ~#fo2! ~#foʰ!V.!9Write error in putw() !9DM*.H}J!S1`iw#w`i~#fo|B`i~#fo|`i~#fo!V.`i~#fok6H~#fo!V.`i^#Vr+s!1!9 Counts after 1st algorithm and maybe scaling %4X %5u !9DM*.H}*=V!V.`iw#w`i~#fo|X`i~#fok6H~#fo|L`i~#fok6H~#fo`i~#fok6H###~#fo`i~#fok6H##n&`i~#fok6H~#fo`i~#fo!V.`i^#Vr+sô! V.`iw#w`i~#fo|`i~#fo?Vn&|`i~#fo)@W~#fo`i~#fo?Vn&`i~#fo`i~#fo!! V.`i^#Vr+sf!9 Encoding tree - root=%3d %3d w=%5u d=%3d l=%3d r=%3d Huffman codes %3d %4X l=%2d c=%4x !9DM!9!n s͐{~#fo! s#r͐y~#fo! s#r`i6#6!l w#w!9! s#rz˜ !#!o 6#6͐o͐"! ~#fo͐o)~#fon}!,!͐o+| ! ~#fo͐)!#s#r! ^#Vr+s!l ^# ~#fo`i~#fo)~#fo#n}*)!*!-9! ~#fo`i~#fo)~#fo#?:*#! ~#fo`i~#fo)~#fo#/#|š)! ~#fo`i~#fo)~#fo#!*!-9*#4*##n}?*`i~#fo! s#r! ~#fo! ~#fo~#fo*! ~#fo! ~#fo)! ~#fo! ~#fo#)~#fos#r! ^#Vr+sø)! ~#fo^#Vr+s`i^#Vr+s*^#Vr+sq*! ~#fo! ~#fos#r! ~#fo! ~#fo~#fo)w#w*! ^#Vr+s`i^#Vr+s]'!9Can't open %s »/>/>/>/>/>0>/>0A0! n&,! n&!9! n&!9! n} .0! !9! n&!9͐##^#Vr+s| 0!͐͐~#foW;|0!͐##6#6͐͐s#r͐^#Vr+s! ns&!9DM͐0!1͐##~#fo|0!1͐##~#fox8`in&#&9!9!9DM! n&|ͯE9! n&|ͩ!9DM`iw#w͐~#fon&9}ʖ9͐ ?͐^#Vr+snѯg`is#rW9͐Ý9!9!9DM! n&I8|9! n&9! n&& 7:O* *:+*|/g}/o#9::#"z{7*~# &: &:+*&! !\&!7*!~:&*!:&~:!&="&! BL<"e=L=7*^#V#z»:x2:+V+^+:*<::o&9!7,2q*&:q):$;=$;=r:qo&7*?:\!*:#7:)~:,"s!"u*|*uʽ;*~#”;"*s*u½;#"u*+"Á;7*|DM**;><;~# x; ><;~+ x;|}7:,*>:*2<}|2q c<Y<:qwT +=#~`=##T=xSڜ== =EXECL: Too much text $!p=!*w#¨=*:1=*=!=!a{ ѷ! , FNxg>Goy*>$E SAYS "PLUGH".$THERE IS NO WAY TO GO IN THAT DIRECTION.$I AM UNSURE HOW YOU ARE FACING. USE COMPASS POINTS OR NEARBY OBJECTS.$I DON'T KNOW IN FROM OUT HERE. USE COMPASS POINTS OR NAME SOMETHING IN THE GENERAL DIRECTION YOU WANT TO GO.$I DON'T KNOW HOW TO APPLY THAT WORD HERE.$I DON'T UNDERSTAND THAT!$I'M GAME. WOULD YOU CARE TO EXPLAIN HOW?$SORRY, BUT I AM NOT ALLOWED TO GIVE MORE DETAIL. I WILL REPEAT THE LONG DESCRIPTION OF YOUR LOCATION.$IT IS NOW PITCH DARK. IF YOU PROCEED YOU WILL LIKELY FALL INTO A PIT.$IF YOU PREFER, SIMPLY TYPE W RATHER THAN WEST.$ARE YOU TRYING TO CATCH THE BIRD?$THE BIRD IS FRIGHTENED RIGHT NOW ANate tone for send or receive Parity option: 1 - Set and check for odd parity 0 - Set and check for even parity Both ends must be capable of these options which are available only in R and S modes. The parity checking will be part of the file transfer protocol. Speed Options: After entering your primary and secondary options, you can set the modem speed by placing a "." after the options followed by the speed e.g., 300, 600. EXAMPLE: SBOT.600 will set the modem for 600 baud A=Bob Robesky.......1-209-227-2083B=Byron McKay.......1-415-965-4097C=Tim Cannon........1-312-359-8080D=Dave Morgan.......1-503-641-7276E=Bill Ernest.......1-215-398-3937F=Chuck Fosberg.....1-503-621-7276G=Thomas Hill.......1-907-337-1984H=Dave Hardy......uT(>ӋۋӉۉӋӋ)@ç&&I)#*AE̓J̓-̓Version for PMC-101 MicroMate CP/M+_PMC-101 >Ӌ>>Ӌ>hӋ͒>Ӌ>Ӌ>Ӌ>Ӌ>Ӌ>DӋ>Ӌ>Ӌ>Ӌ>Ӌ̓Use Config to change baud rates:B[:B͊W4>_m>]2B!L-v%v:BZy2:e :B:e:Be! ʡ0:0DM)) )o${h¡|/W}/_! =xy2BN&++ INVALID BAUDRATE ++$d (   :&& Enter new Baudrate: !e6 ͘% ̀%[00:0wͬ%#0::Ba:Bm:B:B 2BZ::BZ: :ȯ2B2B!"B!B~3Ow#!B*û ! GLA"ͦ&UA"ͦ&LA @>$ͯA G&& Enter library letter or phone number, CTL-X quits while dialing or ringing: BI)!B~#A~ ! "{~ʷ "Bpͦ..1-313-846-6127I=Wayne Hammerly....1-301-953-3753J=RBBS Pasadena.....1-213-577-9947K=Brian Kamor.......1-619-541-2503L=Sigi Kluger.......1-915-598-1668M=Dick Mead.........1-213-799-1632N=Arnie McGall......1-716-425-1785O=Jud Newell........1-416-231-9538P=Keith Petersen...1-313-759-6569RQ=Mark Pulver.......1-312-789-0499R=Bruce Ratoff......1-201-272-1874S=Ken Stritzel......1-201-584-9227T=TCBBS, Dearborn...1-313-846-6127U=Paul Traina.......1-408-867-1243V=Edward Svoboda....1-408-732-9190W=Ward Christensen..1-312-545-8086X=Ron Fowler........1-414-563-9932Y= Z= !9"D1D&& MDM711 - (type M for Menu) }e,C:B!,1D:::BCb:O8%2B2B:BD %M-R"S^T(E 2B(L2B(͡9,*"%"%"%"%":2}Cͺk]2B  ʁ!B uOG>mxAp>2B6M#Y͡9,:B‹2B:BDEMLTG:¬:ʰxC:Bʻî,xSR:B:m &&++ Enter primary option plus file name ++ &:l!B^#~ʷS͍%B͘%B:ͯ& , ͯ&> ͬ%#E && - try #*B#"B%> ͬ%:ʀ ͯ&͌w×>]E>]ZT):B&& No answer. Redial? (Y/N/C): ͹%̀%N,YCœ>2B2È%:Bʻ2Bû:BW&& CONNECTED:B&& - hit any key to stop the bell ͍%F͘% E>ͬ%9ͬ%Rc{0:G0q> O:¯&:(WTTʇ>ZT”>ZTʡ >ZE&& ++ Bad library number called ++ )̀%2B͌h,:)>Z2T&& ++ NO DIAL TONE ++ )7:?Z] EE!cͅE> ͬ%!gͅ"Z+++$ATH $:2!͌ͅxATDT $͗~$~4ͬ%#Åͅʳ͍%ʗ͘%— ͯ&>GCEjN—Ü: :B2B2B#T5ETʜ;2EÜ&& ++ No ringback for Smartmodem ++̀%>?]Z͌GFET͍%n͘%v T7 %:͏&& Additional Subcommands for PMMI Modems Modem control: A - Answer tone for send or receive O - Origin,&& ++ Bad option ++ ͅ>:B7>B2BÛ9:BDÈ:] V2B2BÈ !C!\C ͦ&CC!G"B>2BV:ć͍%D͘%Gª:ʪ:B>2B::':'>2BÈ::! %:%::"ʡ: :# :B/2B̀%̀%̀%D: :<:)nD:$T:&:BDU2B2B:B&&Ready to send in the batch mode (Use RBT when ready to receive) t>2~C:B̻>B2B>D#$:] r!!!dp#| *" >2B| _͟:B̼>D#$:2Bt:BG2~CR>B2B$:] Xr!\ ͓!:Bʅ&&File open - ready to receivè%:B«&&CHECKSUM in effect &&CRC in effect :B̀%>C>2Bͨ" >2B"">D#$!C!l&& File name to send? (RET to quit): BI):B B!C&C&&Want to include time delays? (Y/N): ͹%N~2B̀%BCʵ=N&++ DISK READ ERROR ++$*Œ&& (in Terminal-mode now) ͗È&& [Transfer comple Awaiting # *B#%&& (%&&H) }:BD# "ʒ-C--7G:Be:Be2B/2BÈ x%&&H received not SOH - v"҈| :B>ʧ:B>§>C2B:B<2B Ë 1D"6!&& ++ RECEIVED FILE CANCELLED ++ ++ UNFINISHED FILE DELETED ++ ü$:BÈ>2B:B2&&++ Timeout v:Bs:Bs:Bs2B&&++ Switching to CHECKSUM mode ++ È*B&%&& ++ :B ҋ >2B"W"/ &&++ Bad header Åz2B>2B!"B!"w,2B:BQ";:BG:BW<‹ "Z, &&++ CRC error Å &&++ CHECKSUM error Å>2B:Bʍ&& Sending # *B%&& (%&&H) >D#:BD#:B/D#>2B!"B!~D#,¯2ByD#*B|D#}D# "[ G: :B2 &&++ x %&&H &&NAK&& received not ACK - v:B<2B N& ++ SEND-FILE CANCELLED ++$&& ++ TIMEOUT - no ACK - v2 :B͍%͘%1D"Ҏ >D#"қ > D#>B2B2B2B:BRʹ&& ++ FILE CANCELLED ++ ü$*B#"B}!\ #~?>! :B6!ted]&& ++ FILE NAME ERROR ++ !B͊~N͍%H͘%#/ `:`ͬ%:͎`ͬ%4 : ͐€:Ó: O:Bͣ ›!:!:B:B!Ϳ&:{ͅ>ͅ>͍%͘%5&Awaiting name NAK d͊#>D#!wC5<*{C\ ͦ&"{CC>D#7 y2xC!]~D#:B~D"ڇ]#O>D#:BĀ%Q"ʺ>uD#&& ++ ERROR sending name ++ d͊#>D#D>D#!\&&Awaiting FILENAME ͢7y2xC!]"%&& Time out receiving FILENAME xʠcwD>D##}x:xC<2xC W~ Ĭ%~ >.ͬ%P:BĀ%yD#"ʠ!\&& ++ CHECKSUM error ++ ͢| >D#"¤Ë >2B2wC!"{C8!\C&?*:f*{C\ ͦ&"{C!wC4!zC5!"{C:wCA>@2wC&& ** Memory buffer :BE&&open ** ;&&closed ** && ** Memory buffer available ** ̀%͕î,*HK*NQ͎×*`ͪD͗~4Gͻ#ê:BTxì%"ì%͍%͘%G>|&&Printer buffer is :B&&\<&&File exists - erase? (Y/N): ͹%Y,̀%\&&++ NO WILDCARDS ALLOWED FOR TEXT FILES ++ ,&&++ NO FILE SPECIFIED ++ ,\2By2B!G"B*"*B!ͤ&"B:B<2B:BOG\R! "2B!G"BxG| !Ϳ&ͅ###"7>͐,O:B<#:BA#:BA#K%:BZ#:B_#:B_#K%͐,O͎f#4&&Waiting ready signal | "ʋ Cʨ##Š#Ë 5&CRC request received >2B:B5&Got checksum request 5&Name NAK received :Bœ$:Bo$ !N$>w#$ !]N$>;$~ 1$#xI$#$~ I$>.#$&& && Transferred :\2tC!\:tC2\!BB ͦ&͗:~C²+| && [Transfer Completed] :Bʾ9:B %q2B2B2B2B2B:B$/2B2B!B~6Q,:B,:BON &&OFF ͯ&:B!:BDxͬ%͓#> D:B?:Bʈ ͅˆ>ʈG:jx jڈ҈xͬ%͓#:B~ͯ&> ˆ:Bʈ͗ j:B*Bp#"B> ®> ͬ%ͼ|!̷͗>4#! >2B*B!G wͬ%G# ̼#"B͗>4͌  w# :B*Bp#"B:yC8͗>4! z2vC:vCW!v wͬ%G͓ ̼#Z"B!"B͗>4ͭN#"B͢%:yCKͭ!"B"B*B*B|}::2yC!?Ϳ&DMͅ> x7::B]E:B]È̀È*B6}l&)>oG0:BʅCѷR+|0D#"N&++ DISK IS FULL, SAVING PARTIAL FILE ++$"6!&&++ Nothing to save, erasing the file ++ ü$>;ì%6# 6 #6#!zC6!BN!B 6 !BF#4~ #4~ "rC+#4~ :zC<2zC#4~ &6 *rCC~ M#@#~ M"rC!Cp \( ~‰#~+] ͦ&!e~w#~w\!\l ͦ&!u6B#6A#6Kl!l6\:\<é>2B2B2B| :B'&&,̀%È&& << DISCONNECTED >> h:e:eî,!l\ͦ&2|2h s% s% s% d%s%>(s%%>)s%_> ͬ%> ͬ%O͘%%ͬ%a{_ % |%{0s%|%}%& &0s%&&CTL-@ͬ%&&~3&s%#'&~G&:B~s%#6& I&>ͬ%̀%>2B:B$Ë :}C_:E͔&:Bĵ@:*D Ô&~#¦&͗x4B!\&:=&@'#^#6 i'{' ,' ' {' ,' '' i'{' ,' {'#͏' ͏'6# > b'b' > b'b'w#b':y'_@w# . {'w#{'~*ʟ'#‘'â'ʹ'~*ʰ'#¤'ʹ'6?#´':A2$)2@)' B!\&!C:l2C:m ((): 2zCC<)(&&++ FILE NOT FOUND ++À((#@(**&& . C<ʀ(:zC=2zC̀%s(: 2zCz(&& : )(̀%##~2H)#~2G)##^#V"E)*E)#ڲ(W+}(z­(é(i`:H)()=(%*)I&>? !Cw#(!mC *=ƀoM - Exit from this program to CP/M DIR - List directory and space free (may specify drive) ERA - Erase file (may specify drive) LOG - Change default drive/user no. (specify drive/user) and reset disks. e.g. LOG A0: or LOG B: (user # unchanged) SPD - Set file output speed in terminal mode ͼ=j2&&TIM - Select Baud rate for "time-to-send" msg. :ʠ2&&TCC - Toggle CRC/Checksum mode on receive :2&&TBR - Toggle backspace to rubout conversion :;3&&TLC - Toggle 1) local command immediate 2) local command after :'& :ʃ3&&TLF - Toggle LF after CR when sending disk file in "T" mode :3&&TXO - Toggle XOFF testing in terminal mode file output :4:3&&NUM - List remote systems : 4&&SET - Set modem baud rate &&BYE - Disconnect, then return to CP/M :R4:i4&&CAL - Dial number &&DSC - Disconnect from the phone line The following are terminal text buffer commands: &&DEL - Delete memory buffer and file WRT - W&:C)=_@2$)2@)&&Drive : k bytes free on drive : $*կ͘%% *ʜ)ʜ)))ʀ) W)G#4+~#)px *ͬ%#W)#G~wڻ)+xF6 ))W)4W)>ͬ%> ͬ%>ͬ%W)>#ͬ%̀%M)G>#ͬ%̀%xW)ͬ%)W)>ͬ%5W)̀%W)̀%F##> w#*~;*4*#%*#5*7#2h:BŒ*>2B!\C *:\2C!C\ *\*!C\ *\!C\ *\<7*2B=Ɓo&C *] *2h2|><*~# x*&&File open: *B%&& (%&&H) records Send time: :_!+^#V*B.,i`%&& mins, !+:_~B,M,M,M,M,&%&& secs at +5&To cancel: use CTL-X  0`@J0(  !+:__ && baud 110$300$450$600$710$1200$2400$4800$9600$19200${/_z/W9, !<=G,}o|g>o*B|>!E!yg)Ҁ,>g>!ot,r$s%# j,*BO!E ~W$^"B:B,&& ** File still open, use DEL, DIR, WRT, E, L or T ** ,2B!BBrite memory buffer to disk file A&& Local Commands while in Terminal Mode : & - Send a break tone for 300 ms. :ʨ5:)& - Change baud rate >& - Exit to command mode :!& - Disconnect from the phone line :6:"& - Send log-on message :<6:#& - Toggle printer > ͬ%:&& - Start copy into buffer :$& - Stop copy into buffer Start & Stop may be toggled as often as desired. A ";" at start of line indicates buffer is copying. XOFF automatically used to stop input when writing full buffer to disk, XON sent to resume. :%& - Transfer ASCII file to remote ::'7& - Send local control character to remote $8& - Next character will be used for local control z̀%:BP8̈́B&& Bytes of buffer free Aͬ%:g8&o%>>ͬ%>>ͬ%&&COMMAND: BI):BP8 *8:B:i<B#*CPMi&̀%#*LOG[:#*DIR9#*ERA:#*?A#*SPDN;#*TIMң<#*TCC=#*TBR>#*TLCW ͦ&!BB ͦ&2B2B'8ͯA&& Single Letter Commands ? - Display current settings M - Display the menu E - Terminal mode with echo L - Terminal mode with local echo T - Terminal mode For copying text to disk use T (E or L) FILENAME.TYP Start or Stop toggles described on subsequent screen. R - Receive CP/M file using Christensen Protocol S - Send CP/M file using Christensen Protocol COMMAND: R (or S) FILENAME.TYP R and S can use the following subcommands: B - Bulk transfer using wildcards (e.g., *.*) D - Disconnect when done Q - Quiet mode (no messages to console) T - Return to terminal mode after transfer V - View bytes transferred on console X - When done, disconnect, go to CP/M The single letter commands may also be used on the command line when the program is initially executed. ͏&& Three Letter Commands CP >#*TLF>#*TXO?:-9:-9#*NUM@: >9#*SETC@#*WRTҖ@#*DELi@#*BYEҾ9#*DSC %:t9:ʆ9#*CALچ9> 2BÒ9:B!BsAڛ9Ͷ&Cõ͡9'8&&++ Invalid command ++ :):)h&& <> i&2uCͼ':uC_'8B!\&8%:] ʛ9\Ò<ͼ=›9&&Use 0-8 to give baud rate for 'S' mode time-to-send message, where 0=110, 1=300, 2=450, 3=600, 4=710, 5=1200, 6=2400, 7=4800 8=9600 and 9=19200 Baud. Enter value: : қ92f='8ͼ=¦=&&Rate for the S mode time-to-send message is set to ù=&&Modem speed is +: G:::ʛ9:/2='8&&Mode: :=&&CRC &&CHECKSUM :ʛ9:/2>'8::>&&Backspace is rub &&Backspace is backspace :ʛ9:/2k>'8&&Use ::'ʙ>& before local command & to send local command to remote :ʛ9:/2>'8&&Linefeed :>&&NOT &&sent after CR for disk file in T-mode :ʛ9&&Use XOFF testing? (Y/N): ͟?I?2ͼ?&& Use XON waiting after (Y/N): ͟?}?2@:'8/2&&Therefore ͼ?'8BI):B ?GN>xY>Û9&&XOFF testing :?&&NOT &&used&& in terminal mode file output &&XON :@&&NOT &&automatically tested after CR?: ʛ9Bw:'8Aͯ&Tͯ& ͯ&'8:B@:C @C2B2B!C!G"B'8:B@͵@2B2B!C!G"B'8:C C2B&&++ No File Open ++ '8ͯA&& LibrarySQUEEZED CONDITION 001.33 10K TYPESQ .COM TYPING A SQUEEZED ASCII FILE W/O UNSQUEEZING 001.34 12K USQ .COM THE UNSQUEEZE COMMAND FILE 001.35 2K VERIFY .COM CP/M 3.0 FIND.BAD-LOCKS OUT BAD SECTORS OF DISK 001.36 2K VERIFY .DOC DOCUMENTATION FOR ABOVE PROGRAM 001.37 12K XFERTIME.COM GIVES TIME TO TRANSFER FILES VIA MODEM  001.23 8K NSWEEP .COM NEW SWEEP UTILITY COMMAND FILE 001.24 20K PACMAN .COM GRAPHICS GAME 001.25 2K PHONE .001 A PHONE DIRECTORY FOR USE WITH A MODEM PROGRAM 001.26 14K RCPMDATA.18 REMOTE CP/M BULLETIN BOARD USE DOCUMENTATION 001.27 10K SMICRO .COM A SMART MODEM PROGRAM-THE COMMAND FILE 001.28 26K SMODEM37.DOC DOCUMENTION FOR SMART MODEM VERSION 37 PROGRAM 001.29 2K SORTCAT .COM A CATALOG SORTING PROGRAM-THE COMMAND FILE 001.30 16K SQ .COM A FILE SQUEEZER-SAVES ABOUT 40% OF THE KBYTES 001.31 28K SQUEEZE .DOC DOCUMENTATION FOR THE SQUEEZE UTILITY 001.32 16K SQUEEZE .DQC SAME AS ABOVE BUT IN A  of Phone Numbers of Remote Systems ! GLA## ͦ&UA## ͦ&LA ^A1A> > > >$ G̀%̀%'8F#~AtA7&&HIT any KEY to CONTINUE͍%ʚA͘%¯À%'8: ž> ͬ% > ͬ%¿AͯA&& Current Settings =:A>f=&&Terminal mode file buffer is :B2B&&in&&active Unused portion of buffer is ̈́B&& bytes k>>ͼ?@;̀%̀%̀%'8*B믓o|g%SRTELMABDLOQRSTVX01ABDLOQRSTVX01GGG4 If the DESTINATION diskette already contains a file by the same name the user is given the option of aborting or erasing the existing copy of the file.$$YOU'RE IN SLAB ROOM.$YOU'RE AT JUNCTION OF THREE SECRET CANYONS.$YOU'RE IN SECRET E/W CANYON ABOVE TIGHT CANYON.$YOU'RE IN NARROW CORRIDOR.$YOU'RE AT STEEP INCLINE ABOVE LARGE ROOM.$YOU'RE IN GIANT ROOM.$YOU'RE IN CAVERN WITH WATERFALL.$YOU'RE IN SOFT ROO s`t!͎tt!8"J67:77Z1tt!75t!7#͎+Mẗ́twt2G6pvtLp::2J:v2:Z1$24: 7«p#8rs(%÷p%8xss2'vpp6sp87p2726:+2_5:^5y)[-'Cq:6 q\!4~6"qqv!Cë:!2p ë:'C!7:72:qv!7ëhq2'́qhqFq!7I*7yTJvM!7xVKJqJy£JqJ!"6!7xH*7͈C͟IҖqqJp:C6G-$ͱ$!8.͔ 2':D6:C6G-ôq8q8>25G*B6|!8s:C6s$:Y5r!8͔$:626n$:!4$r,p2JZ1%͹$*+?1*`5"6"6*6~!͔$a#+w#͟$~ʂrͨrږryrsږrGͤ–rxG8x͔$}!+y)8ͩ$8@rկ ®rsr.r#r rͤ7rr rrr>  r~ >_.ҁ >2]f. 2./ y!_~/6 !_e: F :^w~#; >`.: Gb3Á 2m2n2o>2B!_~/~y !K9̈́/^#V#~21#~21>2?"1.:? :.d :. :. :B!e~/ !_:B~/ K3 :?= !Q~/V:. :.K. :B :?!Q~/:.w!?4*1~# :1’ :1’ :B!e~/~:?!Q~/w:?N =Of.O <2?!_:B~/~:B!e~/w:?!Q~/~w:B!W~/"1: Җ 6: ʮ :B!e~/: ³ *16*1~y :B!_~/: w:B, : W:Uy >7͂2y 2?2!kNx< >;~/:  xͯ3‚ x3$ >2?x :==W:>\ :?\ >7!_>~/~\ >3\ >͂2 >!_~/~~!e~/y >.y >`.y >`.>$!_>~/~ :UG72:VG$22:kO><¿ !=~/:  >;!=~/:  x3 x!'?~/~ H: G 2xͯ3 H:UGb3x¬ :U2d2j2\y >`.:UG72$:VG2 !m4:B!_~/~:B!e~/y !n4:SZ : 2S:]y G>m e Gf.y !o4:B<k :mځ 02    THERE ARE THREATENING LITTLE DWARVES IN THE ROOM WITH YOU. $>`.:nʁ :] <2]:nt 02573() 7,2TAL RESEARCH Sid v 1.4 p2  r!,@rO {@Meo}o҃i. $ADVENTURDAT5defghij5J178 179 9 20 3 180 181 -1 12 7 VERY WELL. -1 0 ADVENTURWRKklmnopqrstuvwxyzDADVENTURWRK{|}~ADVENTURWRKDADVENTURWRK*z{¯#z+++ +^ !Ùi`"F!9]T>>+ >G5 /s ZQHf oʊ xGyON/: + 0 !K4Qw#|i}iS}>2!B62!Lp7t:=2!">2*~#"ͬ *w#":=2!"0>2 CAN NOT OPEN FILES!$:<W:PO:G>GyOxJ21y21!ͬ-h!0 ~_XXx)))GS" : eG:'>$*:  !w5R1!K4R1:1: 1d1!=8R1!6R1:B! 5  >2?:o( G:?`.:oʁ k 02V V   OF THEM THROW KNIVES AT YOU! $ OF THEM GET YOU! $: 2^>`.>42? : ^!w5ͣ0!@~#ʬ :ʬ !;: ~/~² !K4ͣ0\/ K3 :l >#.P>!6ͦ0>#ͯ3 !6>͗/*@ͥ/>2?K3G: !=3\/: !;~/4:6: !9<~/~2B2C:B2e>d2N>2ͯ3:!=~/~:J6:>l6@s6:==2=ʘ!>˜*|’}#ژ!#":!=~/~2@:!'?~/F: >2@:@G:3:B!<~/~2B*>62?:?2:!6͗/>2C22><2B!P~/~?!@Q:B~/"1:BG: K.**16*14:B͋/~*1?Å(:B!<:Jʇ>͂2g>ͯ3g>3dxͯ3ʃx͂2O>OxA͋2i\/2l:SʠG: ʠ2Sf.0:Oʼ/<2Oü2O*#"::12:E:=: !!5:)!5ʄ*>͂2*+"*|>}>>'3>>'͂2>>3**|m+:  S|+|*+a}*+>+2?: ͣ2v>F2?0*1ͳ0ʢ0*1ͳ00*1ͳ0*1|80*1ͳ0º0*1ͳ00*1ͳ00*1ͳ0*1{1c1y3!0-R1> 0*1ͳ0:<2PU!P:B̈́/: w#:w!B41!9R1> > ͬ F$@>*1ͬ: 2Ë: =_:1w#:1w>$v!?"1S}’: <2 !K9Rv" :ʦ}2!K9RS*1p#r#s#"1S}/*1w#"1ͬv*1sò!xH"1S}|*16v" ͬ ) )*1w#"1: w#:w#"1> *1w#.S}Fv" S: !=~/qnS: !>~/q7S}ƒv" SE: !?~/ptS}©v}"1S}!w:̈́/:1w#:1w°ÚG&.}o|gS}v2<͋/S|.}w#>$:02<0Qr!": >2 X!K9^#V~~/X!w:6#6yhdy!>~/~ʾGydOb3y!=~/Fb3 ˜dy!>~/Fy!'?~/pxy!=~/~Gb3 :kO2x!=8̈́/~#x!=~/6:=<2=y*+~2y>A1:12P!?!J">22 : }}:L}!6>͗/: 2:Kx!">2K: !K3: K.e!W:O¼~ʼ: 2>`.#¤:2 ʁ K3 :K. :]: ځ >2]Á _ : ځ  !6>͗/*1{1c1y2?xG>3*1"1!"1: 2:?Jl9:Cd2:2: 2=_!K9^#V#~21#~21"1~/ʻG:ʻ~#:1Š:1Š|*1.:.:./ͯ3/:././*1~#"1:.3/:.ͯ3/2.:.!=~/:./:.EW:.2J:.!6͗/: 2J:.lʚʦ ! >ǖ2:J‰>;ͯ3J: 2!6>u͗/J: G;b3>!͂2>!3>!͋2"22>!!=~/F!2>!!>~/F!2> #3: 2J>!!>~/F>!!=~/~G: Ox2>!͂26>#ͯ3J>!6͗/> ͋2>!͋2:G#b3>#!'?~/6>#͋2>?͂2c!>4:2^:2?N3~:2?:2: 2!"@:?! ¢>[`.J: !K9̈́/^#V#~21#~21"1.:.:.G:?$N3:.!K9̈́/^#V.:.G:?"@*1~#:1¹:1¹*@"1|$>`.J*1~2?G/2?G:J>!6͗/:<2!l6: !;~/6J: q>:s>9!6͗/J :+ڍ3ҍ ʗ™ ʨ$ʨ%ª ʴ¶ ;>A*P{!6͗/J!6<>.!6=>.!6 :=ib3:g>2>#͂2$>)2>@͂21>%2:>@͋2>@!'?~/6>#͂2W>wG>#!'?~/>w>2>@͂2y>"2>@!=~/: ʍ>2:>@͋2>@ͯ3ʭ@: Gb3>@!'?~/6>3>2*|>͋2>'!6͗/:l >3>͋2>(!6͗/\/>!6͗/:ͯ3.:)>ͯ3.>2:> 3:ͯ3:L> ͂2>w>G> 3::]ڋ!_: †>2Ë#z> 3> Q >3ʧ>͂2>Q >!3>!Q >#3>#͂2>#Q :>3:!6>3>Q >3>Q :2!6:J>2>͋2> !_>~/G> !=~/~-!>4!6-:!G6,G6: Q6._61:J—+f6!m6#>#͂2<ƥ!w:͂2>1`.220*1G ͳ0´*1L ͳ0ʦ>3>͋2>>͋2>!>~/F>!=~/~2?22:?G2:?G>dx!=~/N>!=~/~+ :!_>~/N>!>~/~5 :?HG2:?2 >2?GY YES G:] x2:n t ͓22:ͯ3>N2:ʓ >͋2:!_>~/6>M2> 3 >3>p2:>͂2Gw>3>͂2 wG>͋2>2?G: xq2`.:?2!?~/~2:'*1|8:4>2:E:=!VL:=!_^#Vcb !P! ##$%%A& ''1(9(8Tcb !P!!!%#%##$%^''(:?2!'?~/F: :?3?*1|8:E *1͏0 ? $WHAT DO YOU WANT ME TO DO WITH THE $:?x: YY^>?2?:  pp>@2?:?G:?™:]ڙ: !_#͓2!?«>3: ͣ2!?:>3>͂2>2::S! >2S>t2:>3>2*1}$:= *1͏0G I SEE NO $ HERE. $>!6͗/: 2:L:TRG=61!T4:Qʟ+:1ʟ+!_>>~/6>!_>~/6>ͯ3ʧ>͋2dxͯ3Hx:Gb3©>2 2Á >`.!T4ß+*1͏0 2 WHAT? $: !9<~/~21!<~/~:]2!_: #):12:ͯ3>2!>[͂2=[>s2!>#q͂2q>2:@†>#͂2ʆ>2:!'?~/~:ʡ͓2!³>3>2ͯ3>͂2$>͂2>i2>ͯ3>h2>2:>\!6͗/>> ͋2>3>2>H2:! H!H!H!#H!H!!H!>G2:r!: ͣ2r!͓2>3:ʃ!ʃ!!6n:n͓2>3>͋2>!_>~/6!6J:>L2:ʉͯ3:2!G:k!>!3":!>#3":‰!c: L"+ ">2>3(">͂2ʃ">2>!3ƒ">#3E">#͂2ʝ"2c>02>!.҃"x!W~/6x!_~/6>/2:P<2Pƒ">2:!6͗/: Gb3>2?G>2: Gb3>!'?~/6>͋2>##3>#2#>2:Ob3!22>!!=~/F"b3>!!>~/Fb3> #3>661:12I:IŸ+:3M#͓2!R#>3M#: ͣ2!?R#!6^:{#:]{#!_: v##j#{#!6^:Jʇ#!6:ͯ3!6>b2x##ͯ3#:b¼#!6>c͗/2Cx3>2C2xeŸ#>#ͯ3>!6͗/:#>d2 $ $!_$>f2:#$͂2#$>n2:!0$>2: :J>3>e2>2>͋2!>4x$>3>g2!]4#$͂2‰$>f2”$>n2>3>2>#͋2>!'?~/6>͋2>2>2::I%$$>3>k2: ͣ2$>j2͓2!;͂2;>ͯ3!>!6͗/>ͯ34>!6͗/>͋2>͂2^:P^> !O: G 2:O: G 2͓22?::?!_>~/6>ͯ3ʦ:¦>ͯ3¦>2:ͯ3:8> 38>!6͗/:J—+> 2> ͋2͓22?G:>2::?!_>~/6:>͂2: Gb3:*͋2:O: Gb3:6`>&3`>62': Gb3>'3:©>3ʩ>͂2©>!6͗/>2>͋2> !=~/F> !_>~/x!>4:#>!3>!6͗/!22">!!=~/F2!>>!~/F2> #3>!͋2::> !=~/: >6!6͗/>:͋2> 32>:͋2>:͂2F>:3>:͂2>:!'?~/6*1}_"1{1c1xzy>ʯAʯGʯx†yʯ *1͏0  OKAY, "$". $!"12>2>Ϳ2>Ϳ2> 2>2:>@3>@Ϳ2::ʣʣ >o2> ͂2>62 > 2*>724@9>2:>3:@ :Lr>2?:K!">2K>͂2"2?>͋2:’>͋2>͂2G:?2?2?:´>2?:?|2:ͯ3:?x2>9ͯ3:?z2:>=2:|>2: Gb3 %>i2:k!w:: ̈́/~G>͋2͓22?>ͯ39%:?!_>~/6:?>l2>2: ͣ2]%>2: ͣ2>:ͯ3!6>͗/>:͋2>:!'?~/6*:J>͂2>2N: s¬%>2N>3ʹ%>2N:N`.ß+!H6ß+!H6*D$&&.*F:&&.% >661:12I#IF YOU WERE TO QUIT NOW, YOU WOULD SCORE OUT OF A POSSIBLE $*1{1́1c1y2?!6*:O=n&:O!6:?2O2O>8!_>~/N>8!=~/~! ¢&>8ͯ3>8!_>~/~&>!~/~&>!͂2&>!͋2>2?>83&>2?>8!=~/N: &2?>8!=~/F82:?83>2!6!62>3>Q > 3> Q >$3>$Q :JQ'>ͯ3Q'>2:\/\/:!q'6 x'6$'6˜':Pʘ'>ͯ3ʘ'!6::P>ͯ3>61:12P:'!6:'͂2'::J>`.×+!6>:ͯ3(:: Gb3>:͋2>:!'?~/6::J>`.×+>2D( ON A PERSONAL COMPUTER, THE CAVES ARE OPEN WHENEVER YOU LIKE. $:B!(Li)|)))))!@Q:B~/6:B͋/##~61:1?:B͋/#~02])&) :B͋/###F>61:B!P~/:1w)*%)} !6 # 1!1:1G<1!"1R1F1!-"1-R1> #>1> >1#H1~ # T1x&yoxy1GM$k1DxH"1Ⱦ˜1#ƒ1OG˜1*1Á1!91!6͗/0!~Y1N1b2 1>1>A21x×/ye2!_>~/~6!4x!9<~/~;2"1y!<~/~*1w21:1!<~/~R221>2"1y!<~/~*1wPLEASE ANSWER WITH YES OR NO. $!=~/~!=~/p>͂2=2>>!w:̈́/~´2>Ø2~ʘ2>Ø2G3x2G32Oye2!_>~/~2d!'?~/~22G 2b3͋2sO23͋2t33O!_>~/F2y!'?~/FydO2>.>!6×/: =_!w:~_3ɷye҇3y!_>~/~|3:=2y!_>~/pÑ3yd!'?~/pxx!9<~/Fy!<~/px!9<~/q!_>~/~ʽ3>!_>~/~ʽ3! ʽ3û3G!'?~/~! ʽ3x33 1J!=8Ù/SORRY, BUT I AM STILL LEARNING HOW TO DO THAT. TRY SOMETHING ELSE FOR NOW. $*f#D'Fw 7 l   E  n r = rR*{Q L,5mv,5x?L8gbNK9qz T ):B͋/#F*)":B!@Q~/6?I AM PREPARED TO GIVE YOU A HINT, BUT IT WILL COST YOU POINTS. $>͂2)>3ʜ()>3#)>ͯ3#):ʜ(#)> 3)>3ʜ(): !9<~/~):!9<~/~):!9<~/~):Ҝ()>;͂2)><͂2()Ü(>͋2> ͋2!W_w# *!22>!!=~/F"2>!!>~/F2> #3>#͂2R*>#2>@͋2>@!'?~/6>͋2>!'?~/6>`.>22La> 3>2>2>2>2>2>s2 22t2> 3>3>3>3> 3>2>!'?~/6tdxͯ3*x2*>`.>2JJ>`.>'͋2>'ͯ3+': Gb3* "2Ra:Ra>3a>2R>2>'!_>~/~U+!6>'͂2d+!6:`.a!">͋2>3a>`.a>`.>2Iß+>!6͗/!"D"F2:kOx!=8̈́/~# , x7++z2?x͂2+*D##"D+x!_>~/:?_~+*D++"D*F:?_"Fy®+:Q!To&~*D:HG:I0,:];,:LF,:Jp,:NW, _,g,o,-"D>!_>~/~l*D…,###"D:Qo&~*Ff"F:<Gx!P~/~,x͋/#~/_*D"D£,:H%*D-&.*F-&.*-&.- x!P̈́/^#V*D|!z"L"}"#$$%&''U'()()Y*c**,./f/0035667$7c778Y9%9??@Y@AABB[BBCCSCCCCDD&D8DJD\DyDDDDDE E#ECEbE~EEEEEF F&FKFcFFFFGGGBGrGGGGHHH4HFH]HrHHHHHHII-I?IQImIIIIIJJ2JOJo]`?`p`aaGa]asaabbqbbbcDcccdMd|ee?eveeffEfhffffg0gGg`g{ggggh7hGhNhohhhi4iQinnnnno5oopOpgpmpq ,x!P͗/x H-!P̈́/^#V*Dzg{o.&.- S-  TO ACHIEVE THE NEXT HIGHER RATING WOULD BE A NEAT TRICK. *** CONGRATULATIONS *** $YOU SCORED OUT OF A POSSIBLE , USING TURNS. $TO ACHIEVE THE NEXT HIGHER RATING, YOU NEED MORE POINTS. $"1!d1/@.! 1/@.{*10w#"1!w:̈́/x{_#z!6×/ !~q#o.!s}~wқ.!E!w+‘.} . €.+}.x!}>2  +:=.:{f.d.3ʽ3>͂2ʽ3û3=_=_!P=_=_V#^"1/xʹ/I0í/~>:C/ I0 :121:1?_:1{/21:121:190@=0A0E0"1 :1w:1_!"/Ɓ2!0!Q!r!:=2v0:1<21j021:1@2121/I0*~#"$_xI0I0"1^*1#> Ï0: ̈́/~2A#~2@»3#µ0ý3ENTERSTREAWATEROIL PLANTDOOR POUR WEST 1 !"1"1 ????@@-@I@d@|@@@@@@A"A:A@AfAjAnArAAAAAAAAAAAABB#B.BESE\EeEqEEEEEEEEFF F(F0F:FBFLFkF|FFFFFFFFG@GhGGGGH0HXH]H @ gk 2 3456}8 9 ;  %?#&(<:>!@-a.cb2-++d-,cnF!e/d.GgJfhã@gihg@Al=uD+-./012jrEq-GFr'Å-m. TtsQv)*Eu/THuE-+EJJ+-{)*E/T|~z|+~{}/0%~|.~-+}.|b}, |~|-.~,|+(~,|~kpkpkpkpkpkpkpkpkpp-ROAD HILL ENTERUPSTRDOWNSFORESFORWACONTIONWARBACK RETURRETREVALLE STAIR OUT OUTSI EXIT LEAVE BUILD HOUp  ^`egjmo#awuu~`\_adew  ^`egjmo#awuu~`\_adew Cnyzzy Cnyzzy!!&&*+nnIK ;;mC Òn ,  .- +-- !O +,. +U, +,+S<+, Q Q   ,   +   J!$SE GULLY STREAROCK BED CRAWLCOBBLINWARINSIDIN SURFANULL NOWHEDARK PASSATUNNELOW CANYOAWKWAGIANTVIEW UPWARUP U ABOVEASCEND DOWNWDOWN DESCEPIT OUTDO CRACK!STEPS"DOME #LEFT $RIGHT%HALL &JUMP 'BARRE(OVER )ACROS*EAST +E +WEST ,W ,NORTH-N -SOUTH.S .NE /SE 0SW 1NW 2DEBRI3HOLE 4WALL 5BROKE6Y2 7CLIMB8LOOK 9EXAMI9TOUCH9DESCR9FLOOR:ROOM ;SLIT <SLAB =SLABR=XYZZY>DEPRE?ENTRA@PLUGHASECREBCAVE CCROSSEBEDQUFPLOVEGORIENHCAVERISHELLJRESERKMAIN LOFFICLFORK MKEYS KEY LAMP HEADLLANTEGRATECAGE ROD ROD STEPSBIRD DOOR PILLOVELVESNAKEFISSUTABLECLAM OYSTEMAGAZISSUESPELU"SPELDWARFDWARVKNIFEKNIVEFOOD RATIOBOTTLJAR WATERH20 OIL MIRROPLANTBEANSPLANTSTALASHADOFIGURAXE DRAWIPIRATDRAGOCHASMTROLL TROLL BEAR MESSA VOLCA GEYSE MACHIVENDIBATTECARPEMOSS GOLD NUGGEDIAMOSILVEBARS & J"#"&IuK)*,&  -., 8XJC+D,C ?XK)*+)& !-$& & >,9Z"+5#nFd!!+%+'A$,&%8S<$+@4A)*.;<,)*+-P*,-+02R*+./W-,-+,23,134124523457V3465,47897 7:ST9+)+=>-<> <?=>.'8A,g-j@B:D:Ö'%@G:jAC:M`|aB,EAD pwmqGAoAFnAvIa0H. pyKLMKKNB-M*PPQP,,.9TU9SrS+4-8\,_-IHX]^\.\.g-c^.\[B,BH,b JEWELCOINSCHESTBOX TREASEGGS EGG NEST TRIDE!VASE "MING "SHARD"POTTE"EMERA#PLATI$PYRAM$PEARL%RUG &PERSI&SPICE'CHAIN(CARRYTAKE KEEP CATCHSTEALCAPTUGET TOTE DROP RELEAFREE DISCADUMP SAY CHANTSING UTTERMUMBLUNLOCOPEN NOTHILOCK CLOSELIGHTON EXTINOFF WAVE SHAKESWINGCALM PLACATAME WALK RUN TRAVEGO PROCECONTIEXPLOGOTO FOLLOTURN ATTACKILL FIGHTHIT STRIKPOUR EAT DEVOUDRINKRUB THROWTOSS QUIT FIND WHEREINVENFEED FILL BLASTDETONIGNITBLOWUSCOREFEE FIE FOE FOO FUM BRIEFREAD PERUSBREAKSHATTSMASHWAKE DISTUSUSPEPAUSESAVE HOURSFEE FIE FOE FOO FUM SESAM OPENS ABRA ABRAC SHAZA HOCUS POCUS HELP ? TREE TREES DIG EXCAV LOST MIST FUCK  STOP C INFO F INFORF SWIM K /fՠ0b#d,J]' >?$YOU ARE STANDING AT THE END OF A ROAD BEFORE A SMALL BRICK BUILDING. AROUND YOU IS A FOREST. A SMALL STREAM FLOWS OUT OF THE BUILDING AND DOWN A GULLY.$YOU HAVE WALKED UP A HILL, STILL IN THE FOREST. THE ROAD SLOPES BACK DOWN THE OTHER SIDE OF THE HILL. THERE IS A BUILDING IN THE DISTANCE.$YOU ARE INSIDE A BUILDING, A WELL HOUSE FOR A LARGE SPRING.$YOU ARE IN A VALLEY IN THE FOREST BESIDE A STREAM TUMBLING ALONG A ROCKY BED.$YOU ARE IN OPEN FOREST, WITH A DEEP VALLEY TO ONE SIDE.$YOU ARE IN OPEN FOREST NEAR BOTH A VALLEY AND A ROAD.$AT YOUR FEET ALL THE WATER OF THE STREAM SPLASHES INTO A 2-INCH SLIT IN THE ROCK. DOWNSTREAM THE STREAMBED IS BARE ROCK.$YOU ARE IN A 20-FOOT DEPRESSION FLOORED WITH BARE DIRT. SET INTO THE DIRT IS A STRONG STEEL GRATE MOUNTED IN CONCRETE. A DRY STREAMBED LEADS INTO THE DEPRESSION.$YOU ARE IN A SMALL CHAMBER BENEATH A 3X3 STEEL GRATE TO THE SURFACE. A LOW CRAWLWAY OVER COBBLES LEADS INWARD TO THE WEST.$YOU ARE CRAWLING OVER COBBLES IN A LOW PASSAGE. THERE IS A DIMKR OF THE ROOM IS COMPLETELY EMPTY EXCEPT FOR SOME DUST. MARKS IN THE DUST LEAD AWAY TOWARD THE FAR END OF THE ROOM. THE ONLY EXIT IS THE WAY YOU CAME IN.$YOU ARE IN A MAZE OF TWISTING LITTLE PASSAGES, ALL DIFFERENT.$YOU ARE IN A LITTLE MAZE OF TWISTY PASSAGES, ALL DIFFERENT.$YOU ARE IN A TWISTING MAZE OF LITTLE PASSAGES, ALL DIFFERENT.$YOU ARE IN A TWISTING LITTLE MAZE OF PASSAGES, ALL DIFFERENT.$YOU ARE IN A TWISTY LITTLE MAZE OF PASSAGES, ALL DIFFERENT.$YOU ARE IN A TWISTY MAZE OF LITTLE PASSAGES, ALL DIFFERENT.$YOU ARE IN A LITTLE TWISTY MAZE OF PASSAGES, ALL DIFFERENT.$YOU ARE IN A MAZE OF LITTLE TWISTING PASSAGES, ALL DIFFERENT.$YOU ARE IN A MAZE OF LITTLE TWISTY PASSAGES, ALL DIFFERENT.$DEAD END$$YOU'RE AT END OF ROAD AGAIN.$YOU'RE AT  LIGHT AT THE EAST END OF THE PASSAGE.$YOU ARE IN A DEBRIS ROOM FILLED WITH STUFF WASHED IN FROM THE SURFACE. A LOW WIDE PASSAGE WITH COBBLES BECOMES PLUGGED WITH MUD AND DEBRIS HERE, BUT AN AWKWARD CANYON LEADS UPWARD AND WEST. A NOTE ON THE WALL SAYS "MAGIC WORD XYZZY".$YOU ARE IN AN AWKWARD SLOPING EAST/WEST CANYON.$YOU ARE IN A SPLENDID CHAMBER THIRTY FEET HIGH. THE WALLS ARE FROZEN RIVERS OF ORANGE STONE. AN AWKWARD CANYON AND A GOOD PASSAGE EXIT FROM EAST AND WEST SIDES OF THE CHAMBER.$AT YOUR FEET IS A SMALL PIT BREATHING TRACES OF WHITE MIST. AN EAST PASSAGE ENDS HERE EXCEPT FOR A SMALL CRACK LEADING ON.$YOU ARE AT ONE END OF A VAST HALL STRETCHING FORWARD OUT OF SIGHT TO THE WEST. THERE ARE OPENINGS TO EITHER SIDE. NEARBY, A WIDE STONE STAIRCASE LEADS DOWNWARD. THE HALL IS FILLED WITH WISPS OF WHITE MIST SWAYING TO AND FRO ALMOST AS IF ALIVE. A COLD WIND BLOWS UP THE STAIRCASE. THERE IS A PASSAGE AT THE TOP OF A DOME BEHIND YOU.$THE CRACK IS FAR TOO SMALL FOR YOU TO FOLLOW.$YOU AR E ON THE EAST BANK OF A FISSURE SLICING CLEAR ACROSS THE HALL. THE MIST IS QUITE THICK HERE, AND THE FISSURE IS TOO WIDE TO JUMP.$THIS IS A LOW ROOM WITH A CRUDE NOTE ON THE WALL. THE NOTE SAYS, "YOU WON'T GET IT UP THE STEPS".$YOU ARE IN THE HALL OF THE MOUNTAIN KING, WITH PASSAGES OFF IN ALL DIRECTIONS.$YOU ARE AT THE BOTTOM OF THE PIT WITH A BROKEN NECK.$YOU DIDN'T MAKE IT.$THE DOME IS UNCLIMBABLE.$YOU ARE AT THE WEST END OF THE TWOPIT ROOM. THERE IS A LARGE HOLE IN THE WALL ABOVE THE PIT AT THIS END OF THE ROOM.$YOU ARE AT THE BOTTOM OF THE EASTERN PIT IN THE TWOPIT ROOM. THERE IS A SMALL POOL OF OIL IN ONE CORNER OF THE PIT.$YOU ARE AT THE BOTTOM OF THE WESTERN PIT IN THE TWOPIT ROOM. THERE IS A LARGE HOLE IN THE WALL ABOUT 25 FEET ABOVE YOU.$YOU CLAMBER UP THE PLANT AND SCURRY THROUGH THE HOLE AT THE TOP.$YOU ARE ON THE WEST SIDE OF THE FISSURE IN THE HALL OF MISTS.$YOU ARE IN A LOW N/S PASSAGE AT A HOLE IN THE FLOOR. THE HOLE GOES DOWN TO AN E/W PASSAGE.$YOU ARE IN THE SOUTH SIDE CHAMB MAZE OF TWISTY LITTLE PASSAGES, ALL ALIKE.$DEAD END$YOU ARE IN A MAZE OF TWISTY LITTLE PASSAGES, ALL ALIKE.$DEAD END$YOU ARE ON THE BRINK OF A THIRTY FOOT PIT WITH A MASSIVE ORANGE COLUMN DOWN ONE WALL. YOU COULD CLIMB DOWN HERE BUT YOU COULD NOT GET BACK UP. THE MAZE CONTINUES AT THIS LEVEL.$DEAD END$YOU HAVE CRAWLED THROUGH A VERY LOW WIDE PASSAGE PARALLEL TO AND NORTH OF THE HALL OF MISTS.$YOU ARE AT THE EAST END OF A VERY LONG HALL APPARENTLY WITHOUT SIDE CHAMBERS. TO THE EAST A LOW WIDE CRAWLWAY SLANTS UP. TO THE NORTH A ROUND TWO FOOT HOLE SLANTS DOWN$YOU ARE AT THE WEST END OF A VERY LONG FEATURELESS HALL.$THE HALL JOINS UP WITH A NARROW NORTH/SOUTH PASSAGE.$YOU ARE AT A CROSSOVER OF A HIGH N/S PASSAGE AND A LOW E/W ONE.$DEAD END$YOU ARE AT A COMPLEX JUNCTION. A LOW HANDS AND KNEES PASSAGE FROM THE NORTH JOINS A HIGHER CRAWLWAY FROM THE EAST TO MAKE A WALKING PASSAGE GOING WEST. THERE IS ALSO A LARGE ROOM ABOVE. THE AIR IS DAMP HERE.$YOU ARE IN BEDQUILT, A LONG EAST/WEST PASSAGE WITH ER.$YOU ARE IN THE WEST SIDE CHAMBER OF THE HALL OF THE MOUNTAIN KING. A PASSAGE CONTINUES WEST AND UP HERE.$>*<$YOU CAN'T GET BY THE SNAKE.$YOU ARE IN A LARGE ROOM, WITH A PASSAGE TO THE SOUTH, A PASSAGE TO THE WEST, AND A WALL OF BROKEN ROCK TO THE EAST. THERE IS A LARGE "Y2" ON A ROCK IN THE ROOM'S CENTER.$YOU ARE IN A JUMBLE OF ROCK, WITH CRACKS EVERYWHERE.$YOU'RE AT A LOW WINDOW OVERLOOKING A HUGE PIT, WHICH EXTENDS UP OUT OF SIGHT. A FLOOR IS INDISTINCTLY VISIBLE OVER 50 FEET BELOW. TRACES OF WHITE MIST COVER THE FLOOR OF THE PIT, BECOMING THICKER TO THE RIGHT. MARKS IN THE DUST AROUND THE WINDOW WOULD SEEM TO INDICATE THAT SOMEONE HAS BEEN HERE RECENTLY. DIRECTLY ACROSS THE PIT FROM YOU AND 25 FEET AWAY THERE IS A SIMILAR WINDOW LOOKING INTO A LIGHTED ROOM. A SHADOWY FIGURE CAN BE SEEN THERE PEERING BACK AT YOU.$YOU ARE IN A DIRTY BROKEN PASSAGE. TO THE EAST IS A CRAWLWAY. TO THE WEST IS A LARGE PASSAGE. ABOVE YOU IS A HOLE TO ANOTHER PASSAGE.$YOU ARE ON THE BRINK OF A SMALL CLEHOLES EVERYWHERE. TO EXPLORE AT RANDOM, SELECT NORTH, SOUTH, UP, OR DOWN.$YOU ARE IN A ROOM WHOSE WALLS RESEMBLE SWISS CHEESE. OBVIOUS PASSAGES GO WEST, EAST, NE, AND NW. PART OF THE ROOM IS OCCUPIED BY A LARGE BEDROCK BLOCK.$YOU ARE AT THE EAST END OF THE TWOPIT ROOM. THE FLOOR HERE IS LITTERED WITH THIN ROCK SLABS, WHICH MAKE IT EASY TO DESCEND THE PITS. THERE IS A PATH HERE BYPASSING THE PITS TO CONNECT PASSAGES FROM EAST AND WEST. THERE ARE HOLES ALL OVER, BUT THE ONLY BIG ONE IS ON THE WALL DIRECTLY OVER THE WEST PIT WHERE YOU CAN'T GET TO IT.$YOU ARE IN A LARGE LOW CIRCULAR CHAMBER WHOSE FLOOR IS AN IMMENSE SLAB FALLEN FROM THE CEILING (SLAB ROOM). TO THE EAST AND WEST THERE WERE ONCE LARGE PASSAGES, BUT THEY ARE NOW FILLED WITH BOULDERS. LOW SMALL PASSAGES GO NORTH AND SOUTH, AND THE SOUTH ONE QUICKLY BENDS WEST AROUND THE BOULDERS.$YOU ARE IN A SECRET N/S CANYON ABOVE A LARGE ROOM.$YOU ARE IN A SECRET N/S CANYON ABOVE A SIZABLE PASSAGE.$YOU ARE IN A SECRET CANYON AT A JUNCTION OF THAN CLIMBABLE PIT. A CRAWLWAY LEADS WEST.$YOU ARE IN THE BOTTOM OF A SMALL PIT WITH A LITTLE STREAM, WHICH ENTERS AND EXITS THROUGH TINY SLITS.$YOU ARE IN A LARGE ROOM FULL OF DUSTY ROCKS. THERE IS A BIG HOLE IN THE FLOOR. THERE ARE CRACKS EVERYWHERE, AND A PASSAGE LEADING EAST.$YOU HAVE CRAWLED THROUGH A VERY LOW WIDE PASSAGE PARALLEL TO AND NORTH OF THE HALL OF MISTS.$YOU ARE AT THE WEST END OF HALL OF MISTS. A LOW WIDE CRAWLWAY CONTINUES WEST AND ANOTHER GOES NORTH. TO THE SOUTH IS A LITTLE PASSAGE 6 FEET OFF THE FLOOR.$YOU ARE IN A MAZE OF TWISTY LITTLE PASSAGES, ALL ALIKE.$YOU ARE IN A MAZE OF TWISTY LITTLE PASSAGES, ALL ALIKE.$YOU ARE IN A MAZE OF TWISTY LITTLE PASSAGES, ALL ALIKE.$YOU ARE IN A MAZE OF TWISTY LITTLE PASSAGES, ALL ALIKE.$DEAD END$DEAD END$DEAD END$YOU ARE IN A MAZE OF TWISTY LITTLE PASSAGES, ALL ALIKE.$YOU ARE IN A MAZE OF TWISTY LITTLE PASSAGES, ALL ALIKE.$YOU ARE IN A MAZE OF TWISTY LITTLE PASSAGES, ALL ALIKE.$YOU ARE IN A MAZE OF TWISTY LITTLE PASSAGES, ALL ALIKE.$YOU ARE IN A REE CANYONS, BEARING NORTH, SOUTH, AND SE. THE NORTH ONE IS AS TALL AS THE OTHER TWO COMBINED.$YOU ARE IN A LARGE LOW ROOM. CRAWLWAYS LEAD NORTH, SE, AND SW.$DEAD END CRAWLWAY.$YOU ARE IN A SECRET CANYON WHICH HERE RUNS E/W. IT CROSSES OVER A VERY TIGHT CANYON 15 FEET BELOW. IF YOU GO DOWN YOU MAY NOT BE ABLE TO GET BACK UP.$YOU ARE AT A WIDE PLACE IN A VERY TIGHT N/S CANYON.$THE CANYON HERE BECOMES TOO TIGHT TO GO FURTHER SOUTH.$YOU ARE IN A TALL E/W CANYON. A LOW TIGHT CRAWLWAY GOES 3 FEET NORTH AND SEEMS TO OPEN UP.$THE CANYON RUNS INTO A MASS OF BOULDERS -- DEAD END.$THE STREAM FLOWS OUT THROUGH A PAIR OF 1 FOOT DIAMETER SEWER PIPES. IT WOULD BE ADVISABLE TO USE THE EXIT.$YOU ARE IN A MAZE OF TWISTY LITTLE PASSAGES, ALL ALIKE.$DEAD END$DEAD END$YOU ARE IN A MAZE OF TWISTY LITTLE PASSAGES, ALL ALIKE.$YOU ARE IN A MAZE OF TWISTY LITTLE PASSAGES, ALL ALIKE.$DEAD END$DEAD END$YOU ARE IN A MAZE OF TWISTY LITTLE PASSAGES, ALL ALIKE.$YOU ARE IN A LONG, NARROW CORRIDOR STRETCHING OUT OF SIGHT TO THE WEED OUT OF SEDIMENTARY ROCK. THE FLOOR AND WALLS ARE LITTERED WITH BITS OF SHELLS IMBEDDED IN THE STONE. A SHALLOW PASSAGE PROCEEDS DOWNWARD, AND A SOMEWHAT STEEPER ONE LEADS UP. A LOW HAND AND KNEES PASSAGE ENTERS FROM THE SOUTH.$YOU ARE IN A LONG SLOPING CORRIDOR WITH RAGGED SHARP WALLS.$YOU ARE IN A CUL-DE-SAC ABOUT EIGHT FEET ACROSS.$YOU ARE IN AN ANTEROOM LEADING TO A LARGE PASSAGE TO THE EAST. SMALL PASSAGES GO WEST AND UP. THE REMNANTS OF RECENT DIGGING ARE EVIDENT. A SIGN IN MIDAIR HERE SAYS "CAVE UNDER CONSTRUCTION BEYOND THIS POINT. PROCEED AT OWN RISK. [WITT CONSTRUCTION COMPANY]"$YOU ARE IN A MAZE OF TWISTY LITTLE PASSAGES, ALL DIFFERENT.$YOU ARE AT WITT'S END. PASSAGES LEAD OFF IN *ALL* DIRECTIONS.$YOU ARE IN A NORTH/SOUTH CANYON ABOUT 25 FEET ACROSS. THE FLOOR IS COVERED BY WHITE MIST SEEPING IN FROM THE NORTH. THE WALLS EXTEND UPWARD FOR WELL OVER 100 FEET. SUSPENDED FROM SOME UNSEEN POINT FAR ABOVE YOU, AN ENORMOUS TWO-SIDED MIRROR IS HANGING PARALLEL TO AND MIDWAY BETWEEST. AT THE EASTERN END IS A HOLE THROUGH WHICH YOU CAN SEE A PROFUSION OF LEAVES.$THERE IS NOTHING HERE TO CLIMB. USE "UP" OR "OUT" TO LEAVE THE PIT.$YOU HAVE CLIMBED UP THE PLANT AND OUT OF THE PIT.$YOU ARE AT THE TOP OF A STEEP INCLINE ABOVE A LARGE ROOM. YOU COULD CLIMB DOWN HERE, BUT YOU WOULD NOT BE ABLE TO CLIMB UP. THERE IS A PASSAGE LEADING BACK TO THE NORTH.$YOU ARE IN THE GIANT ROOM. THE CEILING HERE IS TOO HIGH UP FOR YOUR LAMP TO SHOW IT. CAVERNOUS PASSAGES LEAD EAST, NORTH, AND SOUTH. ON THE WEST WALL IS SCRAWLED THE INSCRIPTION, "FEE FIE FOE FOO" [SIC].$THE PASSAGE HERE IS BLOCKED BY A RECENT CAVE-IN.$YOU ARE AT ONE END OF AN IMMENSE NORTH/SOUTH PASSAGE.$YOU ARE IN A MAGNIFICENT CAVERN WITH A RUSHING STREAM, WHICH CASCADES OVER A SPARKLING WATERFALL INTO A ROARING WHIRLPOOL WHICH DISAPPEARS THROUGH A HOLE IN THE FLOOR. PASSAGES EXIT TO THE SOUTH AND WEST.$YOU ARE IN THE SOFT ROOM. THE WALLS ARE COVERED WITH HEAVY CURTAINS, THE FLOOR WITH A THICK PILE CARPET. MOSS COVERS THE CN THE CANYON WALLS. (THE MIRROR IS OBVIOUSLY PROVIDED FOR THE USE OF THE DWARVES, WHO AS YOU KNOW, ARE EXTREMELY VAIN.) A SMALL WINDOW CAN BE SEEN IN EITHER WALL, SOME FIFTY FEET UP.$YOU'RE AT A LOW WINDOW OVERLOOKING A HUGE PIT, WHICH EXTENDS UP OUT OF SIGHT. A FLOOR IS INDISTINCTLY VISIBLE OVER 50 FEET BELOW. TRACES OF WHITE MIST COVER THE FLOOR OF THE PIT, BECOMING THICKER TO THE LEFT. MARKS IN THE DUST AROUND THE WINDOW WOULD SEEM TO INDICATE THAT SOMEONE HAS BEEN HERE RECENTLY. DIRECTLY ACROSS THE PIT FROM YOU AND 25 FEET AWAY THERE IS A SIMILAR WINDOW LOOKING INTO A LIGHTED ROOM. A SHADOWY FIGURE CAN BE SEEN THERE PEERING BACK AT YOU.$A LARGE STALACTITE EXTENDS FROM THE ROOF AND ALMOST REACHES THE FLOOR BELOW. YOU COULD CLIMB DOWN IT, AND JUMP FROM IT TO THE FLOOR, BUT HAVING DONE SO YOU WOULD BE UNABLE TO REACH IT TO CLIMB BACK UP.$YOU ARE IN A LITTLE MAZE OF TWISTING PASSAGES, ALL DIFFERENT.$YOU ARE AT THE EDGE OF A LARGE UNDERGROUND RESERVOIR. AN OPAQUE CLOUD OF WHITE MIST FILLS EILING.$THIS IS THE ORIENTAL ROOM. ANCIENT ORIENTAL CAVE DRAWINGS COVER THE WALLS. A GENTLY SLOPING PASSAGE LEADS UPWARD TO THE NORTH, ANOTHER PASSAGE LEADS SE, AND A HANDS AND KNEES CRAWLWAY LEADS WEST.$YOU ARE FOLLOWING A WIDE PATH AROUND THE OUTER EDGE OF A LARGE CAVERN. FAR BELOW, THROUGH A HEAVY WHITE MIST, STRANGE SPLASHING NOISES CAN BE HEARD. THE MIST RISES UP THROUGH A FISSURE IN THE CEILING. THE PATH EXITS TO THE SOUTH AND WEST.$YOU ARE IN AN ALCOVE. A SMALL NW PATH SEEMS TO WIDEN AFTER A SHORT DISTANCE. AN EXTREMELY TIGHT TUNNEL LEADS EAST. IT LOOKS LIKE A VERY TIGHT SQUEEZE. AN EERIE LIGHT CAN BE SEEN AT THE OTHER END.$YOU'RE IN A SMALL CHAMBER LIT BY AN EERIE GREEN LIGHT. AN EXTREMELY NARROW TUNNEL EXITS TO THE WEST. A DARK CORRIDOR LEADS NE.$YOU'RE IN THE DARK-ROOM. A CORRIDOR LEADING SOUTH IS THE ONLY EXIT.$YOU ARE IN AN ARCHED HALL. A CORAL PASSAGE ONCE CONTINUED UP AND EAST FROM HERE, BUT IS NOW BLOCKED BY DEBRIS. THE AIR SMELLS OF SEA WATER.$YOU'RE IN A LARGE ROOM CARV THE ROOM AND RISES RAPIDLY UPWARD. THE LAKE IS FED BY A STREAM, WHICH TUMBLES OUT OF A HOLE IN THE WALL ABOUT 10 FEET OVERHEAD AND SPLASHES NOISILY INTO THE WATER SOMEWHERE WITHIN THE MIST. THE ONLY PASSAGE GOES BACK TOWARD THE SOUTH.$DEAD END$YOU ARE AT THE NORTHEAST END OF AN IMMENSE ROOM, EVEN LARGER THAN THE GIANT ROOM. IT APPEARS TO BE A REPOSITORY FOR THE "ADVENTURE" PROGRAM. MASSIVE TORCHES FAR OVERHEAD BATHE THE ROOM WITH SMOKEY YELLOW LIGHT. SCATTERED ABOUT YOU CAN BE SEEN A PILE OF BOTTLES (ALL EMPTY), A NURSERY OF YOUNG BEANSTALKS MURMURING QUIETLY, A BED OF OYSTERS, A BUNDLE OF BLACK RODS WITH RUSTY STARS ON THEIR ENDS,AND A COLLECTION OF BRASS LANTERNS. OFF TO ONE SIDE A GREAT MANY DWARVES ARE SLEEPING ON THE FLOOR, SNORING LOUDLY. A SIGN NEARBY READS: "DO NOT DISTURB THE DWARVES!" AN IMMENSE MIRROR IS HANGING AGAINST ONE WALL, AND STRETCHES TO THE OTHER END OF THE ROOM, WHERE VARIOUS OTHER SUNDRY OBJECTS CAN BE GLIMPSED DIMLY IN THE DISTANCE.$YOU ARE AT THE SOUTHWEST ENAD TWISTED FORMATIONS COMPOSED OF PURE WHITE ALABASTER, WHICH SCATTER THE MURKY LIGHT INTO SINISTER APPARITIONS UPON THE WALLS. TO ONE SIDE IS A DEEP GORGE, FILLED WITH A BIZARRE CHAOS OF TORTURED ROCK WHICH SEEMS TO HAVE BEEN CRAFTED BY THE DEVIL HIMSELF. AN IMMENSE RIVER OF FIRE CRASHES OUT FROM THE DEPTHS OF THE VOLCANO, BURNS ITS WAY THROUGH THE GORGE, AND PLUMMETS INTO A BOTTOMLESS PIT FAR OFF TO YOUR LEFT. TO THE RIGHT, AN IMMENSE GEYSER OF BLISTERING STEAM ERUPTS CONTINUOUSLY FROM A BARREN ISLAND IN THE CENTER OF A SULFUROUS LAKE, WHICH BUBBLES OMINOUSLY. THE FAR RIGHT WALL IS AFLAME WITH AN INCANDESCENCE OF ITS OWN, WHICH LENDS AN AN ADDITIONAL INFERNAL SPLENDOR TO THE ALREADY HELLISH SCENE. A DARK, FOREBODING PASSAGE EXITS TO THE SOUTH.$YOU ARE IN A SMALL CHAMBER FILLED WITH LARGE BOULDERS. THE WALLS ARE VERY WARM, CAUSING THE AIR IN THE ROOM TO BE ALMOST STIFLING FROM THE HEAT. THE ONLY EXIT IS A CRAWLWAY HEADING WEST, THROUGH WHICH IS COMING A LOW RUMBLING.$YOU ARE WALKING AD OF THE REPOSITORY. TO ONE SIDE IS A PIT FULL OF FIERCE GREEN SNAKES. ON THE OTHER SIDE IS A ROW OF SMALL WICKER CAGES, EACH OF WHICH CONTAINS A LITTLE SULKING BIRD. IN ONE CORNER IS A BUNDLE OF BLACK RODS WITH RUSTY MARKS ON THEIR ENDS. A LARGE NUMBER OF VELVET PILLOWS ARE SCATTERED ABOUT ON THE FLOOR. A VAST MIRROR STRETCHES OFF TO THE NORTHEAST. AT YOUR FEET IS A LARGE STEEL GRATE, NEXT TO WHICH IS A SIGN WHICH READS, "TREASURE VAULT. KEYS IN MAIN OFFICE."$YOU ARE ON ONE SIDE OF A LARGE, DEEP CHASM. A HEAVY WHITE MIST RISING UP FROM BELOW OBSCURES ALL VIEW OF THE FAR SIDE. A SW PATH LEADS AWAY FROM THE CHASM INTO A WINDING CORRIDOR.$YOU ARE IN A LONG WINDING CORRIDOR SLOPING OUT OF SIGHT IN BOTH DIRECTIONS.$YOU ARE IN A SECRET CANYON WHICH EXITS TO THE NORTH AND EAST.$YOU ARE IN A SECRET CANYON WHICH EXITS TO THE NORTH AND EAST.$YOU ARE IN A SECRET CANYON WHICH EXITS TO THE NORTH AND EAST.$YOU ARE ON THE FAR SIDE OF THE CHASM. A NE PATH LEADS AWAY FROM THE CHASM ON THIS SIDE.$YOU'LONG A GENTLY SLOPING NORTH/SOUTH PASSAGE LINED WITH ODDLY SHAPED LIMESTONE FORMATIONS.$YOU ARE STANDING AT THE ENTRANCE TO A LARGE, BARREN ROOM. A SIGN POSTED ABOVE THE ENTRANCE READS: "CAUTION! BEAR IN ROOM!"$YOU ARE INSIDE A BARREN ROOM. THE CENTER OF THE ROOM IS COMPLETELY EMPTY EXCEPT FOR SOME DUST. MARKS IN THE DUST LEAD AWAY TOWARD THE FAR END OF THE ROOM. THE ONLY EXIT IS THE WAY YOU CAME IN.$YOU ARE IN A MAZE OF TWISTING LITTLE PASSAGES, ALL DIFFERENT.$YOU ARE IN A LITTLE MAZE OF TWISTY PASSAGES, ALL DIFFERENT.$YOU ARE IN A TWISTING MAZE OF LITTLE PASSAGES, ALL DIFFERENT.$YOU ARE IN A TWISTING LITTLE MAZE OF PASSAGES, ALL DIFFERENT.$YOU ARE IN A TWISTY LITTLE MAZE OF PASSAGES, ALL DIFFERENT.$YOU ARE IN A TWISTY MAZE OF LITTLE PASSAGES, ALL DIFFERENT.$YOU ARE IN A LITTLE TWISTY MAZE OF PASSAGES, ALL DIFFERENT.$YOU ARE IN A MAZE OF LITTLE TWISTING PASSAGES, ALL DIFFERENT.$YOU ARE IN A MAZE OF LITTLE TWISTY PASSAGES, ALL DIFFERENT.$DEAD END$$YOU'RE AT END OF ROAD AGAIN.$YOU'RE AT RE IN A LONG EAST/WEST CORRIDOR. A FAINT RUMBLING NOISE CAN BE HEARD IN THE DISTANCE.$THE PATH FORKS HERE. THE LEFT FORK LEADS NORTHEAST. A DULL RUMBLING SEEMS TO GET LOUDER IN THAT DIRECTION. THE RIGHT FORK LEADS SOUTHEAST DOWN A GENTLE SLOPE. THE MAIN CORRIDOR ENTERS FROM THE WEST.$THE WALLS ARE QUITE WARM HERE. FROM THE NORTH CAN BE HEARD A STEADY ROAR, SO LOUD THAT THE ENTIRE CAVE SEEMS TO BE TREMBLING. ANOTHER PASSAGE LEADS SOUTH, AND A LOW CRAWLWAY GOES EAST.$YOU ARE ON THE EDGE OF A BREATH-TAKING VIEW. FAR BELOW YOU IS AN ACTIVE VOLCANO, FROM WHICH GREAT GOUTS OF MOLTEN LAVA COME SURGING OUT, CASCADING BACK DOWN INTO THE DEPTHS. THE GLOWING ROCK FILLS THE FARTHEST REACHES OF THE CAVERN WITH A BLOOD-RED GLARE, GIVING EVERY-THING AN EERIE, MACABRE APPEARANCE. THE AIR IS FILLED WITH FLICKERING SPARKS OF ASH AND A HEAVY SMELL OF BRIMSTONE. THE WALLS ARE HOT TO THE TOUCH, AND THE THUNDERING OF THE VOLCANO DROWNS OUT ALL OTHER SOUNDS. EMBEDDED IN THE JAGGED ROOF FAR OVERHEAD ARE MYRI HILL IN ROAD.$YOU'RE INSIDE BUILDING.$YOU'RE IN VALLEY.$YOU'RE IN FOREST.$YOU'RE IN FOREST.$YOU'RE AT SLIT IN STREAMBED.$YOU'RE OUTSIDE GRATE.$YOU'RE BELOW THE GRATE.$YOU'RE IN COBBLE CRAWL.$YOU'RE IN DEBRIS ROOM.$YOU'RE IN BIRD CHAMBER.$YOU'RE AT TOP OF SMALL PIT.$YOU'RE IN HALL OF MISTS.$YOU'RE ON EAST BANK OF FISSURE.$YOU'RE IN NUGGET OF GOLD ROOM.$YOU'RE IN HALL OF MT. KING.$YOU'RE AT WEST END OF TWOPIT ROOM.$YOU'RE IN EAST PIT.$YOU'RE IN WEST PIT.$YOU'RE AT "Y2".$YOU'RE AT WINDOW ON PIT.$YOU'RE IN DIRTY PASSAGE.$YOU'RE IN DUSTY ROCK ROOM.$YOU'RE AT WEST END OF HALL OF MISTS.$YOU'RE AT BRINK OF PIT.$YOU'RE AT EAST END OF LONG HALL.$YOU'RE AT WEST END OF LONG HALL.$YOU'RE AT COMPLEX JUNCTION.$YOU'RE IN SWISS CHEESE ROOM.$YOU'RE AT EAST END OF TWOPIT ROOM.$YOU'RE IN SLAB ROOM.$YOU'RE AT JUNCTION OF THREE SECRET CANYONS.$YOU'RE IN SECRET E/W CANYON ABOVE TIGHT CANYON.$YOU'RE IN NARROW CORRIDOR.$YOU'RE AT STEEP INCLINE ABOVE LARGE ROOM.$YOU'RE IN GIANT ROOM.$YOU'RE IN CAVERN WITH WATERFALL.$YOU'RE IN SOFT ROOLL BOTTLE$THERE IS A BOTTLE OF WATER HERE.$THERE IS AN EMPTY BOTTLE HERE.$THERE IS A BOTTLE OF OIL HERE.$WATER IN THE BOTTLE$OIL IN THE BOTTLE$*MIRROR$>*<$*PLANT$THERE IS A TINY LITTLE PLANT IN THE PIT, MURMURING "WATER, WATER, ..."$THE PLANT SPURTS INTO FURIOUS GROWTH FOR A FEW SECONDS.$THERE IS A 12-FOOT-TALL BEANSTALK STRETCHING UP OUT OF THE PIT, BELLOWING "WATER!! WATER!!"$THE PLANT GROWS EXPLOSIVELY, ALMOST FILLING THE BOTTOM OF THE PIT.$THERE IS A GIGANTIC BEANSTALK STRETCHING ALL THE WAY UP TO THE HOLE.$YOU'VE OVER-WATERED THE PLANT! IT'S SHRIVELING UP! IT'S, IT'S...$*PHONY PLANT (SEEN IN TWOPIT ROOM ONLY WHEN TALL ENOUGH)$>*<$THE TOP OF A 12-FOOT-TALL BEANSTALK IS POKING OUT OF THE WEST PIT.$THERE IS A HUGE BEANSTALK GROWING OUT OF THE WEST PIT UP TO THE HOLE.$*STALACTITE$>*<$*SHADOWY FIGURE$THE SHADOWY FIGURE SEEMS TO BE TRYING TO ATTRACT YOUR ATTENTION.$DWARF'S AXE$THERE IS A LITTLE AXE HERE.$THERE IS A LITTLE AXE LYING BESIDE THE BEAR.$*CAVE DRAWINGS$>*<$*PIRATE$>*<$*DRAGON$A HUGE GREEN FIM.$YOU'RE IN ORIENTAL ROOM.$YOU'RE IN MISTY CAVERN.$YOU'RE IN ALCOVE.$YOU'RE IN PLOVER ROOM.$YOU'RE IN DARK-ROOM.$YOU'RE IN ARCHED HALL.$YOU'RE IN SHELL ROOM.$YOU'RE IN ANTEROOM.$YOU'RE AT WITT'S END.$YOU'RE IN MIRROR CANYON.$YOU'RE AT WINDOW ON PIT.$YOU'RE AT TOP OF STALACTITE.$YOU'RE AT RESERVOIR.$YOU'RE AT NE END.$YOU'RE AT SW END.$YOU'RE ON SW SIDE OF CHASM.$YOU'RE IN SLOPING CORRIDOR.$YOU'RE ON NE SIDE OF CHASM.$YOU'RE IN CORRIDOR.$YOU'RE AT FORK IN PATH.$YOU'RE AT JUNCTION WITH WARM WALLS.$YOU'RE AT BREATH-TAKING VIEW.$YOU'RE IN CHAMBER OF BOULDERS.$YOU'RE IN LIMESTONE PASSAGE.$YOU'RE IN FRONT OF BARREN ROOM.$YOU'RE IN BARREN ROOM.$$SET OF KEYS$THERE ARE SOME KEYS ON THE GROUND HERE.$BRASS LANTERN$THERE IS A SHINY BRASS LAMP NEARBY.$THERE IS A LAMP SHINING NEARBY.$*GRATE$THE GRATE IS LOCKED.$THE GRATE IS OPEN.$WICKER CAGE$THERE IS A SMALL WICKER CAGE DISCARDED NEARBY.$BLACK ROD$A THREE FOOT BLACK ROD WITH A RUSTY STAR ON AN END LIES NEARBY.$BLACK ROD$A THREE FOOT BLACK ROD WITH A RUSTY MARK ON AN END ERCE DRAGON BARS THE WAY!$CONGRATULATIONS! YOU HAVE JUST VANQUISHED A DRAGON WITH YOUR BARE HANDS! (UNBELIEVABLE, ISN'T IT?)$THE BODY OF A HUGE GREEN DEAD DRAGON IS LYING OFF TO ONE SIDE.$*CHASM$A RICKETY WOODEN BRIDGE EXTENDS ACROSS THE CHASM, VANISHING INTO THE MIST. A SIGN POSTED ON THE BRIDGE READS, "STOP! PAY TROLL!"$THE WRECKAGE OF A BRIDGE (AND A DEAD BEAR) CAN BE SEEN AT THE BOTTOM OF THE CHASM.$*TROLL$A BURLY TROLL STANDS BY THE BRIDGE AND INSISTS YOU THROW HIM A TREASURE BEFORE YOU MAY CROSS.$THE TROLL STEPS OUT FROM BENEATH THE BRIDGE AND BLOCKS YOUR WAY.$>*< (CHASED AWAY)$*PHONY TROLL$THE TROLL IS NOWHERE TO BE SEEN$>*< (BEAR USES RTEXT 141)$THERE IS A FEROCIOUS CAVE BEAR EYING YOU FROM THE FAR END OF THE ROOM!$THERE IS A GENTLE CAVE BEAR SITTING PLACIDLY IN ONE CORNER.$THERE IS A CONTENTED-LOOKING BEAR WANDERING ABOUT NEARBY.$>*< (DEAD)$*MESSAGE IN SECOND MAZE$THERE IS A MESSAGE SCRAWLED IN THE DUST IN A FLOWERY SCRIPT, READING: "THIS IS NOT THE MAZE WHERE THE PIRATE LEAVES HIS TREASLIES NEARBY.$*STEPS$ROUGH STONE STEPS LEAD DOWN THE PIT.$ROUGH STONE STEPS LEAD UP THE DOME.$LITTLE BIRD IN CAGE$A CHEERFUL LITTLE BIRD IS SITTING HERE SINGING.$THERE IS A LITTLE BIRD IN THE CAGE.$*RUSTY DOOR$THE WAY NORTH IS BARRED BY A MASSIVE, RUSTY, IRON DOOR.$THE WAY NORTH LEADS THROUGH A MASSIVE, RUSTY, IRON DOOR.$VELVET PILLOW$A SMALL VELVET PILLOW LIES ON THE FLOOR.$*SNAKE$A HUGE GREEN FIERCE SNAKE BARS THE WAY!$>*< (CHASED AWAY)$*FISSURE$>*<$A CRYSTAL BRIDGE NOW SPANS THE FISSURE.$THE CRYSTAL BRIDGE HAS VANISHED!$*STONE TABLET$A MASSIVE STONE TABLET IMBEDDED IN THE WALL READS: "CONGRATULATIONS ON BRINGING LIGHT INTO THE DARK-ROOM!"$GIANT CLAM >GRUNT!<$THERE IS AN ENORMOUS CLAM HERE WITH ITS SHELL TIGHTLY CLOSED.$GIANT OYSTER >GROAN!<$THERE IS AN ENORMOUS OYSTER HERE WITH ITS SHELL TIGHTLY CLOSED.$INTERESTING. THERE SEEMS TO BE SOMETHING WRITTEN ON THE UNDERSIDE OFTHE OYSTER.$"SPELUNKER TODAY"$THERE ARE A FEW RECENT ISSUES OF "SPELUNKER TODAY" MAGAZINE HERE.$TASTY FOOD$THERE IS FOOD HERE.$SMAURE CHEST."$*VOLCANO AND/OR GEYSER$>*<$*VENDING MACHINE$THERE IS A MASSIVE VENDING MACHINE HERE. THE INSTRUCTIONS ON IT READ: "DROP COINS HERE TO RECEIVE FRESH BATTERIES."$BATTERIES$THERE ARE FRESH BATTERIES HERE.$SOME WORN-OUT BATTERIES HAVE BEEN DISCARDED NEARBY.$*CARPET AND/OR MOSS$>*<$LARGE GOLD NUGGET$THERE IS A LARGE SPARKLING NUGGET OF GOLD HERE!$SEVERAL DIAMONDS$THERE ARE DIAMONDS HERE!$BARS OF SILVER$THERE ARE BARS OF SILVER HERE!$PRECIOUS JEWELRY$THERE IS PRECIOUS JEWELRY HERE!$RARE COINS$THERE ARE MANY COINS HERE!$TREASURE CHEST$THE PIRATE'S TREASURE CHEST IS HERE!$GOLDEN EGGS$THERE IS A LARGE NEST HERE, FULL OF GOLDEN EGGS!$THE NEST OF GOLDEN EGGS HAS VANISHED!$DONE!$JEWELED TRIDENT$THERE IS A JEWEL-ENCRUSTED TRIDENT HERE!$MING VASE$THERE IS A DELICATE, PRECIOUS, MING VASE HERE!$THE VASE IS NOW RESTING, DELICATELY, ON A VELVET PILLOW.$THE FLOOR IS LITTERED WITH WORTHLESS SHARDS OF POTTERY.$THE MING VASE DROPS WITH A DELICATE CRASH.$EGG SIZED EMERALD$THERE IS AN EMERALD HERE THE SIZE OF A PLOVERD YOU CANNOT CATCH IT NO MATTER WHAT YOU TRY. PERHAPS YOU MIGHT TRY LATER.$ARE YOU TRYING TO SOMEHOW DEAL WITH THE SNAKE?$YOU CAN'T KILL THE SNAKE, OR DRIVE IT AWAY, OR AVOID IT, OR ANYTHING LIKE THAT. THERE IS A WAY TO GET BY, BUT YOU DON'T HAVE THE NECESSARY RESOURCES RIGHT NOW.$DO YOU REALLY WANT TO QUIT NOW?$YOU FELL INTO A PIT AND BROKE EVERY BONE IN YOUR BODY!$YOU ARE ALREADY CARRYING IT.$YOU CAN'T BE SERIOUS!$THE BIRD WAS UNAFRAID WHEN YOU ENTERED, BUT AS YOU APPROACH IT BECOMES DISTURBED AND YOU CANNOT CATCH IT.$YOU CAN CATCH THE BIRD, BUT YOU CANNOT CARRY IT.$THERE IS NOTHING HERE WITH A LOCK!$YOU AREN'T CARRYING IT!$THE LITTLE BIRD ATTACKS THE GREEN SNAKE, AND IN AN ASTOUNDING FLURRY DRIVES THE SNAKE AWAY.$YOU HAVE NO KEYS!$IT HAS NO LOCK.$I DON'T KNOW HOW TO LOCK OR UNLOCK SUCH A THING.$IT WAS ALREADY LOCKED.$THE GRATE IS NOW LOCKED.$THE GRATE IS NOW UNLOCKED.$IT WAS ALREADY UNLOCKED.$YOU HAVE NO SOURCE OF LIGHT.$YOUR LAMP IS NOW ON.$YOUR LAMP IS NOW OFF.$THERE IS NO WAY TO GET PAST THE BEAR'S EGG!$PLATINUM PYRAMID$THERE IS A PLATINUM PYRAMID HERE, 8 INCHES ON A SIDE!$GLISTENING PEARL$OFF TO ONE SIDE LIES A GLISTENING PEARL!$PERSIAN RUG$THERE IS A PERSIAN RUG SPREAD OUT ON THE FLOOR!$THE DRAGON IS SPRAWLED OUT ON A PERSIAN RUG!!$RARE SPICES$THERE ARE RARE SPICES HERE!$GOLDEN CHAIN$THERE IS A GOLDEN CHAIN LYING IN A HEAP ON THE FLOOR!$THE BEAR IS LOCKED TO THE WALL WITH A GOLDEN CHAIN!$THERE IS A GOLDEN CHAIN LOCKED TO THE WALL!$$SOMEWHERE NEARBY IS COLOSSAL CAVE, WHERE OTHERS HAVE FOUND FORTUNES IN TREASURE AND GOLD, THOUGH IT IS RUMORED THAT SOME WHO ENTER ARE NEVER SEEN AGAIN. MAGIC IS SAID TO WORK IN THE CAVE. I WILL BE YOUR EYES AND HANDS. DIRECT ME WITH COMMANDS OF 1 OR 2 WORDS. I SHOULD WARN YOU THAT I LOOK AT ONLY THE FIRST FIVE LETTERS OF EACH WORD, SO YOU'LL HAVE TO ENTER "NORTHEAST" AS "NE" TO DISTINGUISH IT FROM "NORTH". (SHOULD YOU GET STUCK, TYPE "HELP" FOR SOME GENERAL HINTS. FOR INFOR- MATION ON HOW TO END YOUR ADVENTURE, ETC., TYPE "INFO".) - - -  TO UNLOCK THE CHAIN, WHICH IS PROBABLY JUST AS WELL.$NOTHING HAPPENS$WHERE?$THERE IS NOTHING HERE TO ATTACK.$THE LITTLE BIRD IS NOW DEAD. ITS BODY DISAPPEARS.$ATTACKING THE SNAKE BOTH DOESN'T WORK AND IS VERY DANGEROUS.$YOU KILLED A LITTLE DWARF.$YOU ATTACK A LITTLE DWARF, BUT HE DODGES OUT OF THE WAY.$WITH WHAT? YOUR BARE HANDS?$GOOD TRY, BUT THAT IS AN OLD WORN-OUT MAGIC WORD.$I KNOW OF PLACES, ACTIONS, AND THINGS. MOST OF MY VOCABULARY DESCRIBES PLACES AND IS USED TO MOVE YOU THERE. TO MOVE, TRY WORDS LIKE FOREST, BUILDING, DOWNSTREAM, ENTER, EAST, WEST, NORTH, SOUTH, UP, OR DOWN. I KNOW ABOUT A FEW SPECIAL OBJECTS, LIKE A BLACK ROD HIDDEN IN THE CAVE. THESE OBJECTS CAN BE MANIPULATED USING SOME OF THE ACTION WORDS THAT I KNOW. USUALLY YOU WILL NEED TO GIVE BOTH THE OBJECT AND ACTION WORDS (IN EITHER ORDER), BUT SOMETIMES I CAN INFER THE OBJECT FROM THE VERB ALONE. SOME OBJECTS ALSO IMPLY VERBS; IN PARTICULAR, "INVENTORY" IMPLIES "TAKE INVENTORY", WHICH CAUSES ME TO GIVE YOU A LIST OFTHIS VERSION IMPLEMENTED BY CHUCK CRAYNE FEEDBACK REQUESTED.$A LITTLE DWARF WITH A BIG KNIFE BLOCKS YOUR WAY.$A LITTLE DWARF JUST WALKED AROUND A CORNER, SAW YOU, THREW A LITTLE AXE AT YOU WHICH MISSED, CURSED, AND RAN AWAY.$THERE IS A THREATENING LITTLE DWARF IN THE ROOM WITH YOU!$ONE SHARP NASTY KNIFE IS THROWN AT YOU!$NONE OF THEM HIT YOU!$ONE OF THEM GETS YOU!$A HOLLOW VOICE SAYS "PLUGH".$THERE IS NO WAY TO GO IN THAT DIRECTION.$I AM UNSURE HOW YOU ARE FACING. USE COMPASS POINTS OR NEARBY OBJECTS.$I DON'T KNOW IN FROM OUT HERE. USE COMPASS POINTS OR NAME SOMETHING IN THE GENERAL DIRECTION YOU WANT TO GO.$I DON'T KNOW HOW TO APPLY THAT WORD HERE.$I DON'T UNDERSTAND THAT!$I'M GAME. WOULD YOU CARE TO EXPLAIN HOW?$SORRY, BUT I AM NOT ALLOWED TO GIVE MORE DETAIL. I WILL REPEAT THE LONG DESCRIPTION OF YOUR LOCATION.$IT IS NOW PITCH DARK. IF YOU PROCEED YOU WILL LIKELY FALL INTO A PIT.$IF YOU PREFER, SIMPLY TYPE W RATHER THAN WEST.$ARE YOU TRYING TO CATCH THE BIRD?$THE BIRD IS FRIGHTENED RIGHT NOW AN WHAT YOU'RE CARRYING. THE OBJECTS HAVE SIDE EFFECTS: FOR INSTANCE, THE ROD SCARES THE BIRD. USUALLY PEOPLE HAVING TROUBLE MOVING JUST NEED TO TRY A FEW MORE WORDS. USUALLY PEOPLE TRYING UNSUCCESSFULLY TO MANIPULATE AN OBJECT ARE ATTEMPTING SOMETHING BEYOND THEIR (OR MY!) CAPABILITIES AND SHOULD TRY A COMPLETELY DIFFERENT TACK. TO SPEED THE GAME YOU CAN SOMETIMES MOVE LONG DISTANCES WITH A SINGLE WORD. FOR EXAMPLE, "BUILDING" USUALLY GETS YOU TO THE BUILDING FROM ANYWHERE ABOVE GROUND EXCEPT WHEN LOST IN THE FOREST. ALSO, NOTE THAT CAVE PASSAGES TURN A LOT, AND THAT LEAVING A ROOM TO THE NORTH DOES NOT GUARANTEE ENTERING THE NEXT FROM THE SOUTH. GOOD LUCK!$IT MISSES!$IT GETS YOU!$OK$YOU CAN'T UNLOCK THE KEYS.$YOU HAVE CRAWLED AROUND IN SOME LITTLE HOLES AND WOUND UP BACK IN THE MAIN PASSAGE.$I DON'T KNOW WHERE THE CAVE IS, BUT HEREABOUTS NO STREAM CAN RUN ON THE SURFACE FOR LONG. I WOULD TRY THE STREAM.$I NEED MORE DETAILED INSTRUCTIONS TO DO THAT.$I CAN ONLY TELL YOU WHAT YOU SEE AS YOU MANGE SMOKE?.... >POOF!< EVERYTHING DISAPPEARS IN A DENSE CLOUD OF ORANGE SMOKE.$NOW YOU'VE REALLY DONE IT! I'M OUT OF ORANGE SMOKE! YOU DON'T EXPECT ME TO DO A DECENT REINCARNATION WITHOUT ANY ORANGE SMOKE, DO YOU?$OKAY, IF YOU'RE SO SMART, DO IT YOURSELF! I'M LEAVING!$>>> MESSAGES 81 THRU 90 ARE RESERVED FOR "OBITUARIES".<<<$SORRY, BUT I NO LONGER SEEM TO REMEMBER HOW IT WAS YOU GOT HERE.$YOU CAN'T CARRY ANYTHING MORE. YOU'LL HAVE TO DROP SOMETHING FIRST.$YOU CAN'T GO THROUGH A LOCKED STEEL GRATE!$I BELIEVE WHAT YOU WANT IS RIGHT HERE WITH YOU.$YOU DON'T FIT THROUGH A TWO-INCH SLIT!$I RESPECTFULLY SUGGEST YOU GO ACROSS THE BRIDGE INSTEAD OFJUMPING.$THERE IS NO WAY ACROSS THE FISSURE.$YOU'RE NOT CARRYING ANYTHING.$YOU ARE CURRENTLY HOLDING THE FOLLOWING:$IT'S NOT HUNGRY (IT'S MERELY PININ' FOR THE FJORDS). BESIDES, YOU HAVE NO BIRD SEED.$THE SNAKE HAS NOW DEVOURED YOUR BIRD.$THERE'S NOTHING HERE IT WANTS TO EAT (EXCEPT PERHAPS YOU)!$YOU FOOL, DWARVES EAT ONLY COAL! NOW YOU'VE MADE HIM *REALLY* MAOVE ABOUT AND MANIPULATE THINGS. I CANNOT TELL YOU WHERE REMOTE THINGS ARE.$I DON'T KNOW THAT WORD.$WHAT?$ARE YOU TRYING TO GET INTO THE CAVE?$THE GRATE IS VERY SOLID AND HAS A HARDENED STEEL LOCK. YOU CANNOT ENTER WITHOUT A KEY, AND THERE ARE NO KEYS NEARBY. I WOULD RECOMMEND LOOKING ELSEWHERE FOR THE KEYS.$THE TREES OF THE FOREST ARE LARGE HARDWOOD OAK AND MAPLE, WITH AN OCCASIONAL GROVE OF PINE OR SPRUCE. THERE IS QUITE A BIT OF UNDERGROWTH, LARGELY BIRCH AND ASH SAPLINGS PLUS NONDESCRIPT BUSHES OF VARIOUS SORTS. THIS TIME OF YEAR VISIBILITY IS QUITE RESTRICTED BY ALL THE LEAVES, BUT TRAVEL IS QUITE EASY IF YOU DETOUR AROUND THE SPRUCE AND BERRY BUSHES.$WELCOME TO ADVENTURE!! WOULD YOU LIKE INSTRUCTIONS?$DIGGING WITHOUT A SHOVEL IS QUITE IMPRACTICAL. EVEN WITH A SHOVEL PROGRESS IS UNLIKELY.$BLASTING REQUIRES DYNAMITE.$I'M AS CONFUSED AS YOU ARE.$MIST IS A WHITE VAPOR, USUALLY WATER, SEEN FROM TIME TO TIME IN CAVERNS. IT CAN BE FOUND ANYWHERE, BUT IS FREQUENTLY A SIGN OF A DEEP PIT LEADINGD!!$YOU HAVE NOTHING IN WHICH TO CARRY IT.$YOUR BOTTLE IS ALREADY FULL.$THERE IS NOTHING HERE WITH WHICH TO FILL THE BOTTLE.$YOUR BOTTLE IS NOW FULL OF WATER.$YOUR BOTTLE IS NOW FULL OF OIL.$YOU CAN'T FILL THAT.$DON'T BE REDICULOUS!$THE DOOR IS EXTREMELY RUSTY AND REFUSES TO OPEN.$THE PLANT INDIGNANTLY SHAKES THE OIL OFF ITS LEAVES AND ASKS, "WATER?"$THE HINGES ARE QUITE THOROUGHLY RUSTED NOW AND WON'T BUDGE.$THE OIL HAS FREED UP THE HINGES SO THAT THE DOOR WILL NOW MOVE, ALTHOUGH IT REQUIRES SOME EFFORT.$THE PLANT HAS EXCEPTIONALLY DEEP ROOTS AND CANNOT BE PULLED FREE.$THE DWARVES' KNIVES VANISH AS THEY STRIKE THE WALLS OF THE CAVE.$SOMETHING YOU'RE CARRYING WON'T FIT THROUGH THE TUNNEL WITH YOU. YOU'D BEST TAKE INVENTORY AND DROP SOMETHING.$YOU CAN'T FIT THIS FIVE-FOOT CLAM THROUGH THAT LITTLE PASSAGE!$YOU CAN'T FIT THIS FIVE-FOOT OYSTER THROUGH THAT LITTLE PASSAGE!$I ADVISE YOU TO PUT DOWN THE CLAM BEFORE OPENING IT. >STRAIN!<$I ADVISE YOU TO PUT DOWN THE OYSTER BEFORE OPENING IT. >WRENCH!<$YOU  DOWN TO WATER.$YOUR FEET ARE NOW WET.$I THINK I JUST LOST MY APPETITE.$THANK YOU, IT WAS DELICIOUS!$YOU HAVE TAKEN A DRINK FROM THE STREAM. THE WATER TASTES STRONGLY OF MINERALS, BUT IS NOT UNPLEASANT. IT IS EXTREMELY COLD.$THE BOTTLE OF WATER IS NOW EMPTY.$RUBBING THE ELECTRIC LAMP IS NOT PARTICULARLY REWARDING. ANYWAY, NOTHING EXCITING HAPPENS.$PECULIAR. NOTHING UNEXPECTED HAPPENS.$YOUR BOTTLE IS EMPTY AND THE GROUND IS WET.$YOU CAN'T POUR THAT.$NONE OF THAT, NOW!$WHICH WAY?$OH DEAR, YOU SEEM TO HAVE GOTTEN YOURSELF KILLED. I MIGHT BE ABLE TO HELP YOU OUT, BUT I'VE NEVER REALLY DONE THIS BEFORE. DO YOU WANT ME TO TRY TO REINCARNATE YOU? ALL RIGHT. BUT DON'T BLAME ME IF SOMETHING GOES WR......$ --- POOF!! --- YOU ARE ENGULFED IN A CLOUD OF ORANGE SMOKE. COUGHING AND GASPING, YOU EMERGE FROM THE SMOKE AND FIND....$YOU CLUMSY OAF, YOU'VE DONE IT AGAIN! I DON'T KNOW HOW LONG I CAN KEEP THIS UP. DO YOU WANT ME TO TRY REINCARNATING YOU AGAIN?$OKAY, NOW WHERE DID I PUT MY ORDON'T HAVE ANYTHING STRONG ENOUGH TO OPEN THE CLAM.$YOU DON'T HAVE ANYTHING STRONG ENOUGH TO OPEN THE OYSTER.$A GLISTENING PEARL FALLS OUT OF THE CLAM AND ROLLS AWAY. GOODNESS THIS MUST REALLY BE AN OYSTER. (I NEVER WAS VERY GOOD AT IDENTIFYING BIVALVES.) WHATEVER IT IS, IT HAS NOW SNAPPED SHUT AGAIN.$THE OYSTER CREAKS OPEN, REVEALING NOTHING BUT OYSTER INSIDE. IT PROMPTLY SNAPS SHUT AGAIN.$YOU HAVE CRAWLED AROUND IN SOME LITTLE HOLES AND FOUND YOUR WAY BLOCKED BY A RECENT CAVE-IN. YOU ARE NOW BACK IN THE MAIN PASSAGE.$THERE ARE FAINT RUSTLING NOISES FROM THE DARKNESS BEHIND YOU.$OUT FROM THE SHADOWS BEHIND YOU POUNCES A BEARDED PIRATE! "HAR, HAR," HE CHORTLES, "I'LL JUST TAKE ALL THIS BOOTY AND HIDE IT AWAY WITH ME CHEST DEEP IN THE MAZE!" HE SNATCHES YOUR TREASURE AND VANISHES INTO THE GLOOM.$A SEPULCHRAL VOICE REVERBERATING THROUGH THE CAVE, SAYS, "CAVE CLOSING SOON. ALL ADVENTURERS EXIT IMMEDIATELY THROUGH MAIN OFFICE."$A MYSTERIOUS RECORDED VOICE GROANS INTO LIFE AND ANNOUNCES:"THIS EXF THE PACK), AND THERE ARE OTHER WAYS TO DETERMINE WHETHER YOU'VE BEEN THROUGH SOME OF THE MORE HARROWING SECTIONS. IF YOU THINK YOU'VE FOUND ALL THE TREASURES, JUST KEEP EXPLORING FOR A WHILE. IF NOTHING INTERESTING HAPPENS, YOU HAVEN'T FOUND THEM ALL YET. IF SOMETHING INTERESTING *DOES* HAPPEN, IT MEANS YOU'RE GETTING A BONUS AND HAVE AN OPPORTUNITY TO GARNER MANY MORE POINTS IN THE MASTER'S SECTION. I MAY OCCASIONALLY OFFER HINTS IF YOU SEEM TO BE HAVING TROUBLE. IF I DO, I'LL WARN YOU IN ADVANCE HOW MUCH IT WILL AFFECT YOUR SCORE TO ACCEPT THE HINTS. FINALLY, TO SAVE PAPER, YOU MAY SPECIFY "BRIEF", WHICH TELLS ME NEVER TO REPEAT THE FULL DESCRIPTION OF A PLACE UNLESS YOU EXPLICITLY ASK ME TO.$DO YOU INDEED WISH TO QUIT NOW?$THERE IS NOTHING HERE WITH WHICH TO FILL THE VASE.$THE SUDDEN CHANGE IN TEMPERATURE HAS DELICATELY SHATTERED THE VASE.$IT IS BEYOND YOUR POWER TO DO THAT.$I DON'T KNOW HOW.$IT IS TOO FAR UP FOR YOU TO REACH.$YOU KILLED A LITTLE DWARF. THE BODY VANISHES IN A CLOUD IT IS CLOSED. PLEASE LEAVE VIA MAIN OFFICE."$IT LOOKS AS THOUGH YOU'RE DEAD. WELL, SEEING AS HOW IT'S SO CLOSE TO CLOSING TIME ANYWAY, I THINK WE'LL JUST CALL IT A DAY.$THE SEPULCHRAL VOICE ENTONES, "THE CAVE IS NOW CLOSED." AS THE ECHOES FADE, THERE IS A BLINDING FLASH OF LIGHT (AND A SMALL PUFF OF ORANGE SMOKE). . . . AS YOUR EYES REFOCUS, YOU LOOK AROUND AND FIND...$THERE IS A LOUD EXPLOSION, AND A TWENTY-FOOT HOLE APPEARS IN THE FAR WALL, BURYING THE DWARVES IN THE RUBBLE. YOU MARCH THROUGH THE HOLE AND FIND YOURSELF IN THE MAIN OFFICE, WHERE A CHEERING BAND OF FRIENDLY ELVES CARRY THE CONQUERING ADVENTURER OFF INTO THE SUNSET.$THERE IS A LOUD EXPLOSION, AND A TWENTY-FOOT HOLE APPEARS IN THE FAR WALL, BURYING THE SNAKES IN THE RUBBLE. A RIVER OF MOLTEN LAVA POURS IN THROUGH THE HOLE, DESTROYING EVERYTHING IN ITS PATH, INCLUDING YOU!$THERE IS A LOUD EXPLOSION, AND YOU ARE SUDDENLY SPLASHED ACROSS THE WALLS OF THE ROOM.$THE RESULTING RUCKUS HAS AWAKENED THE DWARVES. THERE ARE NOW SEVERAL OF GREASY BLACK SMOKE.$THE SHELL IS VERY STRONG AND IS IMPERVIOUS TO ATTACK.$WHAT'S THE MATTER, CAN'T YOU READ? NOW YOU'D BEST START OVER.$THE AXE BOUNCES HARMLESSLY OFF THE DRAGON'S THICK SCALES.$THE DRAGON LOOKS RATHER NASTY. YOU'D BEST NOT TRY TO GET BY.$THE LITTLE BIRD ATTACKS THE GREEN DRAGON, AND IN AN ASTOUNDING FLURRY GETS BURNT TO A CINDER. THE ASHES BLOW AWAY.$ON WHAT?$OKAY, FROM NOW ON I'LL ONLY DESCRIBE A PLACE IN FULL THE FIRST TIME YOU COME TO IT. TO GET THE FULL DESCRIPTION, SAY "LOOK"$TROLLS ARE CLOSE RELATIVES WITH THE ROCKS AND HAVE SKIN AS TOUGH AS THAT OF A RHINOCEROS. THE TROLL FENDS OFF YOUR BLOWS EFFORTLESSLY.$THE TROLL DEFTLY CATCHES THE AXE, EXAMINES IT CAREFULLY, AND TOSSES IT BACK, DECLARING, "GOOD WORKMANSHIP, BUT IT'S NOT VALUABLE ENOUGH."$THE TROLL CATCHES YOUR TREASURE AND SCURRIES AWAY OUT OF SIGHT.$THE TROLL REFUSES TO LET YOU CROSS.$THERE IS NO LONGER ANY WAY ACROSS THE CHASM.$JUST AS YOU REACH THE OTHER SIDE, THE BRIDGE BUCKLES BENEATH THE WEIGHT OF THE BEAR,THREATENING LITTLE DWARVES IN THE ROOM WITH YOU! MOST OF THEM THROW KNIVES AT YOU! ALL OF THEM GET YOU!$OH, LEAVE THE POOR UNHAPPY BIRD ALONE.$I DARESAY WHATEVER YOU WANT IS AROUND HERE SOMEWHERE.$I DON'T KNOW THE WORD "STOP". USE "QUIT" IF YOU WANT TO GIVE UP.$YOU CAN'T GET THERE FROM HERE.$YOU ARE BEING FOLLOWED BY A VERY LARGE, TAME BEAR.$IF YOU WANT TO END YOR ADVENTURE EARLY, SAY "QUIT". TO SUSPEND YOUR ADVENTURE SUCH THAT YOU CAN CONTINUE LATER, SAY "SUSPEND" (OR "PAUSE" OR "SAVE"). TO SEE WHAT HOURS THE CAVE IS NORMALLY OPEN, SAY "HOURS". TO SEE HOW WELL YOU'RE DOING, SAY "SCORE". TO GET FULL CREDIT FOR A TREASURE, YOU MUST HAVE LEFT IT SAFELY IN THE BUILDING, THOUGH YOU GET PARTIAL CREDIT JUST FOR LOCATING IT. YOU LOSE POINTS FOR GETTING KILLED, OR FOR QUITTING, THOUGH THE FORMER COSTS YOU MORE. THERE ARE ALSO POINTS BASED ON HOW MUCH (IF ANY) OF THE CAVE YOU'VE MANAGED TO EXPLORE; IN PARTICULAR, THERE IS A LARGE BONUS JUST FOR GETTING IN (TO DISTINGUISH THE BEGINNERS FROM THE REST O WHICH WAS STILL FOLLOWING YOU AROUND. YOU SCRABBLE DESPERATELY FOR SUPPORT, BUT AS THE BRIDGE COLLAPSES, YOU STUMBLE BACK AND FALL INTO THE CHASM.$THE BEAR LUMBERS TOWARD THE TROLL, WHO LETS OUT A STARTLED SHRIEK AND SCURRIES AWAY. THE BEAR SOON GIVES UP THE PURSUIT AND WANDERS BACK.$THE AXE MISSES AND LANDS NEAR THE BEAR WHERE YOU CAN'T GET AT IT.$WITH WHAT? YOUR BARE HANDS? AGAINST *HIS* BEAR HANDS??$THE BEAR IS CONFUSED; HE ONLY WANTS TO BE YOUR FRIEND.$FOR CRYING OUT LOUD, THE POOR THING IS ALREADY DEAD!$THE BEAR EAGERLY WOLFS DOWN YOUR FOOD, AFTER WHICH HE SEEMS TO CALM DOWN CONSIDERABLY AND EVEN BECOMES RATHER FRIENDLY.$THE BEAR IS STILL CHAINED TO THE WALL.$THE CHAIN IS STILL LOCKED.$THE CHAIN IS NOW UNLOCKED.$THE CHAIN IS NOW LOCKED.$THERE IS NOTHING HERE TO WHICH THE CHAIN CAN BE LOCKED.$THERE IS NOTHING HERE TO EAT.$DO YOU WANT THE HINT?$DO YOU NEED HELP GETTING OUT OF THE MAZE?$YOU CAN MAKE THE PASSAGES LOOK LESS ALIKE BY DROPPING THINGS.$ARE YOU TRYING TO EXPLORE BEYOND THE PLOVER ROIOUSLY A RANK AMATEUR. BETTER LUCK NEXT TIME.$YOUR SCORE QUALIFIES YOU AS A NOVICE CLASS ADVENTURER.$YOU HAVE ACHIEVED THE RATING: "EXPERIENCED ADVENTURER".$YOU MAY NOW CONSIDER YOURSELF A "SEASONED ADVENTURER".$YOU HAVE REACHED "JUNIOR MASTER" STATUS.$YOUR SCORE PUTS YOU IN MASTER ADVENTURER CLASS C.$YOUR SCORE PUTS YOU IN MASTER ADVENTURER CLASS B.$YOUR SCORE PUTS YOU IN MASTER ADVENTURER CLASS A.$ALL OF ADVENTUREDOM GIVES TRIBUTE TO YOU, ADVENTURER GRANDMASTER!$$VERY WELL.$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$I DON'T KNOW IN FROM OUT HERE. USE COMPASS POINTS OR NAME SOMETHING IN THE GENERAL DIRECTION YOU WANT TO GO.$I DON'T KNOW HOW TO APPLY THAT WORD HERE.$I DON'T UNDERSTAND THAT!$I'M GAME. WOULD YOU CARE TO EXPLAIN HOW?$SORRY, BUT I AM NOT ALLOWED TO GIVE MORE DETAIL. I WILL REPEAT THE LONG DESCRIPTION OF YOUR LOCATION.$IT IS NOW PITCH DARK. IF YOU PROCEED YOU WILL LIKELY FALL INTO A PIT.$IF YOU PREFER, SIMPLY TYPE W RATHER THAN WEST.$ARE YOU TRYING TO CATCH THE BIRD?$THE BIRD IS FRIGHTENED RIGHT NOW ANOM?$THERE IS A WAY TO EXPLORE THAT REGION WITHOUT HAVING TO WORRY ABOUT FALLING INTO A PIT. NONE OF THE OBJECTS AVAILABLE IS IMMEDIATELY USEFUL IN DISCOVERING THE SECRET$DO YOU NEED HELP GETTING OUT OF HERE?$DON'T GO WEST.$GLUTTONY IS NOT ONE OF THE TROLL'S VICES. AVARICE IS, HOWEVER.$YOUR LAMP IS GETTING DIM. YOU'D BEST START WRAPPING THIS UP, UNLESS YOU CAN FIND SOME FRESH BATTERIES. I SEEM TO RECALL THERE'S A VENDING MACHINE IN THE MAZE. BRING SOME COINS WITH YOU.$YOUR LAMP HAS RUN OUT OF POWER.$THERE'S NOT MUCH POINT IN WANDERING AROUND OUT HERE, AND YOU CAN'T EXPLORE THE CAVE WITHOUT A LAMP. SO LET'S JUST CALL IT A DAY.$THERE ARE FAINT RUSTLING NOISES FROM THE DARKNESS BEHIND YOU. AS YOU TURN TOWARD THEM, THE BEAM OF YOUR LAMP FALLS ACROSS A BEARDED PIRATE. HE IS CARRYING A LARGE CHEST. "SHIVER ME TIMBERS!" HE CRIES, "I'VE BEEN SPOTTED! I'D BEST HIE MESELF OFF TO THE MAZE TO HIDE ME CHEST!" WITH THAT, HE VANISHES INTO THE GLOOM.$YOUR LAMP IS GETTING DIM. YOU'D BEST GO BACK FOR THOSE BATTERIES.$YOUR LAMP IS GETTING DIM. I'M TAKING THE LIBERTY OF REPLACING THE BATTERIES.$YOUR LAMP IS GETTING DIM, AND YOU'RE OUT OF SPARE BATTERIES. YOU'D BEST START WRAPPING THIS UP.$I'M AFRAID THE MAGAZINE IS WRITTEN IN DWARVISH.$"THIS IS NOT THE MAZE WHERE THE PIRATE LEAVES HIS TREASURE CHEST."$HMMM, THIS LOOKS LIKE A CLUE, WHICH MEANS IT'LL COST YOU 10 POINTS TO READ IT. SHOULD I GO AHEAD AND READ IT ANYWAY?$IT SAYS, "THERE IS SOMETHING STRANGE ABOUT THIS PLACE, SUCH THAT ONE OF THE WORDS I'VE ALWAYS KNOWN NOW HAS A NEW EFFECT."$IT SAYS THE SAME THING IT DID BEFORE.$I'M AFRAID I DON'T UNDERSTAND.$"CONGRATULATIONS ON BRINGING LIGHT INTO THE DARK-ROOM!"$YOU STRIKE THE MIRROR A RESOUNDING BLOW, WHEREUPON IT SHATTERS INTO A MYRIAD TINY FRAGMENTS.$YOU HAVE TAKEN THE VASE AND HURLED IT DELICATELY TO THE GROUND.$YOU PROD THE NEAREST DWARF, WHO WAKES UP GRUMPILY, TAKES ONE LOOK AT YOU, CURSES, AND GRABS FOR HIS AXE.$IS THIS ACCEPTABLE?$THERE'S NO POINT IN SUSPENDING A DEMONSTRATION GAME.$$YOU ARE OBV" 1P Diskette Catalog Maintenance Utility, V2.5 Type "NEWCAT ?" for help. Type "NEWCAT B:" for two-drive systems. :]? !6:\=wA2  Catalog System Disk MUST remain in Drive A: 1P!P"! "8":>)2222 Mount DISK TO BE CATALOGED:# in Drive B: , Ready? (Y/N) _ LY  :_2\!]r??????????? À\<ʼ=o&))))) 6.# 6 #6 #:<2~6:=2OP!# þNwy#:P-ʭ ++MISSING "-NAME.nnn" FILE ON DISK. PUT THE NAME FILE ON THE DISK BEFORE RUNNING THIS DISK AGAIN. :] Reload CATALOG SYSTEM DISK, press RETURN]: Mount CATALOG SYSTEM DISK, press RETURN  MAST CAT:P-ʭ ++MISSIQ/(-NÈ**}|q!"*{zc*]*"/*"!"**}>*#"ɯ22!(""<  NO MASTIN FILE$NEW CATSK, press RETURNQW( o**}|_!"HE FIRST CHARACTER OF THE FILE NAME OF THE FLAG FILE MUST BE A "-". CREATE THE FLAG FILE, FOR EXAMPLE, BY "SAVE 0 -DISK.001". WHEN YOU FIRST START USING THE SYSTEM, YOU MUST CREATE A FILE NAMED "MAST.CAT", AND PLACE IN THIS FILE A LIST OF FILE NAMES TO IGNORE IN THE CATALOGING PROCESS. THIS LIST SHOULD HAVE 1 NAME PER LINE, AND SHOULD BE ENCLOSED IN PARENTHESIS, FOR EXAMPLE: (STAT.COM PIP.COM ED.COM) OUXXXXXXXX.YYY, . XXXXXXXX.YYY,XXXXXXXX.YYYXXXXXXXX.YYY,XXXXXXXX.YYY) If the DESTINATION diskette already contains a file by the same name the user is given the option of aborting or erasing the existing copy of the file.$$YOU'RE IN SLAB ROOM.$YOU'RE AT JUNCTION OF THREE SECRET CANYONS.$YOU'RE IN SECRET E/W CANYON ABOVE TIGHT CANYON.$YOU'RE IN NARROW CORRIDOR.$YOU'RE AT STEEP INCLINE ABOVE LARGE ROOM.$YOU'RE IN GIANT ROOM.$YOU'RE IN CAVERN WITH WATERFALL.$YOU'RE IN SOFT ROO*{zQ*0*" < DISK FULL: MASTOUT$!"**#"ɯ22!("!"<¹  NO DIR SPACE: MASTOUT$MAST BAK CATSK, press RETm! ! K(j!ʋw#) x  ++TOO MANY IGNORE NAMES FOR TABLE ++MISSING OR EMPTY MAST.CAT ++NO IGNORE NAMES IN MAST.CAT ++EOF READING FOR IGNORE NAMES. MAY BE MISSING ")" AFTER LAST NAME.ʋ m::¨! \9 ! '! R 3!͌ DEL: $! R V!͌ mADD: $! R !͕6.#͕6,! ʟ~ ʠ) ’Â#‡m>*}¹">­<  CANNOT CLOSE MASTOUT$ w# !! MAST.CAT now has Entries. THIS UPDATE COMPLETE. ANOTHER DISK TO CATALOG (Y/N) _ Y : ʞ. w#•26 #6#>2*~#"!6,# 6.#!9"1:] 5++No File Name Specified++ $--------- CRCK Ver 5.1 --------- CTRL-S to Pause, CTRL-C to Abort !!yͤr$s%# „:m2vF@22! "!"<@ Í**}|0!"*{z"**" 9Í!"**#"1:zf͵++File Not Found++$:vF¹*}z">n<˜ Z! w# « Done$:f@!e͛@!]ͪ!eͪxxxxxxxx.xxx CRC = \<"͵++Open Failed++$!"w!"*|Y Jʻ\v!~#"*wO! ~W$^"w.:xͻ:wͻ@͵++File Read Error++$g)ҵ>g>o© 0~#~> > _:vF{2h2|:zD!\{ ͪ:\2!{\ ͪ\l!\ ͪ\!{\ ͪ\<7=Ɓo& ͪ] ͪ2h2|2zͣͣ~$#~# xª :vF*}">< Z ++Ab :G  ,? .? ? G w# 26 #? 6#G 2!;~ ] >0 >   ~ ʥ _#• > _> _w# # ~_#~ # > _> _  NEWCAT USEAGE AND SYNTAX: SINGLE DRIVE USERS TYPE "NEWCAT" OR "NEWCAT A:", AND YOU WILL ALTERNATELY BE ASKED TO INSERT THE DISK TO BE CATALOGED AND THE CATALOG SYSTEM DISK. AN UPDATE OF THE MAST.CAT IS MADE WITH EACH NEW DISK. DOUBLE DRIVE USERS TYPE "NEWCAT B:". YOU MUST PLACE THE CATALOG SYSTEM DISK IN DRIVE A: ***AND LEAVE IT THERE UNTIL COMPLETELY FINISHED***. YOU WILL BE ASKED TO INSERT THE DISKS TO BE CATALOGED IN DRIVE B:, ONE AT A TIME. NOTE THAT, IN THIS FASHION, YOU CANNOT CATALOG THE CATALOG DISKETTE ITSELF. DO THIS SEPARATELY BY TYPING "NEWCAT A:" HIT ANY KEY TO PROCEED: GETTING STARTED: EACH DISKETTE MUST CONTAIN A FLAG FILE WHICH SPECIFIES THE DISK NAME AND/OR NUMBER. Torted++$ * ++No Directory Space for CRC File++$ ++No Disk Space for CRC File++$ ++Cannot Close CRC File++$ ͪ] ͪ2h2|2zͣͣ~$#~# xª :vF*}">< Z ++Aborted++$ * ++No Directory Space for CRC File++$ ++No Disk Space for CRC File++$ ++Cannot Close CRC File++$ ͪ] ͪ2h2|2zͣͣ~$#~# xª :vF*}">< Z ++Aborted++$ * ++No Directory Space for CRC File++$ ++No Disk Space for CRC File++$ ++Cannot Close CRC File++$ ͪ] ͪ2h2|2zͣͣ~$#~# xª :vF*}"> CRCKLISTCRC ZCRCKLIST$$$++$ * ++NoRFACE FOR LONG. I WOULD TRY THE STREAM.$I NEED MORE DETAILED INSTRUCTIONS TO DO THAT.$I CAN ONLY TELL YOU WHAT YOU SEE AS YOU M Display, Ver.1.0 as of October 30, 1980 DISPLAY.COM allows displaying an ASCII file on a 24 line terminal, with commands similar to Digital Research's ED.COM (but without any of the editing facilities). Using DISPLAY.COM For example: DISPLAY FILENAME.TXT ,will envoke the display program and load the entire secondary entry (FILENAME.TXT) into memory, for subsequent display of the first 23 lines of that file. Various commands can then be issued from the terminal keyboard which will manipulate the display of the file. The commands shown below with a preceding "n" indicates that an optional unsigned integer value can be specified to envoke "n" iterations of the command. When a command is preceded by a "-" sign, the command will cause display of the file in a direction towards the start of the file. Unsigned integer values ar!Display Ver.1.0, Oct.,30,1980$1Y.!\ -,_͗:[NL *zDM͇g:t mgYÅBy4E҅ !w6!":t- !w6͟:t02xO> *x&"͟:t02xO> *)))*) *x& "͟ú:tL*wM*PM:tP7>P+*/"*wM*P4*z"~"M:tDJ*DM͕MSgYLYv !\q*\& !]q*]& !_p+q*^ !ap+q*` 2[!cp+q*b 2[!ep+q*d !gp+q*f !ip+q*h 2[!kp+q*j 2[!mp+q*l  !nq*n& !pp+q*o  g g!rp+q*q A!s6!Y"z"~"*z"!6!6*"|!+p+q:sO**",|S!".![6>.P:[H*,DM1*,",*.+".ð:[!s6*,"1:s/,H+s#r*,~/*,#",*,+",*,~ I*,+",6*,"!2r+s+q:0›>1P~CHҘ*~~ Ž*1+"1*~#"~`*1#"1>1Pz~CH*~~ *1+"1*~+"~âz~C*~#"~*~"!46~e assumed to be positive values (i.e., "+") and therefore "+" need not be specified. Also, the buffer pointer will stop display at the top or bottom of the file if too large a value of "n" is specified. Command: Operation performed: ======= =================== B Move pointer to beginning of file and display page. -nP Move pointer minus n pages and display page. nP Move pointer plus n pages and display page. 0P Move pointer to beginning of buffer and display page. -nL Move pointer minus n lines and display page. nL Move pointer plus n lines and display page. nD Discard n pages, refill buffer and display the current page. 0D Discard all data up to the current pointer, refill buffer and display the first page. E Exit DISPLAY and return to CP/M. ^C Control-C, exit DISPLAY and return to CP/M. Carriage return, move pointer to next page and display Cf*~~23 Z:3 '*3Mg!44P:4O>26!56:6!5P g!44#48*~#"~*~#"~ g*"8"~!76>!7ڈ!74u*~"*8"~!;p+q>:P¼~C"@*~">+*z"<>:P!"B>BP*<~ *B+"B*<#"<S !"B!":*:+":<C"@*<">*@*>DM*z +|9z>C#s#r>~Cn@~C+s#rt*z"~*~"@C+s#r@C+s#r*DM͇*u& ~2tO>Zһ:t2t:u<2u*g͇ g:2v!t6 !u6͟!Dq!D:t:vHDM!>))덑o|g) =DM!>))> =6i`N#Fogo&ogn@~C+s#rt*z"~*~"@C+s#r@C+s#r*DM͇*u& ~ File not found$ Illegal command$ -------------------------------------------------------------- Best regards, Kelly Smith, MP/M-Net (tm) Sysop 805-527-9321 (Modem, 300 Baud) !"B!":*:+":<C"@*<">*@*>DM*z +|9z>C#s#r>~Cn@~C+s#rt*z"~*~"@C+s#r@C+s#r*DM͇*u& ~2tO>Zһ:t2t:u<2u*g͇ g:2v!t6 !u6͟!Dq!D:t:vHDM!>))덑o|g) =DM!>))> =6i`N#Fogo&ogn@~C+s#rt*z"~*~"@C+s#r@C+s#r*DM͇*u& ~ File not found$ Illegal command$!{,6!-q:S-<2S-H!S-6*S-&, :-wT-R !-q*-DM|*-ME E!-6:-!-s*-&T- NE!-4Uq,!-6: :,Hҫ *,DM;!,62,:-R:-<2-O!T- :,w:, *-#"-:q,!l,:-=O8!-6:, !,6 :,*,&*,~:,<2,!,'!,6.'>2, 5>  :,HT9:,\k h]9!-p+q:-<<2-:j,҆!q,6:|,ʥ:, ʢU2,Î9:j,*r,#"r,*-|OE*-}OE?E:-=2- E^Eq!q,6!t,6:i,m,;ͮ!,6#6!"-}2-,!,6!-6:9:,$¬!-6:-<2-O!, ~2- ʬ:-A2-O>ک*-M! ^#V!k,6é!l,6é!o,6é!n,6é!m,6é!p,6ému}7!,6!,6!|,6#6:,"!,!|,62!,6":, SUl͏ :,9:," ͏ Ë HҜ!|,61:,062,%7 F 7 :,E€ :,+:,-Ho /}FIl7 :,•!,60!,6#60E Ë  k % Ұ ã:,$!},62 !},61p / :,F:,NH:,H!|,66 !|,64E h :|,' :, $ 2,U h :|,cd 3V *,MV  P U*,MV ; ,V V *u,+"u,h E Ë :,\y UË p /Ҋ CIlí:,/ :,<2,O!, :,w:,!,?w:, !,6͏ 9͏ 2,:,0O> /:,a/>z!,/H:,. !n, :,_2, :,AO>/ H  H H D 7 :, P 9!,6!-q*u,#"u,:j,o *-M> !,| >*,&O n&"-!-6*,&Y ~!-  *,&c :-O! ~2|,O>@:|,cH :|,AO!m ~2},:|,2~,!|,65>:,-N +s#r#4” >!-6*-&*-:-<2-O!, :,!-/HE  :,!-_ogN#Fog01PROD $ ERRORS DETECTED$:i,қ ->@_!l0"X.*++"V."-*-#6!_.q*-^*-*_.& "Z.!`.6*-##"Z.!a.6*-~!a. *a.&*Z.:`.?2`.!a.4 :`.*-^*-"-*-#"Z.*^.&-) ^#V!b.q:b.X.0!V.cP !j,6OTlͯ!d.p+qͭ *Z.*c.s#r*Z.+"Z.*Z.>w "->-X *-~2e.*\. *e.& *-*e.&*\. :e.=2e. >Ù  *Z.^#V"-} >*\.>2f.O+ *X."-*\.#*X.###*\.4)d END <(+*)-,=/;>:#^IFTOGOONOREQLTGTLEGENEFORLETREMDIMDEFNOTANDTANSINCOSSQRTABLOGLENFREATNABSEXPINTENDPOSRNDSGNINPASCVALXORSUBOUTTHENREADGOTOELSENEXTSTOPDATAFILECHR$MID$STEPSTR$COSHSINHPRINTINPUTGOSUBCLOSELEFT$RETURNRIGHT$REMARKRESTORERANDOMIZE    HEFIJNTLGAKBOCDPQX! )&$"%(c#RU'WYZ-,+*S.V03%| 7EJMNNAFGFADE $BASNS $!c,r+s+q!f,r+s+q>!"g,!*g,!-s+p+q+p+q:-=2-*-*- w*-#"-*-#"-!-s+q+p+q:-=2-*-:-w*-#"-!-q:p,9*-&͕D*-&͕!-q:- j:,<2,g QÂ!,4*-M :- ‚!,6!-p+q*-~$ʣ*-NE*-#"-É̓ͯ *,DM; *, 6 *, 6*,̓ͯ͡,ͤ͡:o,*, ,;,͕,͡(ͤ!,6*,͡2-O>Dͤ:-:o,P,͕,͡h͕ͤ E E!-p+q!-6+6>!-!-60*-&) -[ *-&) -[ +s#r!-6#4Ø:-/!-*-ME E!-4Š!x,6#6#6!w,6*- w_;ͭ *Z.6  *Z.q#p*^.&-) *-s#r:f.X.0+s#r*-~ͭ *Z.>!g.qͭ *Z.:g.wͭ *Z.~ͭ *Z.^#V!h.qͭ *Z.:h.wͭ *Z.~J 2k.!l.6:k.!l.  o&-"i.*i.-M *i.N#F`i"i.  *Z.*i.N#Fq#p!l.4¦ J 2p.!o.6:p.!o.H *-#"m. O!- *m.N#Fq#p O!- *-s#r!o.4!.0q:i,[*.0M!"-"u,}202-0!"-!"-:i,!h "\.!^.61 1I$IQ V !f "\.!^.60 0I$IQ V !/0q:j,!k,j ̓*/0M|q:*/0M! ^#V99*'0M>h .s -[+LDl;*-DMQ V C!-6*i9i9͗99999999999999999999999999ҪY9:10½*;0DM?99*20Mͤ9 9]99 ͤ99 ͤ992:301$*20Mͤ2:20Oͤ1B99T:301OͤTͤ9cͤ9m9|0ͤ99Ҏͤ9ҝͤ99үͤ9:00*90DMTͤ999*50MB9*'0M9:w,IFl1*;0"-͑ s#r!F0p+q*(0&.) *E0s#r!G0q*'0&s/ :G0w!H0q*'0&/ :H0w!I0q*(0&/ :I0w!J0q*(0&s/ :J0w!K0q*(0&. :K0w!L0q*'0&. :L0w!N0p+q*'0&/) *M0s#r!O0q*-#"-:i,/Ҿ*O0M!P0q*P0&S/ n&/!Q0q*Q0MͿ"\.*Q0&. ~2^.!R0q*R0Mw >>!S0q*S0M> >*-#"-!U0p+q*T0|Oͤ*T0}Oͤ!W0p+q!V0DDM(!Y0p+q!X0DDM(:m,~*-M?_ͤ!+0"\.:-0?2^.!Z0q:i,ҭ :Z0-0DMQ !-04w 2[0ͮs DM(:401:301HFMl>>!40:30MMl>>*30MB:301>FMl>:502+FMl[ͤ:10<210OT*00M̀  ͤ*00Mͤͤ:501iͤnͤ4ͤ!z,6;ͤ:00*90DM?:z,Ҡ"1͹ø:y,ұ)*͹ø=<͹!]0s+q:302*\0Mͤͤ*]0Mͤͤ[ͤ:0<20O!0 N?\ͤ9ͤ*0&0 :00w:-=2-/!-6UNli6ͤ*- N#F(!-D*-q#p*-#>i*-"-R*)0M*- -MHҐÖINl:-ҤLUl!-6*'0Mh /!j,!-6ͪ:{,ͤ6ͤs DM(!^0q*^0MJ U!10 NSls DMT!ͤT9*(0M/J H@SIlT*-DM919]*A0"?0ͪ9ͪ909]09*'0MҤ*-DM͊*-DM J OxêUFl9*~,M:30Ox9͍9,A99 T9 T9 T9 T999T9T9*V. ^#V"-:005ͤs DMTͤ:00Vs DM?ͤͤ:00ҍͤ?ͤ?8ͤ ͤ?9ͤ ͤ7ͤ*V.N#F(*V.##*-s#r96ͤ*V.##N#F(*V. *-s#r9!w,6>V.X+s#r"-*-#>w+ !-49T9*V. ^#V"-s DM?.ͤ(9͎9͎9[ͤ^ͤͪs DM(999͎6ͤͼ9:502~EIl7ͤͼ9ү*;0"-*20MV ͛ ͎ͤͤ96ͤͼ*'0M2c0*30MB*-DM:i,:c0DFl*-DMQ  99T9T99999*(0M:4012FIl*90DMT-ͤ99?99@9@91*;0"-9*(0M!i,ҁPDlV :i,ҕ DMQ s DM?T*-DM9199:302FMl[ͤ@ͤ9:302FMl[ͤ@ͤ9:y,>ͤ!y,69Il DMQ V s "90DM:w,@!w,6*V. *-s#r!`0p+q20ͤ!a06*_0~!a0v*a0&*_0Nͤ!a04V:,҃ͭÉͤQ.ͤ10*'0MJ HҾs DM(!b06:,!b0*b0&, NI!b04$I*-#"-DM(:y,:301 +ͤ,ͤ/:301*:00J'#ͤ/$ͤ:10 \*;0"- *-DM:70=270Ofs DM?:10 *;0"-͑ !50{PFlY:501!70ҕPFl:70Of:40=240OB:10 :70NFlͤ*?0"-s DM(:40NFl*10Mͤ:402B1B:i,/*)0M DMQ *50M̀ V :10JJFIK!!*!&O@ G  "H}~R&JQTUE. HJ %'<$% =>?S  "H}~R&JQTU  "H}~R&JQTU-|z {  NM##''()+,L112233445579:;B4D,E+F-H(LL)MM5NNTT8UUUWWPXX*YY6[]]9^^ _A`Baace:::fhijmnopqsuvvvvvvvvwwx"G bPZ\SVJKROQI.1@@0@@0@@0rt<?=/ lkA$#g3d8>00E1D00D62D0909E52A6D2EE34E2346E171237087 :100E2D00CDC70B4F060021D62D0909E52AD42DE90 :100E3D00E1732372216F2E34C2020EC9212E30713F :100E4D003A692C1FD25B0E2A2E304DCD60:C921D5 :BB)5D00000022CB2D227527D32173022D302102 :100E6D00010022CF2D21FFFF22CD2DCDF0043A69B7 :100E7D002C1FD2CB0ECDFC0321680B225C2E215EE4 :100E8D002E3631CDDD0C0E31CD490E0E24CD490E51 :100E9D00010000CD510C0E04CD560D21660B225CC8 :100EAD002E215E2E3630CDDD0C0E30CD490E0E24AA :100EBD00CD490E010100CD510C0E04CD560DC921A9 :100ECD002F30713A6A2C216B2CA61FD2ED0E016AC0 :100EDD000BCD83032A2F304D0600CD7C04CD71043C :100EED00CD3A182A2F304D060021071709095E2328 :100EFD0056EBE9C33918C339182A27304DCDF019EF :100F0D001FD23E0FCD680D1FD22E0FCD730D11CBFD :100F1D002DCD5B1FB5CA2B0F014C44CD6C06C33BC9 :100F2D000F2ACB2D444DCD510C0E08CD560DC3437C :103D000F21A92D362ACD691AC33918CD691AC3C7 :100F4D003918CD971CC33918C33918C33918C3398B :100F5D0018C33918C33918C33918C33918C3391808 :100F6D00C33918C33918C33918C33918C33918C34D :100F7D003918C33918C33918C33918C3391C0D6C"$   !"#$%-/02<=>?@$BCCCCCEFYZZZ[\Y%]^_`aaabcdgldddosvz~ddddddd$$  #&),/3579;=?ACFILOSVY\^adfhkmptvy{}2/7!;22 $$%%''))+++++---22555577BBCCDDEEFFHHHHHHHHHIJKLLMMMNNOPQRSSTTUVVWXXYZZ[]]^__``abbcccffggghhiijjllmnnopqqsttvvxxyyz{|}~                 #'(+7UaceijuInvoking BASIC-E BASIC-E Statements BASIC-E Functions Differences between BASIC-E and CBASIC BASIC-E Error Messages CBASIC: Compiler Error Messages CBASIC: Run-Time Error Messages -- Warnings CBASIC: Run-Time Error Messages -- Error Codes :Invoking BASIC-E BASIC-E is invoked by typing the following -- EBASIC filename $o wher 'filename i th nam o th sourc fil 'filename.BAS t b compiled and 'o' is one or more of the following options -- A List Productions (for compiler debugging); normally OFF B List only source statements with errors; normally OFF C Check syntax only; don't create .INT file; normally OFF D Convert lowercase to uppercase; normally ON E Generate line number code; normally OFF After compilation, the program may then be executed by -- ERUN filename where 'filename' is the name of the intermediate code file 'filename.INT'. :BASIC-E Statements ThBASIC-E COMPILER VER 2.1$1a,)̓q͒+:j,!i,Ҁ+!t,6!*06!y"q.!'06!&06!S/6:t,}+>x!q.,T*ʹ+*'0&s.) *q.s#r͜+"d0+ͩ+*d0+"f0*d0"d0f0d0,Q**d0l :|,1**'0&S/ :&0w!j06:,!j0)*j0&, N+!j04)*'0&. :,w*'0&/ :},w*d0P!) ^#V"q.!*06*f0"d0D*f0d0,D*PNl*d0"d0Ұ)z+>!q.,+ͩ+:'0+!(0s:(0<2)0>q.,M:t,+:(02'0͜+"d0*'0&S/ ~2&0*'0&s.) ^#V"f0*d0 n&"h0}h0f0,H**d0#"d0ñ**d0$) ^#V"q.>++!t,6z+>!q.,_+͜+"d0+*d09 n&"h0}!h0:|,,HM+*d0#"d0+*d0") ^#V"q.z+ʹ+ͩ+*'0&s.) q#p͜+"q.m)C)!l,6͒+!j,6C)v́ \*q.%) ^#V*q.' n&:'0<2'0 +OSl:*0+ͭ!*06!k0q*&0&/ :k0w:&0<2&0O>d+OVl_{ozgi`N#Fogo&og_{_z#W92E4E234603606922692EC3C10D7B :100DDD00CD140CDu=)B92EE35 :100DED002370216C2E34C2A60DC9CD4A0D32702E42 \ INT16F2EBEDA480ECDA000E0D00020C2AD42D23226D2ECDC70B4F060021A7 :1e following statements are valid in BASIC-E -- FOR NEXT FILE GOTO LET CLOSE GOSUB INPUT ON PRINT READ RESTORE RETURN OUT RANDOMIZE STOP DATA DEF DIM END IF REM ELSE THEN :BASIC-E Functions The following built-in functions are valid in BASIC-E -- ABS ASC ATN CHR$ COS COSH FRE INP INT LEFT$ LEN LOG MID$ POS RIGHT$ RND SGN SIN SINH STR$ SQR TAB TAN VAL EXP :Differences between BASIC-E and CBASIC Th followin feature ar no availabl i BASIC-E bu the ar available in CBASIC -- 1. PEEK or POKE 2. PRINT USING 3. CALL to machine code programs 4. LPRINT :BASIC-E Error Messages Sinc BASIC- i "su paramete typ used in the function's DEF statement. FU -- Function Undefined A function has been referenced before it has been defined. IE -- IF Expression A expressio use immediatel followin a IƠ evaluate t typ string. Only type numeric is permitted. IF -- In File variabl use i FIL statemen i o typ numeri wher typ string is required. IP -- Input Prompt An input prompt string is not surrounded by quotes. IS -- Invalid Subscript A subscripted variable was referenced before it was dimensioned. IU -- Invalid Use A variable defined as an array is used with no subscripts. MF -- Mixed Format An expression evaluates to type string when type numeric is required. MM -- Mixed Mode Variable o typ strin an typ numeri ar combine i th sam expression. NI -- NEXT Index variabl reference b NEX statemen doe no matc th variabl referenced by the associated FOR stabset o CBASIC refe t th CBASI hel fil for information on the BASIC-E error messages. Most bu no all BASIC- erro message ar covere i thi hel file. :CBASIC: Compiler Error Messages Text Messages NO SOURCE FILE: .BAS Th compile coul no locat sourc fil use i eithe CBASI command or an INCLUDE directive. PROGRAM CONTAINS n UNMATCHED FOR STATEMENT(S) There are n FOR statements for which a NEXT could not be found. PROGRAM CONTAINS n UNMATCHED WHILE STATEMENT(S) There are n WHILE statements for which a WEND could not be found. WARNING: INVALID CHARACTER IGNORED Th previou lin contain a invali ASCI character thi characte is ignored by the compiler, and a question mark is printed in its place. 2-Letter Error Codes CE -- Close Error The intermediate (.INT) file could not be closed. DE -- Disk Error A disk error occurtement. NU -- NEXT Unexpected A NEXT statement occurs without an associated FOR statement. OO -- ON Overflow More than 25 ON statements were used in the program. SE -- Syntax Error The source line contains a syntax error. SN -- Subscript Number A subscripted variable contains an incorrect number of subscripts. SO -- Syntax Overflow Th expressio i to comple an shoul b simplifie an place o more than one line. TO -- Table Overflow Th progra i to larg fo th system Th progra mus b simplified or the system size increased. UL -- Undefined Line number A line number that does not exist has been referenced. US -- Undefined String A string has been terminated by a carriage return rather than quotes. VO -- Variable Overflow Variable names are too long for one statement. This should not occur. WE -- WHILE Error The expression immediately following a WHILE statement is not numeric. red while trying to read the .BAS file. DF -- Disk Full Ther wa n spac o th dis o th dis director wa full Th .INT file was not created. DL -- Duplicate Line number Th sam lin numbe wa use o tw differen lines Othe compile error ma caus D erro messag t b printe eve i duplicat lin numbers do not exist. DP -- Defined Previously A variable in a DIM statement was previously defined. EF -- Exponential Format numbe i exponentia forma wa inpu wit n digit followin th E. FD -- Function Definition functio nam tha ha bee previousl define i bein redefine i a DEF statement. FI -- FOR Index A expressio whic i no a unsubscripte numeri variabl i bein used as a FOR loop index. FN -- Function parameter Number A function reference contains an incorrect number of parameters. FP -- Function Parameter type functio referenc paramete typ doe no matc th WU -- WHILE Undefined A WEND statement occurs without an associated WHILE statement. :CBASIC: Run-Time Error Messages -- Warnings Tw textua run-tim erro message ar presente b CRUN: NO INTERMEDIATE FILE fil nam wa no specifie wit th CRU command o n fil o typ .IN an th specifie fil nam wa foun o disk. IMPROPER INPUT - REENTER Thi messag occur whe th field entere fro th consol d no matc th fiel specifie i th INPU statement Thi ca occu whe fiel type d no matc o th numbe o field entere i differen fro th numbe o field specified Al field specifie b th INPU statemen mus b reentered. 2-Letter Warning Codes DZ -- Divide by Zero numbe wa divide b zero Th resul i se t th larges vali CBASI number. FL -- Field Length fiel lengt greate tha 25 byte wa encountere durin REA LINE Onl th firs creatin o extendin fil becaus th dis director wa full. MP -- MATCH Parameter Th thir paramete i MATC functio wa zer o negative. NF -- Number of FILE Th fil numbe specifie wa les tha o greate tha 20. NM -- No Memory There was insufficient memory to load the program. NN -- No Number field A attemp wa mad t prin numbe wit PRIN USIN statemen bu ther wa no numeri dat fiel i th USIN string. NS -- No String field A attemp wa mad t prin strin wit PRIN USIN statemen bu ther wa no strin fiel i th USIN string. OD -- Overflow Data REAĠ statemen wa execute wit n DAT available. OE -- OPEN Error A attemp wa mad t OPE fil tha didn' exis an fo whic n I EN statemen ha bee previousl executed. OI -- ON Index Th expressio specifie i a O .. GOSU o a OΠ .. GOT statemen evaluate t numbe les tha  25 character o th recor ar retained. LN -- Logarithm error Th argumen give i th LO functio wa zer o negative Th valu o th argumen i returned. NE -- NEgative number negativ numbe wa specifie followin th rais t powe operato (^) Th absolut valu i use i th calculation. OF -- OverFlow calculatio produce numbe to large Th resul i se o th larges vali CBASI number. SQ -- SQuare root error negativ numbe wa specifie i th SQ function Th absolut valu i used. :CBASIC: Run-Time Error Messages -- Error Codes AC -- AsCii error Th strin use a th argumen i a AS functio evaluate t nul string. CE -- Close Error An error occurred upon closing a file. CU -- Close Undefined file clos statemen specifie fil numbe tha wa no active. DF -- Defined File A OPE o CREAT wa specifie wit fil numbe tha wa alread o greate tha th numbe o lin number containe i th statement. OM -- Overflow Memory The program ran out of memory during execution. QE -- Quote Error A attemp wa mad t PRIN t fil strin containin quotatio mark. RE -- READ Error A attemp wa mad t rea pas th en o recor i fixe file. RG -- RETURN with no GOSUB A RETURN occurred for which there was no GOSUB. RU -- Random Undefined rando rea o prin wa attempte t othe tha fixe file. SB -- SuBscript A arra subscrip wa use whic exceede th boundarie fo whic th arra wa defined. SL -- String Length concatenatio operatio resulte i strin o mor tha 25 bytes. SS -- SubString error Th secon paramete o MID functio wa zer o negative. TF -- Too many Files A attemp wa mad t hav mor tha 2 activ file simultaneously. TL -- TAB Length TA statemen containe paramete les active. DU -- Delete Undefined file DELET statemen specifie fil numbe tha wa no active. DW -- Disk Write error A erro occurre whil writin t file Thi occur whe eithe th director o th dis i full. EF -- End of File rea pas th en o fil occurre o fil fo whic n IƠ EN statemen ha bee executed. ER -- Error in Record A attemp wa mad t writ recor o lengt greate tha th maximu recor siz specifie i th associate OPEN CREATE o FIL statement. FR -- File Rename A attemp wa mad t renam fil t a existin fil name. FU -- File Undefined A attemp wa mad t rea o writ t fil tha wa no active. IR -- Invalid Record number A record number less than one was specified. LW -- Line Width lin widt les tha o greate tha 13 wa specifie i a LPRINTE WIDT statement. ME -- MAKE Error A erro occurre whil tha o greate tha th curren lin width. UN -- UNdefined edit string PRIN USIN statemen wa execute wit nul edi string. WR -- WRite error A attemp wa mad t writ t fil afte i ha bee read bu befor i ha bee rea t th en o th file. D560D21660B225CC8 :100EAD002E215E2E3630CDDD0C0E30CD490E0E24AA :100EBD00CD490E010100CD510C0E04CD560DC921A9 :100ECD002F30713A6A2C216B2CA61FD2ED0E016AC0 :100EDD000BCD83032A2F304D0600CD7C04CD71043C :100EED00CD3A182A2F304D060021071709095E2328 :100EFD0056EBE9C33918C339182A27304DCDF019EF :100F0D001FD23E0FCD680D1FD22E0FCD730D11CBFD :100F1D002DCD5B1FB5CA2B0F014C44CD6C06C33BC9 :100F2D000F2ACB2D444DCD510C0E08CD560DC3437C :103D000F21A92D362ACD691AC33918CD691AC3C7 :100F4D003918CD971CC33918C33918C33918C3398B :100F5D0018C33918C33918C33918C33918C3391808 :100F6D00C33918C33918C33918C33918C33918C34D :100F7D003918C33918C33918C33918C3391s !o4͠!{ͽ!{s!y~HPy !Uͽ!{![N,F-R !P o ![q,p6 c o c o ɗyOxGc ~O,~G-kZQHG}!w,6,xÛ!~ʼ {Ҽ .F,N,V.~ >xAJSɯGOW^P ,6!r{ !r\ ~# . _ !#w!iͽ.s,~HPy ..~ -Fp !w _ \ ~G_? xA ,~ _ G,~ X OxG{_ G!N!qx!ʌw!i~ >h ͽ>h -P ͌!s\ 6ʶ _x{ 6~!iڿ !^sè ͽ!^sæ ̈́!mҨ !~_ w>,w{!w !iͽ͏ \ wy > !~6" \ 6 -H 1 OW 3 >\ s!à>GOW< }DQ!s!^s,fkd   !e( IN LINE $ERROR $WARNING $1)1) ͱ1) ͧv!)q*)&  !)p+q / *#)#"#) *) *) *) *) *) *) *)0 *)!)p+q*) !)p+q*)))!)p+q!*6>!* !*60**&f ) )(ڵ **&f ) )(+s#r!*4Æ **M !*4x !*r+s+p+q+p+q*! *r+s+q+p+q* *+" *ͮ( **:)+ï +`iN#F#^#V#~#fo}+ !y:!$0w# =>w!$ !$͇ ,0uddvC$0 ʅw#{{6  ͏   y s{Ybw#p#q#r! N#F!q#p2!q!q{9 ~#F#N#V!Y , <    *$A!6 # TI܀1r l7s,w,p,q,r!w>!w!~{_,~,,N,Vê~{_,~,N,VoG!qG{~{̀x!~wbG{ɯ{O!>w>^,G,N,V!~-w{ʌhxG..w.~ʷ<\Ìڷs_!~.w,^pC,^qK,^rS!~.~W-~O-~GҤGyOzW_.~wä_~W-~O-~G 3{bG!{ox{]!~.-qêG,N,V,^!~ȀGxw,~wyد{_zWyOxG. ZQHoxGyOzW{_--~wo_}W}O}G. xSAJS_}o5-{_zWyOxGF} !w!{^rx,t {_w!w!r!s_W!͟.͜.zYPFoOڰJSOҰ}o{_zWyOxGҰ{_zWyê!~w-~w-~wyy!Vw!dwz!Rw!`w{!Nw!\w *w**#"* !*p+q* *|O * *}O >!%)(=  Q *%)DMm !*p+q  Q **DM !*p+q  Q **DM *)#")*)")>͵(")!)(Ҡ >)(")*)")")!)(ھ *)")!*p+q)*Ϳ(!*p+q**N#FͿ / **N#Fa *)**q#p*)DM*)**)DM*)**)DM***)***)DM *)N#F*)**)~*)~*)>(*)>(*)#~*)#~!*q*)##:*w:ҫFO\ *)z *!"*)DM͎*) *)w*)##*)#w!*q*)**M*)͎!*q*)**M*)| ͎͡ *)n *ͬ!*p+q*)>w#6**|*)##w**}*) w*)DM͞*)*)Dn| >r{| >| >!!*p+q*))""*!"&*>"*(*"* ~*"*"*Ϳ(>͵("$**&*"&*> *(* *$*(*"**"*^#V""*Ó> *(MNA *&*!)*p+q>(*( !*(*DḾ",**,* 6*(**,*"0**,**0*N#Fq#p*,*N#F`i"2**,**0*s#r*2*s#r*0* 6*0*##"0**0**,*s#r*,*",**(* *,*!5*p+q>4*(#s#r"4**4* 6*4*##"4**4*^#V"4*>ͫ(*4* ~*4*"6**4*^#x!Kw!Yw!gw!~,V,^B.N qkb_HJx}o|gz'}[kb_PH>}o|g{_>o|g{_>+6* |} !͌!ks͠!k̈́!ks@!os!k͠!o!o!osï!o͠ɯ!ow!"*M"o*O"q!"w կGOy !ss!k͠!oͽ*w!s!M7!os!M͠!s!o!oszWyOI܀1ŕ!Q͌!{s!Q͏ y !Qͽ́!{!{s̈́!Q!Q_!|~G{+s{É!{͠!{ͽ́!ksH!o͠!{ͽ!w,w͌͌5!M̈́5!s!Q͠_!~怰G{!{s!{͠!!{s!{ͽ!M͘!M!{̈́!{s!!{s!{͠!M!os!{͠!M!o!{s!{ͽ!kV"8**8*>(A*8* ~A*8**4*N#Fq#p`i"8**8**4*s#r!":*t *)"=**)"?*!<*6*)~!<*ڊ*)N#F*:*(+s#r":*| !<*4\*=*")*?*")*:*DMa *)~<_DM "=*"A**)*A* w#6!<*6*)~!<**A*##"A**)*A*N#Fq#p| !<*4͡ *)*=*s#r*)^#V"C*| *)^#V"G**C*N#F!F*q+6:F*!E*X| ͆*)*C*^#VN#F(*G* "G*!E*4'͆*C*G*(mBSA *C*##*G*DMa *)q#p*C*##"C*!I*q*)DM :I*3̀*)^#V"J**J*N#FͿ *J*N#F `i"L**L*~=w*J*N#Fͦ*)N#F `i"L*Ϳ 3*L*~/*L*#"L**L**L*~N*(¤>*N*~!P*q:P**)v **)6X| e | *)N#F͏<2Q*f*)N#F͏2R*:R*!Q*2S*f*)N#F*S*M "T*DM*Q*& *)N#F:Q*T*c(DM*R*& ~| ~*)*T*s#r:S*=*T*ẁɟqLSA X҂*)"X*Ì*)^#V"X*eҜ*)"V*æ*)^#V"V**V*~2[*!Z*6:[*!Z**V**X* >*V**X*~>*V*#"V**X*#"X*!Z*4²>~"3N!*6:*!*:**~")EQA **N3N!*4:*J"3~| **#"*ͽ jECA *)DMͦ!*6:*<2*O>ڦ**&)) ^#V")>ͫ(ʣVxs@ ?  +) :-)ͧ!,)"})*,)& 6 *,)&,) })(| *)")II\ û *')#"')!)(DOA *')~*})#"})*})~:)n>P!|)DBDA ͖*|)&,) w f&cERA k*)~5:)z!:)†!|)6-2* šÌ:)¨!,)"):)¶*})"):)*')"):*"!*6,!*6":)*)#")-2*!*:*+~ H!|)4-2*:*":-2*,:* H:͡ ͇*):|)!|)ҝ*|)M*)0*) ͎ð:)«ð*)6 )a  0* )"!)")* )")+"')* )")*)")`"))")*)")")*)*)Ϳ(*DM *))))Ϳ( *)"**)>(**q#p**##>w#6** w#6**^#V"***>w#6**##*)s#r*)~Ҵ ͡ *)#*) w*)>?*)#w*)~Ү .t Q(*)N!' ^#VQ(Q(Q(D ZD\ Q(N!D| ~!\*q!a*6:\*<rDH/SSA ͬ*)~2a*| r*)N#F͏!a*HDHl| ~*)>w#6ͬ*)*)N#F͏!a*#wҡ:\*š:b*<*)wá*):b*w:\*¶*)^#V"_*:\**):b*d(*)~͵("_**):a*d(+"_**_* O "]* _ *)*]* w| ~*)*]*s#r̀*)~!c*C*)DM͎!d*6>!d**c*M! ^#V*d*&*)~/w*d*&*)*d*&*)~`iw*d*&*)*d*&*)~`iw*d*&*)*d*&*)~`iwaq!d*4H>!c*| *)DM͞*))Q!e*6:e*<2e*O!) ~  *))q#p`i:e*w!") !"f**f*~ Y*f*+"f*F !")f*)Ϳ(ڂ*)N *)")b0*)^#V"h*>ͫ(!j*6*h*~!j**j*&*h**) w*)#")ͮ(@!j*4ž*) !*) ~!k*q!*) :k*wOOOOO$*) *)s#r>)(_FEA *)#")*)")*)")))Ϳ(ʈO*)+")<û  ¢#7/ҮM# *) 4 *) > *) 5O& WDA 7!*)r *E!y"!ENA E!*)*)*)| ͎Q(OOͩQ(OOͩQ(OOͩQ(O/OͩQ(O/OͩQ(O/OͩQ(&Q(&Q(&Q(.Q(͏ | Q(| Q(͡ Q(Q(͏| | Q(rOͩQ(rOͩQ(rOͩQ(r/OͩQ(r/OͩQ(r/OͩQ(͏| | Q(͡ t *)*)s#r*)n&")̀Q(Q(t ͡ *)##*)q#p*)^#V")Q(*)N#F `i")| Q(BQ(Q(/"wQ(͆| Q(͆~| Q(g|ZQ(gZQ(#͡ Q(*)*)^N| | Q(!)6wQ(!)6>Q(ͿQ(ͿQ(Q(͡ t *)N#F*)*t Q(*)+"')Q( Q(/Ҕ#>Q(Q(Q(@Q(!*6**& ) )Ϳ(#!*4ë#!~ :*#@#**& ) ^#V")Q(iQ(D#i$*)##")| Q(UQ(BQ(*)DM͎Q(!)6*)")ʹQ(!)6>Q(!)6wQ(&[$͖ [$P$<Q(&~$*)++)(~$ 3h$ 3 3<Q(͙V*)N!) >w#6*)N!) w#6| Q(*)#>wQ(*)DM͎*)DM͞Q(͡ *) *͡ *[DM!Q(r/2 *)")*)#")!)(/>)(!l*q&*)#"))(HVREA `ͽ/7Hz͖ *) 5*):l*w*)>ҔFMA *)~ͅO!) ^#V")>ͫ(ºUFA *)N!) ^#V")&*)")")$*) ^#V")"*) ^#V")G  0 EMA !o*6:o*<2o*O!) >(5 ")*o*&)) q#p&*)")G *)#"m*  *)^#V"p**p*##~:ž*p*#>*)w*p*~==2r**p*##"p*å*p*~2r*> !r*ҳ!r*6 *p*#"p*!s*6RO*p* ~.!r*:s*Hÿ*p**m*DM*s*& R!r**s*&*p**m*!s*:r*_ *)$*) q#p| *)"*) N#Fq#p| :s*<2s**)")*)")͙!")!)6| &/ҊURA XrHҞRIA *)N#F +q#p-ͽ*)}*)#~H_(*)|l_&}(!9g("v**)^}("t*!v*͑(*t* "z**)#^l&}("x**x*}*t*|v*c(͟(H !~*s>z*p(*) +")<!z*͛(#s#r *) :~*ʄ vECA  *) :~*w*|*} *) w| ңͽ͖/Ү͖*)~ºM*)~!*q:*:)/,3!)6*)^#V"***~2*:*!*5*D/Oͩ:*% Q( Q( Q(Q(͡  |  ͡ NT%ZTA Q( Q( *)>(҃%*)>(+s#rg%*)N#F ! +s#r)(/>(Hҳ%@*)^#V")| Q(Q(͡ ́DM!Q(*#)"[Q(Q(͡ >)(DM!Q( *)NO!Q(*)^#V"*>ͫ(**~H<&CAA **#~2*~**M!Q(ͬ "***6*)**# w*)**s#r̀Q(Q(*)N#F͏2*~**M!Q(Q(Q():)$I$a$$$$$$%!%)%1%\%d%%%%%%&&S&&&&&&&''''B'J'm'}'t  N#Fog_og_ogDM!>))Ҍ( =„(^#V) •(^#V|g}o Ÿ(_{ozgO{ozgi`N#Fogo&og_{_z#W712A0D47 :100D16002A7C4FCDC6FIND.COM 03/18/80 $ !9"1:] C++NO FILE NAME++$Oo&6#~ʜ R#ͮ\<̓ 0gͮ!]ͮ!e͇ͮ----> FILE XXXXXXXX.XXX !" !j~0 c|cN# GyaJ{J_ #~ *~#|U͇ !~_~# p^#~ˆ++BAD STRING++$~# x®^#V#N#Fx#~G#~#fo>}ƀo|g+~+w+++ù#~g}o|g~ +p+q2h2|:n>2!\ ͮ:\2!\ ͮ\â!\ ͮ\!\ ͮ\<7=Ɓo& ͮ] ͮ2h#fo> ++ABORT++$ *\RFACE FOR LONG. I WOULD TRY THE STREAM.$I NEED MORE DETAILED INSTRUCTIONS TO DO THAT.$I CAN ONLY TELL YOU WHAT YOU SEE AS YOU M0B2A0D2D4FCDC60B3E0031 :100D26002129CDP728D23D0D01950BCD510C2A71 :100D36002529444DCD6D0CCDD60BC921102A702B1B :100D460071CD0B019F0BCD510C2A0F2A444DCDE8 :100D56000E0DCD0E01C921122A702B71CDD60B01B5 :100D6600A60BCD510C2A112A444DCD0E0DC92A17BA :100D76002923221729C92A1529221329EB3E04CD36 :100D8600B528221529EB211929CDDA28D2A00D3E46 :100D960004111B29CDCC28221529C92A132922156D :100DA6002911040019221329EB211B29CDDA28DA8F :100DB600BE0D2A1929221329C921142A702B711153 :100DC6001B2901132ACDBF289FC921162A7NI $BASIC-E INTERPRETER - VER 2.3$NM $1-1-+,,!/ͫ-"--Ϳ-")e-2-*ʦ+!-6e-:-<2-O!- Hqy$ʆ+h+*-M-0*- *-"-X+͉-*- "-)-Ϳ-" ))-Ϳ-" )͉-* ) " )*- )-+$+,͉-))* ) ")e-,:-3",e-*-w,*-#"- ,,:-6,S-.-S-,:-d,S-*-"-*-6S-e-a,S-*-4O,,S-:-6:-7H:-^H:-HҰ,p-*- )͠-+s#r̀-,:-.,p-*-^#V))* +s#r̀-+v!.p+q*.DMQ    *. 6I*. 6N*. 6T*. #-+,*. *-#"-!͸-R-!"-$-R-*-6*-*- w*-#"-.-*-~2-e-*-#we-*-w*-##"-e-O`iͲ-e-_N#Fog{ozg) ²-{ozgi`N#FogC2A712A134B :100ED600290E02CDDF012A1C2A4D2A1329\60 :100EE600D201CD8E0EC9211D2A712A1329EB0E02BD :100EF600CDDF012A1D2A4D2A1529EBCDD201CD7C45 :100F06000DCD8E0EC9CDA10D2A1329EB016E0BCD89 :100F16002A010E03CDEC0ECDAC0EC9211F2A702B73 :100F2600712A13293E00772336002A1E2A7C2A13AB :100F3600292323772A1E2A7 If the DESTINATION diskette already contains a file by the same name the user is given the option of aborting or erasing the existing copy of the file.$$YOU'RE IN SLAB ROOM.$YOU'RE AT JUNCTION OF THREE SECRET CANYONS.$YOU'RE IN SECRET E/W CANYON ABOVE TIGHT CANYON.$YOU'RE IN NARROW CORRIDOR.$YOU'RE AT STEEP INCLINE ABOVE LARGE ROOM.$YOU'RE IN GIANT ROOM.$YOU'RE IN CAVERN WITH WATERFALL.$YOU'RE IN SOFT ROODocumentation of various original programs written by Ward Christensen -----FIND.COM----- OVERVIEW: Finds ASCII, upper case character strings in a file. May take a generic file name, thus may search all .ASM files on a disk. Also very useful for finding things in MAST.CAT - for example if you have multiple VDM routines: VDMSCROL.ASM, PRINTVDM.ASM, etc you could FIND MAST.CAT VDM to see them all. USAGE: find b:*.asm alpha will find all occurrences of ALPHA in all .ASM files on B:. Used with LIST.COM which takes a starting line number, you can: 1) use find to find a particular part of the code, then 2) use LIST specifying a starting line number just before the part of the code you wanted to see. DEPENDENCIES: Note that FIND is a quickie program - it gets the label to search for from the second FCB so you can't put some special characters in the ASCII string. I.E. find b:*.asm in.to would find IN (since .to would be put as the filetype). !a{   `OE!y6$ -7rBo&))T])))!yV5:=b#:=#:$=2#v+:<"(">6͋5:&=͋5#*&=|"M1Ϳ5#>6͋5:&=͋5>#͋5>6͋5:'=͋5#*&="<(#>͋5:&=͋5>s͋5>@2=#R1Ϳ5#(,#:==2=)(@#>s͋5#͘(Y#X1:>͋5:&=͋5c1Ϳ5#f1Ϳ52=#(—#>͋5:&=͋5>{͋5c1Ϳ5#(#:$=µ#>}͋5c1Ú#:$=;-͘(#>&͋5͋5f2Ú#:$=$v+è":=$,v+2#:$=>$$>͋5v+>͋5>@2$=2#*="<1Ϳ5:=2="<|s$}d$[2Ϳ5z$g$[3Ϳ5>G>)͋5$#͞*D)͏,Ͷ,v++4ʱ$óvR äP ä !9DM!!!!!!͡! ͤ ! ͧ>2N!"S͐G!, ͪ!A ͪ!^ ͪ!} ͪ! ͪ! ͪÈ! ^#Vr+szʈ! ^#Vr+s~#foͭ|xͰÅ!:! ͡G Press CTRL-S to pause; CTRL-C to cancelCopyright (c) 1982 Gary P. Novosielski82-11-14Library DIRectory Ver:%d.%02d %s %s %s Requires CP/M 2.0 or better Correct syntax is: LDIR []... where , , etc. are library names. Filetype .LBR is assumed if not specified. Ambiguous names are not allowed. %s not found on disk.  väc!9DM͐ ͐͐͐ !3 For help, type LDIR alone.n f  ivm !9DM*N}ʙ *8S #|™ !:!I V >2N͐Y | ! ͐\ #| ͐!b V ͐!:_ !.͐\ #| !x !:b !!:e "8#|& !:!} h k + !>2N*Q*O! h ! Can't close library: %s Bad library name: %s.LBR Library: %s has %d entries, %d free:ð ív!9DM*S"U! s#r! s#r*O*Q! s#r! ^#Vr+szU *U "Un}G ͐)| !  ! ͧ *U`iͪ `i! ͭ ! ^#Vr+sR ! ^#Vr+s *O*Q͐! ^#Vr+s! ͭ ! ^#Vr+sÉ !9%-8s Active entries: %u, Deleted: %u, Free: %u, Total: %u. !9DM! ^#Vr+sn`is{ `in}* `in}?!9"y4K͞+88W'+FÎr*y*w#w#w^#V#*~#fo^#*~#fo^#V#*n^#*n^#V# ~#fo^#& ~#fo!+!#!+!#!+!+}|z{|}|z7||7zZZ)|/g}/o#|͉k|/g}/o#ɯ2qZZk:q|/g}/o#|/g}/o#:q<2qqDM!xxGyO҃)v|͔`i|)Öxڷz/W{/_ѯzW{_=yOxGæ2qZZ͉M|}ȯ|g}o)|/g}/o#z/W{/_!9~#fo! ! ! ! ! ! !9~#A"s!`*"!"!Y">2>2>22!"!"!@"!" ʞ!F#x±~#±!b2r~# "2r+}|~#G:rx"2r+w# +6#!6#2w2x*s!>r<o&F=-/` r'~h6!+`W?_!~7z?` :>ª@w#G.¶ww#?*>?w#> w#.7:77 ! ! !9!9DM`iw#w͐n}^ ! ^#Vr+sn! n}R ͐d `i^#Vr+s' !d !9 C# !p }“ s !!*8v !*S*8y +| !*S| | *S ~#fo| *S~#fo| ! *S~#fod*S~#fokp })s *S~#fo+*S*8y *S~#fo+d!  !*S~#fok"O"Q*S"U*Un}ʰ*Q|ʰ*Q+"Q*U "UÊ no directorya bad directory!9DM! w#w`i6#6͐ +! ~#fo͐n&|g}os`i^#Vr+s`i6#6͐ Ґ! ~#fo͐n} XÐ! ~#fo! ^#Vr+s! ~#fo͐ns`i^#Vr+s2! ~#fo n} ʽ! ~#fo! ^#Vr+s6.`i6 #6͐ "! ~#fo͐n} "! ~#fo! ^#Vr+s! ~#fo͐ns`i^#Vr+s! ~#fo͐6͐:!9Iò!9DM!! s#r͐͐~#fox!&! ^#Vr+s͐~#foF`is#rzª!&*S|¹͐"S͐͐s#r!&!9 !run out of memory!!9"1GCAT.COM VER 2.1 OF 2/9/80 DO YOU WANT HARD COPY (Y/N)? $ _Y2]!//m!//!] 5!ʙG56$\<++UNABLE TO OPEN MAST.CAT$ *):> >2 =!|m|m!|m|m!~L#@:<2m:<2:mss s#|.ʪ,ʪ~?ʄ> #Ÿ7~?ʵ Ÿ> #ª*|=\++READ ERROR OR EARLY EOF$!~#"G$> > _: >w#56?#> $<2m:<2:mss s#|.ʪ,ʪMAST CAT NAME DISK NAME DISK $............ ............ FILES:C–EQyQxQRQ** {zҷ*~#" <AOGƐ'@'OxƐ'@'ON# 9DM`i6 #6`i^#Vr+szg͐n͐ nѯgW! s#rzN͐ n}?N͐m! ^#Vr+s! ^#Vr+s !m!9ä!y9DM! `iy`i|!9êí!9DM͐n}! ^#Vr+sn&ͧòE&!h9DM! ^#Vr+s~#fo! s#r͐! s#r! ^#Vr+sn`is{6`in}% ! ! s#r! 6#6! s! s! s͐n}-u! ^#Vr+s! 4͐n}0…! 4͐n&}ʢ! å!! s#r! ^#Vr+sn`is{.! ! s#r! 4! ^#Vr+sn`is`in&}DUUX^OgCʭS ͐~#fo|U! ^#Vr+s6-͐͐~#fos#r! ^#Vr+s! 6 m! 6m! 6! ~#fo! n&! ^#Vr+s~#fo! ѯgs#rV! ^#Vr+s! ^#Vr+s~#fos! ^#Vr+sV! n}! 6#6! ^#Vr+s~#fo! s#r͐n}V͐|V! ^#Vr+s! ^#Vr+sns! ^#Vr+s! ^#Vr+s ͐6! ! s#r! n}­! ^#Vr+s!ҭ! ^#Vr+s! n}ʤ!0ç! sr͐! ^#Vr+sns{! ^#Vr+sí! n}! ^#Vr+s!! ^#Vr+sz8O!B N#N ¾SP.* |} !9":q!" _ 7:,*:=#*!s#r!^#V7:)~:,"s!"u*|*uR**s!ѷʉxO! ! ~„6*u*+"*"*u#"u*s! N#Fp+qE *+*|/g}/o#9#"z{7**~#*7**~#+w# *!9~!0:,!9~o&a{_o 6 ! ^#Vr+s`ins3! ^#Vr+s`ins͐6!9KE!9DM͐͐ қ͐^#Vr+s͐ ҈͐0Ð͐7s!&͐ ͐͐ ͉͐H`is͐ ͐͐ )͐H`in&#&!9!9DM`iw#w͐~#fon&}B͐ ?͐^#Vr+snѯg`is#r͐I!97:O* #7,2q*&:q):ʥ=ʥ=r:qo&   > _ 7:,*:=#*!s#r!^#V7:)~:,"s!"u*|*uR**s!ѷʉxO! ! ~„6*u*+"*"*u#"u*s! N#Fp+qE *+*|/g}/o#9#"z{7**~#*7**~#+w# *!9~!0:,!9~o&a{_o (DUMMY.$$$)  nul edi string. WR -- WRite error A attemp wa mad t writ t fil afte i ha bee read bu befor i ha bee rea t th en o th file. D560D21660B225CC8 :100EAD002E215E2E3630CDDD0C0E30CD490E0E24AA :100EBD00CD490E010100CD510C0E04CD560DC921A9 :100ECD002F30713A6A2C216B2CA61FD2ED0E016AC0 :100EDD000BCD83032A2F304D0600CD7C04CD71043C :100EED00CD3A182A2F304D060021071709095E2328 :100EFD0056EBE9C33918C339182A27304DCDF019EF :100F0D001FD23E0FCD680D1FD22E0FCD730D11CBFD :100F1D002DCD5B1FB5CA2B0F014C44CD6C06C33BC9 :100F2D000F2ACB2D444DCD510C0E08CD560DC3437C :103D000F21A92D362ACD691AC33918CD691AC3C7 :100F4D003918CD971CC33918C33918C33918C3398B :100F5D0018C33918C33918C33918C33918C3391808 :100F6D00C33918C33918C33918C33918C33918C34D :100F7D003918C33918C33918C33918C3391leting ---> ͞:.A3 Delete (Y/N/A)? >AdYPNmR#*#}d+w!" }!" Þ ~6ʘ#*+"+*)")*)L3K (*+L3K).* Ͱ'{3 Tagged files = * Ͱ͘'~6#*+\ "+*)\ ")3 New drive/user? !~}#c:32:52,,W2~aV#S2N:25:23~AQA23#~:ȷ*ʽ0:'G#~:ʶʶ0ڶ6Ҷ025x 25>25!6q !^#6#~zw3 Copy to drive/user?  ̓!~}#c:4G:5.:3G:3 Can't copy to same drive and user.}* Ͱ ~24 >2FÇ2F,:24!Ͱ'~+F…x24:G:3:4G:53 Skipping, same drive & user --> ͞Å:F3 Copying --> $3 SQ/USQ --> ͞3 to :3AD:5D:4o& O L>:D:m3 with CRC.:F| '6Nʞ#*wҖ,}3 --- Aborted ---}!Ͱ'~3 Retagging --> ͞> D'{#*w¹}a/ vw& 3 Can't squeeze yet.͉ !\m:3w 3 Files has illegal decode size. Aborting.}"|/ s#r#/ s#r#*+ @ @ go3 Premature EOF on file... aborted.}:@z =2@:E͜ — ͜  >==2@:E2E:DO:Bµ @ O>=2ByO! ##^#Vzʣ y2Dz> {/a!":!Gm q:3<2m*"/G5 */"/*1w  V/B :3 Verifying --> :5_v!yz6qm<“ 3 Can't open file!}*:"!":m¼ !ç V**:w 3CRC verify error!}3file ok.*/*w:5_v*m7 */w :4_v*"/3 Destination disk full.V/}}o|g* Ͱ ~243 New name, or *? !"8!lͼ#~ } ?ʑ#¡ :5¶ :4w* Ͱ * *#"}*+"" }\2\ q:5_:4 _v!m"1"*."122 22!] q>?6q!"" X͗ ͪ̓3Drive :AD:<…>*D>?Û=_v Ҕ o&L23: !"#"%"'ͼ!";}+ #"3 Illegal drive code.}:_:_v́}*+"*'L3K in #L3 files. *%L3K free.#Ͱ"*1wq3 OUT OF MEMORY?!" ")"+1"*#}3 No files.é,* Ͱz F B0XSHDTʷUV=P2EXLCbMʃAʶRc ?̪Q{}* #" *w}!" ,}* |+" },*" }3 Which drive? :A}Q} :GA2,̓ͼ,*%L3K remaining on drive AD>:D,x2̓}3 Delete file? >Y}* }Ͱ]2\ q6qv_^v\v** {ozg))))xC~# x9*+"* w+" 3 Erase Tagged or Untagged files (T/U)? >TʑU}T>ʙ23 Do you wish to be prompted (Y/N/A)? >}A}Y>2.!" Ͱ'~G:P3 DeH q2G̈́G*;}= 3 Destination file exists!:5M G:4q :4_vv\_v!m q:4_v!\G q̈́2G>?2S*G;}g "̈́G:5_v!mH q̈́G!)))))* SqG ͞ ~243 to v!m͞ #*w, ~s F:`?lG># `ɯ/nm> ?ˆ~#=~:5œ:4:AD n&} ڹ L>:Dy> D$>.D$* #L3. ͞#~#> DL3K : *#yD~D#$,>27Ñ,27<2-3Press ^X to abort, space to advance a line, cr to advance a page. >26* Ͱa/ vw!¸͉ ,!j *""Z++1++_ :-<2-:6O:7:-| U - Untag file L - Log new disk/user | V - View file M - Mass file copy | ? - Display this help P - Print file | cr, sp or F - Forward one file X - Exit to CP/M | Q - Squeeze/Unsqeeze tagged files $\60 :100EE600D201CD8E0EC9211D2A712A1329EB0E02BD :100EF600CDDF012A1D2A4D2A1529EBCDD201CD7C45 :100F06000DCD8E0EC9CDA10D2A1329EB016E0BCD89 :100F16002A010E03CDEC0ECDAC0EC9211F2A702B73 :100F2600712A13293E00772336002A1E2A7C2A13AB :100F3600292323772A1E2A7 If the DESTINATION diskette already contains a file by the same name the user is given the option of aborting or erasing the existing copy of the file.$$YOU'RE IN SLAB ROOM.$YOU'RE AT JUNCTION OF THREE SECRET CANYONS.$YOU'RE IN SECRET E/W CANYON ABOVE TIGHT CANYON.$YOU'RE IN NARROW CORRIDOR.$YOU'RE AT STEEP INCLINE ABOVE LARGE ROOM.$YOU'RE IN GIANT ROOM.$YOU'RE IN CAVERN WITH WATERFALL.$YOU'RE IN SOFT ROOG:F !++2-:-=2-/}F zZF7zXG2G q~6qͳ224*""G<3 Can't open file!}v_:5_v:4ý*" """ͳͺm!yz6qv<3 Destination disk directory full.}G<3 Can't close file!}ͺm<<*"*Gwx{w#"̓f* *wͳͺmv7 *wڏ* "**w~#"*"" ͳGv*"**w= 3 ~#D3 _*!"":\c=2:m?p>2!~ 6? qL~Ҷ# q~##~#~  x„>»é*"!""*|g}o"*+}o|g"!" * " * *"B..b** }o|g" ..* #" *w* Ͱ"*Ͱ"#X**Fwx# k|}!" "#" *"ʜ̳* " #" *+"|*Ͱ*q*#"* Ͱ"* Ͱ" #*~ F : ?G># ɷ!"'*#}! "*'"' x3'w[ÄwiÄdwwÄ} ڂÄyʗڗ> D=Œ ڢ |Ę{0D* #* ~.g x|-#}o|g:$)="%^)))))#~&o))))o!$(#:$k\M}>o}}o}}o}#~#qa{_:_ q: 2$" ?))))"!\*8͍@G:*0O:> O0O::py25r-#*6?w r4##6 -.]r]#*M6?Ow<rdS#6 ]#6f"8 =_.:;<> Í!!yg)Ҳ>g>!o¦r$s%# œ:~#*:O! ~W$^": NSWEEP - Version 1.90 05/26/1983 Dave Rand Edmonton, Alberta A - Retag files | R - Rename file(s) B - Back one file | S - Check remaining space C - Copy file | T - Tag file for transfer D - Delete file *K͞+GG7S'+FÎr ͖ 8{ Ăw#w#w^#V#*~#fo^#*~#fo^#V#*n^#*n^#V# ~#fo^#& ~#fo!+!#!+!#!+!+}|z{|}|z7||7zZZ)|/g}/o#|͉k|/g}/o#ɯ2qZZk:q|/g}/o#|/g}/o#:q<2qqDM!xxGyO҃)v|͔`i|)Öxڷz/W{/_ѯzW{_=yOxGæ2qZZ͉M|}ȯ|g}o)|/g}/o#z/W{/_!9~#fo! ! ! ! ! ! !9~#A"s!`*"!"!Y">2>2>22!"!"!@"!" ʞ!F#x±~#±!b2r~# "2r+}|~#G:rx"2r+w# +6#!6#2w2x*s!>r<o&F=-` r'~h6!+`W?_!~7z?` :>ª@w#G.¶ww#?*>?w#> w#.7:77 !-! ͧ!9SCORE: gold left = %6dCOUNTDOWN: delay = %6d%2d%c   YOU ARE BEING EATENTHIS TAKES ABOUT 2 SECONDSTHE MONSTERS ALWAYS TRIUMPHIN THE END! ?40/5!9DM*>~#fo! s#r! ~#fo|! ^#Vr+s ! *R~#fo~#fo! s#r*R~#fo##~#fo! s#r! ~#fo(k*! ~#fo6 *R~#fo~#fo>‹>ʲ>—>z>£>B>¯>M[*86^#6! ~#fo+(k*! ~#fon`is#r>.>*> >*>*>*>%>*>$'>*a! ! ~#fo! ~#fo *R~#fo##~#fo+s#rw*R~#fow#ww[*86v#6! ~#fo#(k*! ~#fon`is#r>.¿>> >>*>>%>>$>)! ! ~#fo! ~#fo *R~#fo##~#fo#s#r?*R~#fow#w?[! ~#fo|…! ! ~#fo! ~#fo *R~#fo6`i6 #6[*86<#6! ~#fo(k*! ~#fo++n`is#r>.>> >>*>>%>>$>4! !a{   `OE!y6$ -7rBo&))T])))!y":>""G #Ϳ,"x ..Ϳ,.ͭ'5':>?2>I#:>>2> *<-*N*l*2>ͻ':?[#7/ͽ6:>1$:>$:?$_,:>#)’#>66:?6#*?|£#2͈7#>66:?6>#6>66: ?6#*?">)#>6:?6>s6>@2>#2͈7#ͺ)#:>=2>))$>s6#́)($2:>"$2͈7#3͈7#*>">*?">:?ʒ$:>s$)f$>>6:?62͈7#2͈72>#)f$>6:?6>{62͈7#)«$:?„$>}62i$:?$.́)$>&663i$:?$_,w#:>$h-_,$:?>$>6_,>6>@2?$*>">Zþ//â=0ï J00F1!9DM͡! 6#6! ~#fo| ͤ! !-!ͧ!$ !-!ͧ*B~#fo!1 ! ͪ! !9!ͧ*@~#fo+|b!5 !-!ͧ*86@#6*<w#w*>~#fo!A * ͪ* !-!ͧ`iw#w`i~#fo|`i~#fo(k*!`i~#foͧ`i^#Vr+só*F6#! ~#fo! ~#fo *R~#fo~#fo++s#rJ*R~#fow#wJ[! ~#fo|“! ! ~#fo! ~#fo *R~#fow#w`i6 #6[*86>#6! ~#fo(k*! ~#fo##n`is#r>.> > > >*> >%> >$ > B! ! ~#fo! ~#fo *R~#fo~#fo##s#rX*R~#fow#wX[`i~#fo>*m>ʔ>.y>ʔ>$…>ʳ>%‘>Ý*q ^#Vr+s*B^#Vr+sÝ*q ~#fos#rÝ!!-! *@6#6*D6#6*R~#fo6#6*R~#fo6#6*! s#r! w#w! ~#fo|Қ! ~#fo ~#fo+|{! ~#fow#w! ~#fow#w! ^#V! r+s! ^#Vr+s4Ý*! s#r! w#w! ~#fo|U! ~#fo~#fo*R~#fo~#fo+! ~#fo##~#fo*R~#fo##~#fo+! ~#fo *<s#r6*<w#w! ^#V! r+s! ^#Vr+sô*<~#fo#|ʚ*8~#fo*R~#fo~#fo*R~#fo##~#fo ! 9COUNTDOWN: ø0Í7!9DM*@~#fo+|*`is#r! w#w! ~#fo|`i~#fo6*H6#6*Jw#w*Lw#w*Nw#w*8~#fo*R~#fo~#fo*R~#fo##~#foͭ`iw#w`i~#fo! ~#fo+ҧ !@`i~#fo?!ͭ`i^#Vr+si *! s#r! w#w! ~#fo|~ ! ~#fo! ~#fo)s#r! ~#fo##6 #6! ~#fow#w! ~#fow#w! ~#fow#w! ~#fo w#w!M! ~#fo~#fo! ~#fo##~#foͭ! ^#V! r+s! ^#Vr+sþ *:w#w*:^#Vr+s! |¦ Ͱͳ*<~#fo#|½ ò ! w#w! ~#fo| ! ~#foͶ! ^#Vr+s *<~#fo#| ò *R~#fo~#fo+|5 ͳ*<~#fo#|5 ò ! 6#6! ~#fo|j ! ~#foͶ! ^#Vr+s> *<~#fo#|~ ò *@~#fo+|„ *D~#fo|© !ì ! *D~#fo!M * ͪ* !<!ͧ*D^#Vr+s!|҄ !S !-!ͧ*@w#w*R~#fow#w*R~#fow#w! w#w! ~#fo|҄ ! ~#fo k*6#6! ^#Vr+sD ͹*B~#fo|ҡ ͼ*<~#fo#|‰ !o !-!ͧ! !-!ͧ!Ϳ! ^#Vr+s! !-!ͧ! ~#fo|µ! ~#fo)*6#6! `i~#fo~#fo`i~#fo##~#foͲ`i~#fo##6#6`i~#fo6#6`i~#fow#w`i~#fo6#6`i~#fo 6#6!M!!Ͳ`i~#fo!͵##s#r`i^#V! r+s! ^#Vr+s!9057!9DM! ~#fo k*! s#r! ~#fo~#fo! s#r! ~#fo##~#fo! s#r! ~#fo ~#fo+|*m ~#fo! s#r! ~#fo+|ʯ! ~#fo|*:~#fo+! ~#fo)*~#fo|! ~#fo(k*! ~#fon&! ~#fo! ~#fo! ~#fo! ~#fo! ~#fo! ~#fos#r! ~#fo~#fo>=>d>I>ʆ>U>ʨ>a>! ~#fo+! s#r! ~#fo`is#r! ~#fo#! s#r! ~#fo`is#r! ~#fo++`is#r! ~#fo! s#r`i~#fo|`i6! ~#fo##`is#r! ~#fo! s#r`i~#fo|`iw#w! ~#fo(k*`i~#fon}.X X%X$X*Xö! ~#fo`i~#fos#r! ~#fo##! ~#fos#r! ~#fo*R~#fo##~#fo`i~#fo*R~#fo~#fo! ~#fo*<s#r! ~#fo)**q ~#fod͉#s!+*tc!6+*c!^+*c!+*c!+*c!+*<c!+*dc!&,*c!N,*c!v,*c!,*c!,*,c!,*Tc!-*|c!>-*c!f-*c!-*c!-*c!-*Dc!.*lc!..*c!V.*c!~.*c!.* c!.*4c!.*\c!/*c!F/*c!n/*c!/*c!#.## . ### . # . ########### . # . ### . #*$c!B#j## . . . . # . . . ### . . . # . . . . #*Lc!~#æ######## . ##### . ### . ##### . #######*tc!## # . # . . . . . . . . # . # *c!#$ # . # . ### - - ### . # . # *c!2$Z$####### . # . # # . # . #######*c!n$Ö$ . . . # # . . . * c!$$####### . # . # # . # . #######*< c!$% # . # . ########### #r! ~#fo+|U*<~#fo#|U! ~#fo|³*:~#fo! ~#fo)*~#fo|³! ~#fo~#fo+|ˆ!M`i~#fo! ~#foó*<~#fo+|ʳ!S`i~#fo! ~#fo!! 9bad directionÍ7!9DM`iw#w!, ~#fo(k*!* ~#fo!" s#r!( ~#fo~#fo! s#rzʀ!" ~#fon! s#r!|ʀ! ~#fo|ʀ`i^#Vr+s)! 6#6! ~#fo+|!" ~#fo(n! s#r!|! ~#fo|`i^#Vr+s)! 6#6! ~#fo+++|,!" ~#fo++n! s#r!|,! ~#fo|,`i^#Vr+s)! 6#6! ~#fo++|ʁ!" ~#fo##n! s#r!|ʁ! ~#fo|ʁ`i^#Vr+s)! 6#6*m ~#fo+++|ʨ*m ~#fo++++|8!*q ~#fo8*R~#fo~#fo+|! ~#fo>>>>W>>ʗ>>!" ~#fo(n}#T!" ~#fo(n}-T`i^#Vr+s)! 6#6!" ~#fon}#ʔ!" ~#fon}-ʔ`i^#Vr+s)! 6#6!" ~#fo++n}#!" ~#fo++n}-`i^#Vr+s)! 6#6!" ~#fo##n}# !" ~#fo##n}- `i^#Vr+s. # . # *d c!"%J% # . # . . . . . . . . # . # * c!^%Æ%####### . # . ########### . # . #######* c!%%# . . . . . . . . ### . . . . . . . . #* c!%%# % ### . ##### . ### . ##### . ### % #* c!&:&# . . # . . . . . . . . . . . . # . . #*, c!N&v&### . # . # . ########### . # . # . ###*T c!&ò&# . . . . # . . . ### . . . # . . . . #*| c!&&# . ########### . ### . ########### . #* c!'*'# . . . . . . . . . . . . . . . . . . #* c!>'f'#######################################* c*o w#w!f*>6#6*m w#wi*m ~#fo|¼'!lá'*B6#6*q w#wo!''.0r!9######################################## . . . * . . . . ### . . . . * . . . ## % ### . ##### . ### . ##### . ### % ## * . . * . * . * . . * . * . * . . * ## . ### . # . ########### . # . ### . ## . . . * # . . . ### . . . # * . . . ######## . ##### . ### . ##### . ##)! 6#6!* ~#fo*R~#fo~#fo! s#r!, ~#fo*R~#fo##~#fo! s#r! ~#fo|x! 6#6Ù! ~#fo|ґ! 6#6Ù! w#w! ~#fo|ڶ! 6#6! ~#fo|! 6#6! w#w! w#w! w#w! ~#fo`i~#fo *R~#fo~#fo|‹! ~#fo)! ~#fo! ~#fo[! ~#fo)! ~#fo! ~#foˆ! ^#Vr+s)! ! ~#fo)! ~#fos#r! ~#fo)! ~#fo! ~#fo! ~#fo)! ~#fo! ~#fo! ^#Vr+s)! ! ~#fo)! ~#fos#r! ^#Vr+s! ~#fo|8! ~#fo)! ~#foQ`i~#fo)! ~#foQ!$9u{C7=G8?4þ/ >!9DM`iw#w!]`*86@#6*F*Rs#r!'*Tc!(*|c!>(*c!f(*c!(*c!(*c!(*Dc!)*lc!.)*c!V)*c!~)*c!)* c!)*4c!)*\c!**c!F**c!n**c!**c!**$c!**Lc##### # . # . . * . . * . . # . # # . # . ### - - ### . # . # ####### . # . # # . # . ####### * . * # # * . * ####### . # . # # . # . ####### # . # . ########### . # . # # . # * . . . . . . * # . # ####### . # . ########### . # . ######## . . . * . * . . ### . . * . * . . . ## % ### . ##### . ### . ##### . ### % ## . . # * . * . * . . * . * . * # . . #### . # . # . ########### . # . # . #### . * . . # . . . ### . . . # . . * . ## . ########### . ### . ########### . ## . . . . . . . * . . * . . . . . . . ################################################################################ . . . * . . . . ### . . . . * . . . ## % ### . ##### . ### . ##### . ### % ## * . . * . * . * . . * . * . * . . * ## . ### . # . ########### . # . ### . ## . . . * # . . . ### . . . # * . . . ######## . ##### . ### . ##### . ####### # . # . . * . . * . . # . # # . # . ### - - ### . # . # ####### . # . #  5>ʳ5>25>5>3"5>5>4.5>55*R~#fo6#65*R~#fo6#65*R~#fo6#65*R~#fo6#65*R~#fow#w5H45`i6#6^4*m 6#65*m 6#65*m 6#65*m 6#65^4!960/â=!9DM!!!5*R~#fo~#fo+|h7*o ^#Vr+sz“6* n}.m6*B^#Vr+s* 6$!$!! 5*o w#w!w7!-!6*o ~#fo!7* 6* !>!6! ~#fo k*`is#r`i~#fo##6 #6`i~#fo! ~#fo)s#r`i~#fo w#w!M`i~#fo~#fo`i~#fo##~#fo5*q ~#fo s#r!n7!n7!9MONSTERS KILLED: %1dÓ7kG!9DM͐7`is#r`i~#fo! ~#fo)ú7!97/!9DM! ~#fo!-!7*s 6*t 6=*w 68þ/*=;> 8!!8!88!98!L98!98!98!!/:8!{:8!:8!;8!Q;8!x;8!;8!;8!;8!<8!2<8!X<8!<8!<8Attention: you are in a dungeon, being chased by monsters!  # . # . ####### * . * # # * . * ####### . # . # # . # . ####### # . # . ########### . # . # # . # * . . . . . . * # . # ####### . # . ########### . # . ######## . . . * . * . . ### . . * . * . . . ## % ### . ##### . ### . ##### . ### % ## . . # * . * . * . . * . * . * # . . #### . # . # . ########### . # . # . #### . * . . # . . . ### . . . # . . * . ## . ########### . ### . ########### . ## . . . . . . . * . . * . . . . . . . ################################################################################ . . . . . . . . ### . . . . . . . . ## % ### . ##### . ### . ##### . ### % ## . . . . . . . . . . . . . . . . . . #/ >!9DM! ~#fo! ~#fo/! ~#fo/0*=ßC!9DM! ~#fo! ~#fo0! n&0S0â=/!9DM*q ~#fo!0`iM0`i!4!P0*B~#fo!0`iM0`i!9!P0! 9%6d%6d!9DM! w#w! ~#fo|ҵ1`iw#w`i~#fo|ҧ1! ~#fo( There are gold coins scattered uniformly in the dungeon, marked by "+". One magic potion is available at each spot marked "%". Each potion will enable you to kill monsters by touch for a limited duration. It will also scare them away. When you kill a monster it is regenerated, but this takes time. You can also regenerate yourself %d times. Killing all the monsters results in further treasure appearing magically somewhere in the dungeon, marked by "$". There is a magic tunnel connecting the center left and center right parts of the dungeon. The monsters know about it! Type: 4 to move left 6 to move right 8 to move up 2 to move down 5 to halt Q to quit Type: 1 normal game 2 blinking monsters 3 intelligent monsters 4 blinking intelligent monsters !9DM`iw#w`i~#fok*T`i~#fon! s! ~#fo(k*`i~#fo! ns! ~#fo(k*`i~#fo! ns{*›1! ~#fo(k*`i~#fo6.`i^#Vr+s0! ^#Vr+s0*B6#6*>~#fo*>~#fo s#r!92F?4þ/*=;>r=!9DM!21!11*m ~#fo|B3! 6#6!! ^#Vr+s1!N32!! ^#Vr+s1!l32!! ^#Vr+s1!32!! ^#Vr+s1!32!! ^#Vr+s1*m ~#fo!32!! ^#Vr+s1!32!! ^#Vr+s1*q ~#fo!42!! ~#fo1!!422!9 ___________________________ | || G A M E O V E R || || Game type: %1d || || Your score: %-5u ||___________________________|K4CC1!9DMB4|^45E4! s#r! ~#fo|g}o>4†4>15>6’4>H5>8ž4>_5>wª4>_5>2¶4>v5>x4>v5>54>ʍ5>4>ʣ5>4>ʣ5>Q4>ʣ5>4>ʩ5>1! ~#fo?!=`i^#Vr+s!9DM! ~#fo *u s! ~#fo *v s*s -=~=*= >ÓG!!u=!=x=!{=.1è=i>!9DM! ͐ͥ=!9DM͐`is#r! ^#Vr+s! ^#Vr+sns{==͐>!9>ßC!9DM͐n}9>! ^#Vr+sn& >>D>i> >!y9DM! `i>>`iA>!9x>AÂBñBC!h9DM! ^#Vr+s~#fo! s#r͐! s#r! ^#Vr+sn`is{A`in}%³A! ! s#r! 6#6! s! s! s͐n}-?! ^#Vr+s! 4͐n}0?! 4͐n&o>}5?! r>8?!! s#r! ^#Vr+sn`is{.€?! r>! s#r! 4! ^#Vr+sn`is`in&u>}Dʬ?U?X?O?C@@Sq@ÝA͐~#fo|?! ^#Vr+s6-͐͐~#fos#r! ^#Vr+s! 6 @! 6@! 6! ~#fo! n&! ^#Vr+s~#fo! l>ѯgs#r@! ^#Vr+s! ^#Vr+s~#fos! ^#Vr+s@! n}„@! 6#6! ^#Vr+s~#fo! s#r͐n}@͐|@! ^#Vr+s! ^#Vr+sns! ^#Vr+s! ^#Vr+sß@͐6! ! s#r! n!F! s#r! ~#fon}NUD! ~#fo! ~#fo#! ~#fo##sss! ~#fo6! ~#fo6!!C|tE!!C`is! ~#fon! s!|g}o|ʭD`in&|g}os! n&|g}o|D`in! ~#fon}DC"E! n&|g}o|"E`in} E! ~#fo#6tE`in}"E! ~#fo#6tE! ~#fo##n}tE! ~#fo##6! ~#fo###`ins! n&|g}o|tE`in&!C! ~#fo>ˆE>ʻE>”E>ʾE> E>&F>¬E>VF>¸E>fFüFÿF! ~#fo#n}EEUD! ~#fo!C! ~#fo|F! ~#fon&|g}o|F! C! ~#foÿF! ~#fo##n}9FUD! ~#fo##6! ~#fo###n&ÿF! ~#fo##n&ÿF! ~#fon! s! ~#fo! ~#fos! ~#fo|g}o|²F! ~#fo#6! n&ÿFÿF!9Nonsense! #+|F'zF FF |G""GG ! ###G""  Wait a few seconds, and type a CR: $*>HyGyG7*|g}o"zg{o"|g 7*+++:G_*DM!Go&}@A! ^#Vr+s!@A! ^#Vr+s! n}7A!0:A! sA͐! ^#Vr+sns{iA! ^#Vr+s@A! n}ʚA! ^#Vr+s!ҚA! ^#Vr+s6 sAðA! ^#Vr+s`insA! ^#Vr+s`insç>͐6!9AA!9DM͐͐ .B͐^#Vr+s͐ B͐0#B͐7s!&yB͐ ͐͐ ͉͐A`is͐ ͐͐ )͐A`in&#&yB!9!9DM! n&0ͯڭB! n&9ͯ÷BÂB!9DM`iw#w͐~#fon&ʹB}C͐ ?͐^#Vr+snѯg`is#rB͐ C!9CLC!9DM! n&C|AC! n&FC! n&!9DM! n&aͯwC! n&zͯÁCC!9DM! ~#fo!~CåCC!9DM! ~#fo!͢CCC!CCC!CCÖGÓGßC!9DM!F! s#r! ~#fon}NUD! ~#fo! ~#fo#! ~#fo##sss! ~#fo6! ~#fo6!!C|tE!!C`is! ~#fon! s!|g}o|ʭD`in&|g}os! n&|g}o|D`in! ~#fon}DC"E! n&|g}o|"E`in} E!}$ !-!ͧ*B~#fo!1 ! ͪ! !9!ͧ*@~#fo+|b!5 !-!ͧ*86@#6*<w#w*>~#fo!A * ͪ* !-!ͧ`iw#w`i~#fo|`i~#fo(k*!`i~#foͧ`i^#Vr+só*F6#6*H6#6*Jw#w*Lw#w*Nw#w*8~#fo*R~#fo~#fo*R~#fo##~#foͭ`iw#w`i~#fo! ~#fo+ҧ !@`i~#fo?!ͭ`i^#Vr+si *! s#r! w#w! ~#fo|~ ! ~#fo! ~#fo)s#r! ~#fo##6 #6! ~#fow#w! ~#fow#w! ~#fow#w! ~#fo w#w!M! ~#fo~#fo! ~#fo##~#foͭ! ^#V! r+s! ^#Vr+sþ *:w#w*:^#Vr+s! |¦ Ͱͳ*<~#fo#|½ ò ! w#w! ~#fo| ! ~#foͶ! ^#Vr+s *<~#fo#| ò *R~#fo~#fo+|5 ͳ*<~#fo#|5 ò ! 6#6! ~#fo|j ! ~#foͶ! ^#Vr+s> *<~#fo#|~ ò *@~#fo+|„ *D~#fo|© !ì ! *D~#fo!M * ͪ* !<!ͧ*D^#Vr+s!|҄ !S ~#fo#6tE`in}"E! ~#fo#6tE! ~#fo##n}tE! ~#fo##6! ~#fo###`ins! n&|g}o|tE`in&!C! ~#fo>ˆE>ʻE>”E>ʾE> E>&F>¬E>VF>¸E>fFüFÿF! ~#fo#n}EEUD! ~#fo!C! ~#fo|F! ~#fon&|g}o|F! C! ~#foÿF! ~#fo##n}9FUD! ~#fo##6! ~#fo###n&ÿF! ~#fo##n&ÿF! ~#fon! s! ~#fo! ~#fos! ~#fo|g}o|²F! ~#fo#6! n&ÿFÿF!9Nonsense! #+|F'zF FF |G""GG ! ###G""  Wait a few seconds, and type a CR: $*>HyGyG7*|g}o"zg{o"|g 7*+++:G_*DM!Go&}`is#rB͐ C!9CLC!9DM! n&C|AC! n&FC! n&!9DM! n&aͯwC! n&zͯÁCC!9DM! ~#fo!~CåCC!9DM! ~#fo!͢CCC!CCC!CCÖGÓGßC!9DMltiple file names OK TYPE17: Ctrl-S pauses, Ctrl-C Aborts, Ctrl-X skips can't type %s... !9DM͐! ͞!")!")!")!) `is#rzʮ *)|® ͐~ Æ !)!ü !9 Listing file %s !9DM͐##^#Vr+s|^ !͐͐~#fo&!`is#r!|1 ͐##^#Vr+su ͐##͐?+s#r͐͐s#r͐^#Vr+sn&u !9!9DM! n&|g}o! s! n}° !") ! n&| ! n&| ! n} ! n} ! n} ! n}  ! n&y! n} } *)#")|} ! ͞!!͜!`is{D + ! ͞!")`in}f ! ͞#!`in}} !")! ͞!9[more...] that's all folks...no more...!9DM͐| ͐! ͞!ç !)͐)! s#rz ͐! ͞!ç ͐ͭ!! s#r! ~#fo n&|a ͐! ͞!)!xç ! ~#fo#n&|Ҍ ! ~#fo##n&| ! ~#fo n&|Ҳ ͐!͞!)!xç ͐͐ i!8͐ ͤ|g !=͐ ͤ|g !B͐ ͤthose in BASIC, PASCAL and C but also a few in Z-80 or 8080 assembly language) can be converted to run on other machines quite easily. Systems dedicated to downloading programs for the PET, APPLE, TRS-80 and NORTHSTAR do exist, however. Ask experienced users in your area, or check through "other systems" listings on local CBBS's, ABBS's, FORUM-80's, etc. Such systems are often listed in files named OTHERSYS.xxx. 2. XMODEM is a modification of Ward Christensen's original MODEM program designed to allow the transfer of files between the exchange system and yours. The exchange system needs the program, not you; you will probably be using one of the many versions of MODEM itself: e.g. MODEM2, MODEM221, MODEM 926, MODEM7, MODEM75, TRSMODEM, APMODEM, CMODEM, MBOOT3, etc. BSTAM and most of the other commercial terminal programs will not work properly with XMODEM's S or R f|g !G͐ ͤ|g !L͐ ͤ|g !P͐ ͤ|g !U͐ ͤ|g !Z͐ ͤ|u !)!ç ͐ !.<`is#rzʡ ͐##n}Q¡ !qç !aç !9 '%s' bad name, (name too long) Error on %s, check your spelling. Error on %s, check your spelling. File %s not for distribution. .COM.OBJ.BAD.LOG.OV.REL.CRL.IRL!9DM!" i!)ͱ|ʒ!)!a!)ͱ! s#r`i! s#r͐!) s! ^#Vr+sn}¬!)ͱ! s#r͐|͐|͐!͞!)!!"%!"%! w#w͐͐u͐))%!)ͱs#r͐))%##!)ͱs#r! ^#Vr+s%`i͐!͞!")!")!")!)! s#rz*)|͐~ Ù!)!!9%s has invalid decode tree size %s -> %s !"i!c"i!9DM*i|=*i+"i*iÜÜ͐ͥ`is#r!p|t͐"i*i#|k!0u"i*iÜÜ͐ͥ"i|Ž!ÜÜ*i++"i*iÜ!9!9DM`iw#w*i#"i|͐ "i#|!p!"i͐))%*i|g}o)~#foile transfer modes which use the Christensen protocol. BSTAM is also available on many remote systems, to allow multiple file transfers, but it is a licensed program (i.e. NOT public domain), so it is only available to you if you buy it. Certain programs, such as PLINK and some versions of MODEM, can allow files to be "captured" without the benefits of handshaking or error checking. However, if you use such methods, you should bear in mind the following: 1. Errors occurring during the transfer will go undetected unless you catch them (no handshaking/error checking) by visual means, or by transmitting 2 or more copies of the same file. You can then run COMPARE or DF against them until you get a pair that "agree". 2. You may not transfer .COM files. You may, however, use UNLOAD to create .HEX files from .COM files, and the .HEX files can be sent as in #1., above. The receiving end can  ============================================================== RCPMDATA.17A (This file is meant to accompany RCPMLIST.xxx, and is separate from it because it does not require frequent updates.) =============================================================== These are the rules and etiquette for using RCPM systems. Please read this file carefully to get the most from your long distance charges, and to respect the privacy of the SYSOPS who are giving generously of their time and effort to provide this service. =============================================================== General Notes and Comments -------------------------- 1. The systems listed here only carry programs that will run under the CP/M operating system, most of them public domain software distributed by CPMUG or SIG/M, the two main CP/M users' groups. Some of the programs involved (especially then run Digital Research's LOAD to recreate the .COM file from the .HEX file received. 3. You may not be able to transmit some files if they contain certain values, such as hex 1A, which indicates end of file. 3. Non-XMODEM program transfer systems are starting to appear: e.g., LICC's BBS on Long Island [at (516) 561-6590; 110-600+ baud; 24 hrs;no callback] has a few downloadable ASCII files but at present these must be captured like CBBS messages and then saved to disk without any error- checking protocol. John Wood, the sysop of Santa Clara CBBS [at (408) 241-1956; 110-600+ baud; 24 hrs, no callback] has announced plans to implement late-night exchanges; whether these will use XMODEM is not yet clear. Chuck Forsberg's YAM (Yet Another Modem) program is written in BDS-C, and the source is available on several systems in RCPMLIST. 4. Some XMODEM systems also o these systems are running with hard disks. Several are running MP/M. You should become familiar with the USER command to move around on these large capacity disks effectively. You should also become familiar with the SQ and USQ programs. These compress files to 50-85% of their original size. Many such "squeezed" files will be seen on these RCPM systems because squeezing files allows more files to be placed online, and they transfer faster. See the file named SQ-BRIEF.DOC, or SQUEEZER.DOC. Squeezed files are identified by the letter Q in the 2nd position of the filetype; for example, MODEM7.DQC must be run through USQ to produce the readable MODEM7.DOC file. Be sure you download USQ-15.OBJ and rename it at your end to USQ.COM so that you can "unsqueeze" the files you get. 8. All of the RCPM's will accept 300 baud. Many will accept 450 or 600 baud if you can push your "perate as real CBBS's, including those operated by Dick Mead and Steve Vinokouroff. Others, like Keith Petersen's & CCCC's use a skeletal subprogram for handling messages called "MINICBBS". Their emphasis is on exchanging software, not bulletin board type information. Most RBBS systems focus on software, but there are variations. Note that you cannot transfer a .COM file to any of these systems; the xmodem program will not allow it. Some systems will automatically rename any incoming .COM files to .OBJ. In addition, some systems will not let you take .COM files from them. Most systems will also prevent you from taking any files which the SYSOP does not want to distribute. Many systems contain .OBJ files; these are really .COM files which you are allowed to download. By calling them .OBJ, the SYSOP can prevent them from being run on his system, but still make them available t300" baud modem that fast. You can change baud rates during a session by running NEWBAUD on the host system, resetting your rate, and then re-entering terminal mode and pressing a few returns until the host senses what your new baud rate is. Weekends or holidays seem to give better luck with pushing to higher speeds, but the quality of your modem is the biggest factor. Several systems now accept 1200 baud also. 9. You should set your modem into ORIGINATE mode, and run it at FULL DUPLEX while accessing these and most host systems. The normal characteristics are: 8 bits, no parity, 1 stop bit, 300 baud for initial log-in. 10. Some "300 baud" modems capable of greater than 300 baud: The Racal-Vadic 3451s (and the manual MODEMPHONES) have 600 baud capabilities (at ordinary 103 modem frequencies). The PMMI (Potomac Micro Magic Inc.) modem widely used on the S100 RCPM's is often run at 600 and even 7o you via the XMODEM program. 5. "CBBS", "MINICBBS", "RBBS" (and a variant, "MINIRBBS") are the user-logging/message-taking programs used by almost all of the systems on RCPMLIST. You will need one of them if you are interested in starting your own RCPM/XMODEM system. CBBS & MINICBBS are assembly-language programs and cost $50. RBBS & related programs are in MBASIC and free but not quite as good as CBBS, and, of course, you'll need the MicroSoft BASIC compiler to use them ($250). Ask the sysop of this system for details, or read RBBS-USE.DOC, RBBSNSTL.DOC, or CBBSFORM.DOC. 6. A few CBBS' and RBBS' have software exchange functions that require the use of a password. Some such systems are included in RCPMLIST. If you wish to be given a password, you can usually leave a message to the SYSOP (System Operator) on the Bulletin Board of that system. 7. Presently, (05/82), many of10 baud. Two other brands of modem will run at 600: the IDS on-board S- 100 modem and Novation's newly announced RV 3451-lookalike "triple modem". Neither are yet used by an RCPM system. The other systems on RCPMLIST all run either D.C.Hayes or assorted brands of external modem. They usually do not send or receive faster than 300 baud. 11. Do not despise things that are free. It is a curious fact in the computer world that value bears almost no relation to price. Some of the best programs for personal computers are in the public domain. They often work better and are better supported than software costing hundreds of dollars. And, in terms of documentation, commercial programs do not even come close. 12. And please, most of these systems operate from private home telephones... be courteous and call only during the posted operating hours. Note that system operating times are poste 16. Be sure to type BYE before you log off to reset the system for the next caller. If you are hopelessly hung up in a loop, then just hang up and call back in thirty seconds or so; the systems will automatically reset after they sense that the remote caller has hung up the phone. 17. If you discover a problem with the host system, report it by leaving a message on that bulletin board, or by contacting the SYSOP. He may never know if someone does not tell him. This is an easy way to repay for the use of that system, and it will be appreciated by the SYSOP. 18. Do NOT use these systems for commercial messages, ethnic jokes, political commentary, heavy-breathing messages, and the like. Users are of all ages and persuasions, and restraint (or maturity) will be appreciated by all. If you know of anyone abusing a system, please discourage it, or report it to the SYSOP. This sort of abuse has resud in LOCAL time, not necessarily in your time zone. Be sure to translate these times to your own before trying to call a remote system. NOTE: If the system says a "call back" is needed, you must call the number, let the phone ring EXACTLY once only, hang up and redial. On your second call, the modem will answer on the first to third ring. If you get no answer after 3 rings, hang up and try again later. The purpose of all this is that the "call back" systems are using telephones that are also used for personal voice matters. Be sure to respect the generosity and the request of the SYSOPS. 13. Many systems have time limits (usually 1 hour in prime time). You can make more effective use of your time by downloading the directory menus,...usually called DISKMENU.DOC. You can then hang up, print it off, mark the files you want, and then call back. Another effective way to use lted in the loss of several good RCPM systems, wider use of passworded systems, and other restrictive curtailments. 19. Most remote systems have far more files than are online at any one time. Most will accept requests on their bulletin boards to leave certain files online for you for a specified interval of time, and on a certain disk and user #. If you don't see it, look for a .DOC file indicating that the SYSOP offers such help. 20. Speaking of help, be sure to enter HELP at the A> prompt to learn more about CP/M and what the host system offers. ================================================================= *~#+w# *!9~!0:,!9~o&a{_o these systems is to run WHATSNEW on each disk as you log into it; this will list files newly added and deleted since a specified date. A separate copy of WHATSNEW is kept on EACH of the system's drives, so you'll have to execute WHATSNEW on each drive in order to see all of the new files. This can be easily done by just prefixing the drive name to the command. For example, to see what's new on a 3 drive system, type: A:WHATSNEW B:WHATSNEW C:WHATSNEW 14. It would be a good idea to practice file transferring with someone in the local calling area of yours before going to a distant RCPM. If you do not have a local RCPM, practice with another CP/M user. 15. Be sure to look at the .DOC file or the first part of the .ASM file to learn the purpose or restrictions of a program before you bother to download it. If the filetype is AQM or DQC indicating the file is "squeezed", use TYPESQ to view it.  0(+. %:R'<#   >  = HU / ++ ECHO OFF ++ Wʁ]n :R'/2R'   > n :U'¡ >2(:'N | ҩ >B2U'>ͬå:] }͒PR 82y':V'-(: ô >ͬ: å:U' >2(I >B2U'å:]  $ ͥ E:Y'P :U'P / ++ FILE OPEN, READY TO RECEIVE ++ :V'>[ >Cͬ͗p 8ͽ^ ͽå:Y'ʢ / ++ AWAITING NAME NAK ++ P>ͬ! (5 *(\ h"( >ͬ7 !]~ͬ:Y'~0Y  # >ͬ:Y'#QYB >uͬ:Y'5 / ++ CHECKSUM ERROR ++ P>ͬ >ͬ!\ͪ:Y'v / ++ AWAITING FILE NAME ++ 7 v ͈ ʆ 7!]Y :Y' / ++ TIME OUT RECEIVING FILENAME ++  5  w:Y'~0>ͬ} Î :Y'#yͬY5 !\ͪ:Y', / ++ CHECKSUM ERROR ++ 7 , É >ͬY7>2'2 (ͩ !h"( !\(o$ͷ ڐ :fk *(\ h"(! (4k !(5_ !h"(: (A>@2 (!(6!'N!' 6 !'F# ~ # ~ "(+# ~ :(<2(# ~ 6 1ATD $ +++$ATH $ۋӉۉۋ!9"o(1o(> 2r(CR>2Q'/2i:T'Xb>2Á:T' ʁMʁC‚!'Fh}ED]>2Q'%%:T'TʴS{ R KuÁ> 0:Q'W:] >2Q'/2W/ ++ IS INCOMING FILE OBJECT CODE? >>'3##:'NHYC/ ++ ANSWER YES OR NO ONLY PLEASE! ++ >2S'3q(q(!0" (>2Q'W wW COMMANDS - IN TERMINAL MODE =========================== ^Q - XON character ^E - Terminal/Echo (toggle on/off) ^R - Receive informal file (toggle on/off) ^T - Transmit informal file ^I - Kill screen & reprint menu ^O - Off line/return to menu ^P - Printer (toggle on/off) ^S - XOFF character ^D - Disconnect phone (HAYES) ^Z - END of file ^X - Cancel send/receive $=-H l‚/ ++ ECHO ON ++  ʁ]:R'/2R'<·/ ++ PRINTER ON ++ W/ ++ PRINTER OFF ++ WEW*:Q'-:/2</ ++ RECEI*((~  # #~  "(!(p }\ȇ!o ~Y #~+] h!e~w#~w\!\l h!u6B#6A#6Kl!l6\:\2~!\ u:\2!\ u\8!\ u\!\ u\<7A2~=Ɓo& u] u2h2|~# xj>7>Cͬ:y'<2y' ڛ:]'T:Y'ZͣʗC ++ UNABLE TO RECEIVE BLOCK...ABORTING ++ $:]'ʛ:Y'$/ ++ TIMEOUT...:y'͌#$YڍWYڍ/ :]':Y'$/ ++ BAD SECTOR NUMBER IN HEADER ++ $z2v'>2' !Yڍw,:V'QQ2'YڍŒ:v'G:w'ʷ<YڍSO@:]'t:Y'$/ ++ CRC ERROR...î:]'ʚ:Y'$/ ++ CHECKSUM ERROR...îͽ×>ͬ:Y'/ SENDING SECTOR...*w'[/ (0/H) >ͬVE ON ++ -/ ++ RECEIVE OFF ++ -(+W%:S':0:=̉WW>22!0:w#0:w#0" (>(+ x%6#}l&)>o0'q('+|q(!q(ͨ!\q( h!(ͨ!lͨ;:' ʍ}͇/ ++ FILE DOES NOT EXIST ++ / ...TYPE 'R' TO RETURN TO MODEM ++ ...TYPE 'A' TO RE-ENTER NAME COMMAND >>HR0#AURʟÍ͐)R͙)~ / ++ FILE TRANSFER COMPLETED ++ ß/ ++ FILE TRANSFER UNSUCCESSFUL ++ ß/ ++ TRANSFER CANCELLED ++ 2S'6# 6 #­6#¶/ ++ IS OUTGOING FILE OBJECT CODE? >>'3##:'N)Y$/ANSWER YES OR NO ONLY PLEASE! þ>2S'/ ++ ENTER FILE NAME TO BE TRANSFERED...C/R TO QUIT ++ COMMAND >>'3##'!(o$((!%¿=ʷHʿ%©~:S'<=H#ž."0>:w'ͬ:w'/ͬ>2' !~ͬ,2'yͬ>zͬ{ͬ SG:Y'z#x͌/H RECEIVED...NOT (ACK) ++ :y'<2y' :]'ʒ:Y'ʗͣ7C ++ CAN'T SEND SECTOR...ABORTING ++ $:Y'z/ ++ TIMEOUT ON (ACK) ++ z=H1o(Y>ͬY> ͬ/ ++ ROUTINE CANCELLED ++ >B2U'ñ*w'#"w'}2& :&_:' !A_!>2Q'/2:] \<¶/ ++ FILE DOES NOT EXIST ++ !\!:U'\2{'y2~'!("|'R*|'!f"|':~'<2~':~'O(>2Q'/>2Q'!"ZO*ZyO}o|g3|g}!o"Z*ZT]*Z|>/ ++ INVALID OPTION ++  x{!h'v'h!^'U' h2~2R'2S'/2':! ! *** SMODEM 3.91 *** OFFLINE MENU ============ WRT - Write informal file DEL - Erase informal file DSC - Disconnect phone RET - Return to terminal mode CAL - auto-Call <:> XPR - eXpert mode (toggle) MEN - display Menu CPM - exit to CP/M DIR - Directory <:> ^C - reset drives LOG - Log disk drive PRIMARY OPTIONS SECONDARY OPTIONS --------------- ----------------- S... - Send file [fn.ext] ...B - Batch file mode R... - Receive file [fn.ext] ...S - show file as Sent T - Terminal mode ...R - show file as Received E - terminal mode with Echo ...V - View as sent/received K - Kill disk file [fn.ext] ...T - return to Term\)! 2~'!("|'ͬC ++ WRITE ERROR...DISK FULL ++ $%%:dxG:(+ʅjjd7%O:Z'ʤ:]'©:'ʩ:[':]':'O.":]':Y'/ ++ AWAITING INITIAL (NAK) ++ YC(/ ++ (CRC) REQUEST RECEIVED ++ 2V'*"A"L"6"]2T' ʍ!U' …6p#|\:V'œ:T'R\:]'2Y':U' :Y'!]hh/ TRANSFERRED ++ :\2 (!\ͨ: (2\!h'v'h:({ >2'2Q'/2:]'':Y'M/ ++ ALL TRANSFERS COMPLETED ++ >2Q'/2:W'±/ ++ DISCONNECTED ++ $ʏÂ#”$ʨÛ%W:\'W:X' 5 x!l\h2|2h    >(͌>)O_> 0> 0Oa{_ e |[{0|͌}͕͌ ڞ00:U'¬<ɯ2y'/ ++ MULTIPLE ERRORS ENCOUNTERED ...TYPE 'Q' TO QUIT ...TYPE 'R' TO inal mode ...E - return to Echo mode X - force eXpert on boot ...D - Disconnect phone C... - auto-Call on boot ...C - (CRC) request (...number/letter) ...Q - Quiet (no messages) $/ / A0/: COMMAND >>'3##'#DSC]#CPM[#DIRg%#RETS"* (W#WRT"#XPR"#DELҥ"#CAL}#MENҬ#LOGb:'!##ڥSb:r( ʥq(>2Q'/2!q(ͨå:Q'ʥ:r( ʥ* (>2Q'/2S'2!q(ͨå:/2åF# ##7SRTEKMD~/#'###>#)#7#$կ#$C $ʃ#ʃ#ʶ### A#G#4+~##pxZ$#A##G~wڡ#+xF6 ʦ#xZ$A#4A#Z$> Z$>Z$A#>#Z$> Z$> Z$7#G>#Z$> Z$> Z$xA#Z$#A#>Z$5A#> Z$> Z$A#> Z$> Z$F##> w#$H$&$@$a<${<$_*R$*f$* O$#^#6 %&% $ ʧ$ &% $ ·$ç$ $ %&% $ &%#:% :%6# > %> % > RETRY COMMAND >>H#RRQ£~<#0 >/:U'±>Q2Y'~#hPHONE 001>2|!'~ڶw>2|!'~ ©#!'5Ö0:/++ ENTER DIRECTORY NAME >>'3#:' ʁ!(ͨ}!(ͨ(!q h͇<(͐!:|</ *** PHONE DIRECTORY *** ===============================================================  (/++ ENTER NUMBER/LETTER...C/R TO QUIT >>'3##:'ʁ!'~ #!'5+0+:)[9@G!( ":'_> $8+~ʬI#9`,X0\:\0/ ++ DIALING...NOW IN TERMINAL MODE ++ > %%>2Q'/2W/ ++ FAULTY NUMBER...INSPECT DIRECTORY ++ !/ ++ FILE DOSN'T EXIST ++ !/ ++ BAD NUMBER...CALL AGAIN ++ !/ ++ BAD NUMBER...TRY AGAIN ++ á'!\o$i:]CEMTKʢSʢR‡:U'â/ ++ BAD OPTION ++ è:m / ++ RE-ENTER PRIMARY OPTION AND FILE NAME ONLY COMMAND >>'3#S:m >2 %> %w# %:$%_@w# . &%w#&%~*J%#<%M%_%~*[%#O%_%6?#_%> 0r%!2&'!\o$!(ͨ:l2(:m:L& & ')'2 ((0&' ~&~*'_"'~&#%hh/ : : (<2 (#(½%: (#O&/++ FILE NOT FOUND ++#)'#:(_&:&<=_%~x&s&# n&~ډ&„&)&/k BYTES LEFT ON DISK / SELECTED FILE(S) = *'&/ RECORDS !"':&_[/ (/H)>? !(w#'!m( h>?_!:(5'@<'A2J'/ DRIVE : BCDEQRSTVBCDEQRSTV((2D000F2ACB2D444DCD510C0E08CD560DC3437C :103D000F21A92D362ACD691AC33918CD691AC3C7 :100F4D003918CD971CC33918C33918C33918C3398B :100F5D0018C33918C33918C33918C33918C3391808 :100F6D00C33918C33918C33918C33918C33918C34D :100F7D003918C33918C33918C33918C3391martmodem's Auto Dial feature, Escape to Command Mode and On Hook features. These features include... - Kill a disk file. - Terminal mode/Echo mode toggle. - List device toggle, (terminal mode). - Send/receive object-code informal file (terminal mode). - CRC - (cycle redundancy check option). - Auto line-feed is generated in the Echo mode. - Greatly enhansed menu. - Display number of file sectors in decimal and hex during SEND/RECEIVE file. - XON-XOFF recognition in transfer informal file mode. - Double sized telephone directory - 52 entries. - The telephone directory is a separate file. This allows fast editing without the need to recompile the modem programme. Also, many directories may be accessed. - Auto-dial from internal directory to SMARTMODEM. - Direct dial from programme intiation or from menu. - All macros are included in the source listing. - Adapted source code to conform to SOURCE FILE: SMODEM36.DOC NEW FILE: SMODEM37.DOC Use SSED to update your DOC file: SSED SMODEM36.DOC SMODEM37.DOC Changes by Jim Mills of CACHE 02/14/82. ---------------------------------------------------------------- ---------------------------------------------------------------- *** SMODEM3 *** CP/M HAYES-SMARTMODEM PROGRAMME =============================== Version 3.6 Adapted by Walter Blady A MODEM UTILITY FOR 8080 OR Z80 BASED COMPUTERS USING CP/M 2.+ AND AN EXTERNAL SMARTMODEM ***** FOREWORD This programme was originally MODEM7.MAC written by Ward Christensen and revised by M.Zeiger and J.Mills for the PMMI modem board. Full credits for expertise and talent that made this programme possible, belong solely to these people. Many other individuals contributed to the developMicrosoft's M-80 macro assembler syntax. *** SMODEM3 MENU *** COMMANDS - IN MENU MODE ======================= WRT - Write informal file to disk DEL - Erase informal file from disk RET - Return to terminal mode (no data loss) DSC - Disconnect phone (SMARTMODEM) CAL - Auto dial from list (SMARTMODEM) XPR - Expert mode (Toggle menu on/off) DIR - Directory CPM - Exit to CP/M K - Kill disk file [fn.ext] S... - Send CP/M file [fn.ext] SECONDARY OPTIONS R... - Receive CP/M file [fn.ext] ================= T - Terminal mode ...B - Batch file mode E - terminal mode with Echo ...S - show as Sent ...R - show as Received COMMANDS - IN TERMINAL MODE ...V - View as sent/received =========================== ...Q - Quiet, no messages ^O - Off line/exit to menu ...T - return to Terminal mod ^Z - END of file ...E - return to Echo mode ^S - XOFF character ement of this programme, but mentioning them and their contributions here would make this file somewhat unmanagable. Rightful credits are documented in various versions of MODEM. My appologies. Many additional routines included are copyrighted (1980) by Mark M.Zeiger and J.Mills. Permission is granted to use, but not to sell these routnes. If your SMARTMODEM is connected to the serial RS232 port of a DISK JOCKEY controller with primary address (D000H), and your system is 32k or better, then no modifications are needed to SMODEM36.MAC. The elementary I/O routines take advantage of the firmware on the DJ board. If you are using another board, then alterations are needed in the source file. 37 Note: SMODEM37.ASM is modified for use with Digital 37 Research's MAC macro assembler, not for use with 37 Microsoft's M80. See the .ASM file and set the 37 appropriate equates for your I/O. Enhancements were added to the original programme to take advantage of S ...D - Disconnect phone ^Q - XON character ...C - CRC check/not checksum ^P - Printer (toggle on/off) (receive option only) ^T - Transmit informal file ...A - Answer Mode (& offhook) ^R - Receive informal file ...O - Orig. Mode (& offhook) ^E - Terminal/Echo (toggle on/off) ^D - Disconnect phone (SMARTMODEM) ^X - Cancel send/receive COMMANDS IN MENU MODE DETAILED EXPLANATION ***** WRITE INFORMAL FILE TO DISK - 'WRT' ----------------------------------- For the porpose of definition, an 'Informal file' is one which is set-up for recieving or transmitting data, without data validity checks, in the terminal mode. When data has been saved to an 'Informal file', the file must be closed before continuing with other options. The 'WRT' command writes all remaining buffered data to the disk and then closes the file. Information will be lost if this is 'directory-letter and pressing return. Or any number may be typed in the command line. The dial command 'ATD' and the selected number are automatically sent to the SMARTMODEM. If you wish to cancel a call while the phone is ringing, press return. The 'NO CARRIER' message will be sent and SMARTMODEM will go to an on hook (hang-up) state. To redial the same number, give the command 'A/'. All the standard HAYES commands can be issued while in the terminal mode. A second option for dialing a number is from the terminal mode, using the standard SMARTMODEM dial command. Simply type ATD TELEPHONE DIRECTORY ------------------- Directories may be given any name and kept on any disk, but there must always be a 'Default directory' with the name 'PHONE.001' on the default drive. SMODEM3 automatically loads this file if a direct dial is called for. Phone directories may be set-up in two different ways; (see the models below). These models coul not done. DELETE INFORMAL FILE - 'DEL' ---------------------------- This command will delete the 'Informal file' and it won't be saved on the disk. All information held in memory from previous saves will be erased. RETURN TO TERMINAL MODE - 'RET' ------------------------------- The 'RET' command is used to re-enter the terminal mode with no data loss. If information has been saved to an 'Informal file', the user may re-enter the menu mode, but all saved data will be lost if a return to the terminal mode is made with the 'T or E' options. Using the 'RET' allows re-entry to the terminal mode and preserves all saved information. DISCONNECT (SMARTMODEM) - 'DSC' ------------------------------- When Disconnect is initiated, the HAYES default escape code '+++' is first sent to the modem to re-enter the command state, then the 'on-hook' command 'ATH' is sent. This causes the modem to hang up. The programme then enters the menu mode. AUTO-DIAL d be saved to separate files and used as actual directories. More may be set up by duplicating the model over and over. Only the entries need be changed. EXPERT MODE - 'XPR, X' ---------------------- If the 'X' option is included in the command line when SMODEM3 is initiated, it will come up with the menu display turned off. The menu may be toggled on and off during run- time with the 'XPR' option. DIRECTORY - 'DIR ' ---------------------- This option prints the specified disk directory to the screen. RE-ENTER CP/M - 'CPM' --------------------- This option terminates the modem program and returns to the cp/m operating system. KILL A DISK FILE - 'K file.name' -------------------------------- Files may be deleted from the disk without leaving the modem programme. CP/M rules apply. eg. >>K file.name, >>K *.ASM, >>K B:file.A?M PRIMARY AND SECONDARY OPTIONS DETAILED EXPLANATION (SMARTMODEM) - 'CAL, C' --------------------------------- The Auto-dial feature allows the user to call a number automatically from one of several phone directories. Auto-dial primary option may be used in three different ways when initiating SMODEM3: eg. Initiate and ask for directory name. SMODEM3 C ^ (primary option) eg. Initiate and load the default directory 'PHONE.001', then dial the number associated with the directory letter 'M'. SMODEM3 C M ^ (directory-letter) eg. Initiate and dial the given number. SMODEM3 C 231-1898 ^ (any number) Auto-dial may also be used from the MENU mode with 'CAL', The commands are exactly the same except the code 'CAL' is used instead of the 'C' primary option. If the command 'CAL' is used alone, SMODEM3 will ask for a directory name. When the phone directory is up, any number in the directory may be dialed by entering a ***** There are eight primary options in SMODEM3. Originate and Answer options are not used since SMARTMODEM handles these automatically. 37 I don't understand what Mr. Blady means when he says 37 Smart Modem handles answer and originate automatically. 37 I can call up a fellow computer enthusiast and arrange to 37 transfer files, but If I didn't use the "C" option, there 37 are no provisions to put the modem on-line, except by 37 going into terminal mode and giving the command "AT O", 37 then exiting to command mode and giving the send or 37 receive instructions. I decided to re-enable the "A" 37 and "O" secondary options to tell the Smartmodem to 37 go online in a particular mode. Hope Mr. Blady doesn't 37 mind, but I think it's much more convenient. 37 Jim Mills, CACHE, 2/14/82. A primary option may be included in a command line when initiating SMODEM3, or while in the menu mode, but only ONE is allowed. The exception is with 'T', 'M' and 'E'. T (File names may contain ambiguous references, according to the rules of CP/M) The 'B' batch file secondary option may ONLY be used from the menu mode. It may not be included in a command line during initiation of SMODEM3. Command lines entered from the menu mode are virtually the same, except the word 'SMODEM3' is not typed. eg. >>RRD file.name ^ (primary option) The above command line means: R...Receive a file R...Type the file to screen as it is being received D...Disconnect the phone after the file is received file.name...The name of the received file. (The file.name doesn't have to match the sender's. Ambiguous reference in file.name is NOT allowed with the receive option.) When sending a batch of files, ambiguous references may be used according to the rules of CP/M. eg. >>SBST *.BAS S...Send files B...Batch mode hey may be used as secondary options during 'send' or 'receive' S... Send a file R... Receive a file T... Terminal mode E Echo mode X Expert mode C... Auto-dial mode M Menu mode K... Kill a CP/M file There are twelve secondary options. These options may be entered in a command line when initiating SMODEM3 or while in the menu mode. More than one secondary option may be included in a command line. If the (CRC) option is used, then a maximum of six may be included. As you can see, 'T', 'M' and 'E' are also used as secondary options. ...S Print to screen/sending ...R Print to screen/receiving ...V Print send & receive ...Q Don't print messages ...T Return to Terminal mode ...E Return to Echo mode ...D Disconnect ...B Batch files mode ...C (CRC) request ...M Return to Menu mode cyc. redundancy check (option in receive only) ...A Answer Tone connect ...O Originate Tone connect  S...Print files to the screen as they're being sent T...When through, enter the terminal mode *.BAS...Send all the files on the default disk with the extention of 'BAS'. eg. >>SBCM file.name1 file.name2...n S...Send files B...Batch mode M...Enter the menu mode after all files are sent file.name...The list of files to be sent. When receiving files in Batch mode, the file names are NOT specified. They are sent by the sender. SMODEM3 automatically receives and uses these names on the disk. eg. >>RBCE R...Receive files B...Batch mode C...Send a (CRC) character redundancy request to the sender specifying a (CRC) check of data instead of the default CHECKSUM method. E...Go to the Echo mode after all files have been received. (Sending/Receiving INFORMAL Files) Files may be sent or received from the Terminal mode. Th to phone line. to phone line. SENDING/RECEIVING WITH SMODEM3 ***** (Sending/Receiving FORMAL Files) The clasification 'FORMAL' means that all transmitted data are checked for validity against received data. There are two data-check options available. (See information below.) If a primary option is used in a command line when initiating SMODEM3, it must be the first character following the name SMODEM3, with one space preceeding it. Secondary options immediately follow the primary, with no spaces. Secondary options may be entered in any order. eg. SMODEM3 SQT B:file.name ^ (primary option) The above command line means: SMODEM3...Initiate SMODEM3 S...Send a file Q...Don't print any system messages on the screen T...After the file is sent, go to the terminal mode B:...The file is on drive B: file.name...The name of the file to be sent e clasification 'INFORMAL' simply means that data validity checks are NOT made on transmitted data. (You takes your chances.) To save data to an informal file, a file.name must first be specified in the menu mode while giving the 'T' terminal command. The user is the asked if the received data is object code. (All data is either object code or ASCII.) eg. >>T file.name Once in the terminal mode, any incoming data may be saved to this file by simply pressing the '^R' receive toggle. Data may be intermitantly saved by toggling on or off. As soon as all desired data is saved, the file must be closed with the 'WRT' command, from the menu mode. Incoming material may be temporarily stopped and started by issuing the '^S' XOFF' and '^Q XON' commands. To send an informal file, the '^T' transmit command is given from the terminal mode. eg. ^T Following this command the user is asked if the file to be sent is 'object code', then prompted for the f This option will display the file being received, on the screen. SHOW FILE - 'V' --------------- Display sent or received file on the screen. QUIET MODE - 'Q' ---------------- Surpress all system messages; (don't display on the screen). TERMINAL MODE - 'T' ------------------- Enter the terminal mode. may not be specified when when using 'T' as a secondary option. DISCONNECT (SMARTMODEM) - 'D' ----------------------------- Issue the 'Escape' code to the HAYES SMARTMODEM, then hang up the telephone and re-enter the menu mode. BATCH MODE - 'B' ---------------- This option is used to send multiple files. File names can be individually specified in the command line, or they can be specified using ambiguous file names (CP/M convention). Individual file names are sent to the receiver first, then the file contents, until all files are sent. (CRC) cycle redundancy check - 'C' --------------------------------ile.name. The data is sent immediately following a carriage return, so care must be taken that the receiver has enough time to prepare. OPTION SUMMARY ***** PRIMARY OPTIONS =============== SEND A FILE - 'S...' -------------------- Send CP/M files individually or in batch mode using CHECKSUMS or CRC checks. RECEIVE A FILE - 'R...' ----------------------- Receive CP/M files individually or in batch mode using CHECKSUMS or CRC checks. TERMINAL MODE - 'T ' ------------------------------- Enter terminal mode (without echo.). If is specified, then an informal file is set up and data may be saved to this file using the (Receive) ^R' toggle. ECHO MODE - 'E' --------------- Enter echo mode. Echo all characters back to the sender. Auto line feeds are sent following each carriage return. Both terminals may NOT be in echo mode at t-- SMODEM3 defaults to a 'checksum' method of checking data validity during send/receive. Although quite accurate, it is not virtually error free. The secondary option 'C' may be included in the command line to force a (CRC) check of data. The (CRC) methode is 99.99% error proof. The only restrictions are: - Both sender and receiver must use one of the MODEM series programmes that have the (CRC) option. - The (CRC) option may only be included in a RECEIVE command line. If SMODEM3 detects a request for (CRC) during a SEND file, it automatically switches over and informs the operater with a screen message. TERMINAL MODE OPTIONS ***** OFF-LINE - ^O ------------- This command will allow re-entry to the menu mode without disconnecting the phone. END OF FILE - ^Z ---------------- This command sends an end of file ASCII character. XOFF - ^S --------- The XOFF character telhe same time or SMODEM3 will go boobs up. EXPERT MODE - 'X' ----------------- This mode surpresses the menu display upon initiation of SMODEM3. AUTO-DIAL (SMARTMODEM) - 'C ' -------------------------------------- Dial a number directly or display the telephone directory and wait for command. SECONDARY OPTIONS ================= ANSWER TONE - 'A' ----------------- Selecting this option tells the smartmodem to go online using answer (higher frequency) tones. ORIGINATE TONE - 'O' -------------------- Selecting this option tells the smartmodem to go online using originate (lower frequency) tones. If neither 'A' or 'O' are specified, SMODEM37 will assume you are already online and begin whatever command you gave it. SHOW FILE AS SENT - 'S' ----------------------- Selecting this option will display the file being sent, on the screen. SHOW FILE AS RECEIVED - 'R' ---------------------------ls the sending computer to stop data transmission temporarily. (The sender must recognize XON/XOFF protocol). XOFF is used in conjunction with the XON. XON - ^Q -------- The XON character tells the sending computer to resume data transmission. TERMINAL/ECHO (TOGGLE) - ^E --------------------------- Switching between Terminal mode and Echo mode can be accomplished by pressing ^E. A message is printed to warn if ECHO ON or ECHO OFF. PRINTER (TOGGLE) - ^P --------------------- All incoming data may be sent to the printer while in terminal mode. This feature does NOT operate while receiving a file using the 'R' (receive) primary option. A message is printed warning if PRINTER ON or PRINTER OFF. TRANSMIT INFORMAL FILE - ^T --------------------------- This command will send a disk file informally (without error checking). After pressing ^T, the user is prompted for the file.name, and if the file being sent is object code. The filedirectory itself begins with the letter 'A' and ends with the'$'. 'A' MUST BE THE FIRST CHARACTER IN THE FILE. (No CR/LF pairs preceding it.) Do not include the spacing guide below. 123456789012345678901234567890123456789012345678901234567890++ A Apple CBBS.........499-2908 B Tony Bagshaw.......881-1532 C Conn TRS Pick......839-4561 D Conn TRS Miss......266-9110 E Conn TRS North Y...667-9981 F Frank Aylesworth...633-7497 G Bill Groskuth IRN..421-1922 H Heathkit BBS ......273-3011 I J K.Jeejeebhoy ......924-1517 K Microm CBBS........226-7430 L Les Popelyak ......495-2086 M Missisaga CBBS.....826-5394 N O P P.M.I.CBBS(Punter).624-5431 Q Queens BBSNY.1-212-441-3755 R Robert L. .........621-8788 S Sorcerer BBS 1-313-535-9186 T Tony Loutenbach ...223-9238 U V W Walter Blady ......231-1898 X Y  is immediately sent following a carriage return. The transmission can be terminated with the cancel key ^X. OBJECT CODE (SCREEN PROMT) -------------------------- Object code files may be SAVED or SENT while in the terminal mode. The user is prompted during informal file transfer/receive as to whether an object code file is being transmitted. There are no checks to ensure data validity, therefore this feature should only be used when it is not possible to use the 'R' (receive) or 'S' (send) primary options. RECEIVE INFORMAL FILE (TOGGLE) - ^R ----------------------------------- The receive toggle may be used only if a was specified when entering the terminal mode. eg. T Alternately pressing 'R' turns the save feature ON and OFF and the user is prompted with 'SAVE ON' or 'SAVE OFF' message. When the save function is ON, data is simultainiously saved and printed on the screen, and each printed line is preceded by a colon ':' Z a b Heinz Benedikt ....483-5642 c d Craig Dolbeer .....766-8457 e Robert England ....823-4446 f g Dereck Gomes ......493-1270 h i j Jacques Giraud ....656-9646 k l Duncan Lang .......461-2224 m Ed McLean .........749-0691 n o p Perry Porter ......276-4629 q r John Roy ..........691-2810 s Ted Seki ..........741-2141 t u v w x y Yumpin Yiminy .....911-1123 z Good time Zelda ...337-1234 $ ^ ^ ^ | | | (two spaces) (carriage return |  (The colon is not sent to the file.) ECHO MODE (TOGGLE) - ^E ----------------------- Alternately pressing this key toggles between the terminal mode and echo mode. The user is prompted with an 'ECHO ON' or 'ECHO OFF' message. DISCONNECT (SMARTMODEM) - ^D ---------------------------- This key sends the SMARTMODEM default escape code '+++' then issues the command 'ATH' causing the modem to go to an ON-HOOK state (hang up). CANCEL SEND/RECEIVE - ^X ------------------------ This key may be used to cancel files being sent or received in the informal mode, or files being sent using the primary option 'S'. Files being received with the primary option 'R' can't be cancelled by the receiver. This ensures that line noise doesn't inadvertantly stop transmission. PHONE DIRECTORY ***** Two types of directory formats may be set up. (a) TWO ENTRIES PER LINE ------------------------ The  line feed pair (the $ MUST be the last character) not seen, but there) (b) ONE ENTRY PER LINE ---------------------- THERE MUST BE EXACTLY 31 CHARACTERS per line, including the CR/LF pair. Other than that, the rules are the same as the directory above. 1234567890123456789012345678901 A Alphons Stretch....423-1191 B Bernice streetcar..222-0198 C etc...n ^^ $ || (last 2 spaces rep.CR/LF pairs) The length of line in the second directory may be made longer, but alterations must be made in the 'dial routines', in the MAC file. CAUTION: -------- All NUMBERS in the directory line will be sent to SMARTMODEM. Only the numbers to be dialed should be present. CONCLUSION ========== This programme does not include some of the options that were present in other versions: - Baud rate change - Parity select - ForceOMPLETE** **NOW WRITING OUTPUT FILE** ++UNABLE TO MAKE OUTPUT FILE++ ++DISK OR DIRECTORY FULL++ **FUNCTION COMPLETE** ++PROGRAM ABORTED++ - W!E# ¡ # ¬# ·@ʴʥzʖ=ʐ= zJz?4)z zO=!9 Ÿ!6q!2qC J RMAST CAT z=naDISKETTENDX$,!;,!Ù!;qz8O! !;,z;qyO! ͣͣW_͕qyO! ͣ͒qy.............. R............................ S............................ T............................ U............................ V............................ W............................ X............................ Y............................ Z............................ $ ò *@~#fo+|„ *D~#fo|© !ì ! *D~#fo!M * ͪ* !<!ͧ*D^#Vr+s!|҄ !S-send last character typed - Auto dial source code for the PMMI modem The Baud rate and parity select options may be included in a future version. Auto-dial is a built-in feature of SMARTMODEM, and was not needed. SMODEM3 must be assembled with Microsoft's M80 Macro assembler. The assembly commands to create a CP/M COM file are: M80 =SMODEM36 L80 /P:100,SMODEM36,SMODEM36/N/E 37 SMODEM37 is modified for assembly with Digital Research's 37 MAC macro assembler. See SMODEM37.ASM for instructions. If anyone adds features to this programme, or has any comments or suggestions, I would appreciate hearing them. W.B. 1-(416) 231-1898. 17 Bermuda Ave. Toronto, Ontario Canada M8Y 2P6 Or leave a message on Mississaga Can. RIBBS 1-(416) 826-5394. END OW CORRIDOR.$YOU'RE AT STEEP INCLINE ABOVE LARGE ROOM.$YOU'RE IN GIANT ROOM.$YOU'RE IN CAVERN WITH WATERFALL.$YOU'RE IN SOFT ROO USAGE AND RECOMPILATION DOCUMENTATION FOR: 7/18/81 SQ.COM 1.6 File squeezer USQ.COM 1.9 File unsqueezer FLS.COM 1.1 Ambiguous file name expander note (07/16/82): FLS.COM is now unnecessary. With versions 1.6 and 1.9 of SQ and USQ, respectively, a multi-file handling capability is built-in to both SQ and USQ. DISTRIBUTION RIGHTS: I allow unrestricted non-profit distribution of this software and invite users groups to spread it around. However, any distribution for profit requires my permission in advance. This applies only to the above listed programs and their program source and documentation files. I do sell other software. PURPOSE: The file squeezer, SQ, compresses files into a more compact form. This provides: 1. Faster transmission by modem. 2. Fewer di1!I6!p"5!"3!"+A > "5*3#"38!6!".*.#"0*0#"0*3zچ{چ*.#".*3+z{!6:] !b\ !2hͿ.!!!!>22 :2<22 _!ZO> T>22> *0 !*0#"0*3#z/{/ô!ZO*0".#"0*3#z{ý!ZO͇!h+6!6*.*0# *.*0G~p# ))))p~#"> @> @~@#6_> d> d~d#Z:-xͩ!"+<2-*+w#"+>d*+:-ʠ6#<Ôͩ\!K\\\!K ., > *+|=;A!!~#"+sMASTER DISKETTE CATALOG CROSSREFERENCE UTILITY V2.0 ++UNABLE TO OPEN MAST.CAT++ **NOW READING MAST.CAT** ++READ ERROR OR EARLY EOF++ **NOW SORTING FILE NAME TABLE** **SORT Cskettes to distribute a program package. (Include USQ.COM and instructions, both unsqueezed.) 3. Fewer diskettes for archival storage. Any file can be squeezed, but program source files and text files benefit the most, typically shrinking by 35%. Files containing only a limited character set, such as dictionary files, may shrink as much as 48%. Squeezed files look like gibbersh and must be unsqueezed before they can be used. The unsqueezer, USQ, expands squeezed files into exact duplicates of the original or provides a quick, unsqueezed display of the tops of (or all of) squeezed files. Unsqueezing requires only a single pass. Both SQ and USQ accept batches of work specified by lists of file names (with drives if needed) and miscellaneous options. They accept these parameters in any of three ways: 1. On s over the source data. The decoding table is included in the squeezed file, so squeezing short files can actually lengthen them. Fixed decoding tables are not used because English and various computer languages vary greatly as to upper and lower case proportions and use of special characters. Much of the savings comes from not assigning codes to unused byte values. More detailed comments are included in the source files. USAGE TUTORIAL: As usual, you have to learn how to tell the programs what to do (i.e., what parameters to type after the program name). First I will introduce the various possibilities by example. Then I will summarize the rules. In the simplest case either SQ or USQ can simply be given one or more file names (with or without drive names): A>sq xyz.asm the CP/M command line. 2. From the console keyboard. 3. From a file. > FLS.COM NO LONGER NEEDED > > The FLS program can be used (on the same command line!) to > expand parameter lists containing wild-card (ambiguous) file > names into lists with the specific file names required by SQ > and USQ. This combination of programs allows you to issue a single command which will produce many squeezed or unsqueezed files from and to various diskettes. For example, to unsqueeze all squeezed ASM files on drive B and send the results to drive C and also unsqueeze all squeezed TXT files on drive A and send the results to drive D: A>fls c: b:*.aqm d: *.tqt |usq ---> A>usq c: b:*.aqm d: *.tqt <---- vers. 1.9 does same thing as if FLS had been used For detailed instructions see USAGE. This A>sq thisfile.doc b:thatfile.doc will create squeezed files xyz.aqm, thisfile.dqc and thatfile.dqc, all on the current drive, A. The original files are not disturbed. Note that the names of the squeezed files are generated by rules - you don't specify them. Likewise, A>usq xyz.aqm will create file xyz.asm on the A drive, overwriting the original. (The original name is recreated from information stored in the squeezed version.) The squeezed version is not disturbed. Each file name is processed in order, and you can list all the files you can fit in a command. The file names given to SQ and USQ must be specific. You will learn below how to use the FLS program to expand patterns like *.asm (all files of type asm) into a list of specific names and feed them into SQ or USQ. T DOES run under plain old vanilla CP/M! Many of the smarts are buried in the COM files in the form of library routines provided with the BDS C package (available from Lifeboat). The above example simulates a "pipe" (indicated by the "|") by sending the "console" output of the fls.com program to a temporary file and then running the sq.com program with options which cause it to read its parameters from its "console" input, which is really redirected to come from the temporary file. THEORY: The data in the file is treated at the byte level rather then the word level, and can contain absolutely anything. The compression is in two stages: first repeated byte values are compressed and then a Huffman code is dynamically generated to match the properties of each particular file. This requires two passehe above examples let the destination drive default to the current logged drive, which was shown in the prompt to be A. You can change the destination drive as often as you like in the parameter list. For example, A>sq x.asm b: y.asm z.asm c: d:s.asm will create x.aqm on the current drive, A, y.aqm and z.aqm on the B drive and s.aqm on the C drive. Note that the first three originals are on drive A and the last one is on drive D. Remember that each parameter is processed in order, so you must change the destination drive before you specify the files to be created on that drive. Eventually you will have diskettes with many squeezed files on them and you will wonder what is in which file. If they weren't squeezed you would use the TYPE command to look at the comments at the beginning of the files. But squeezed files cted i/o, which will be new to most of you, but will save you so much work you will wonder how you ever got along without it. Perhaps you frequently squeeze or unsqueeze the same list of files and you would like to type the list once and be done with it. Use an editor (or FLS, described below) to create a file with one parameter per line. For example call it commands.lst. Then, A>sq usq -10 x.bas b:y.asm will not take the time to create unsqueezed files. Instead it will unsqueeze the first 10 lines of each file and display them on your console. The display from each file consists of the file names, the data and a formfeed (FF). Also, A>usq - c:xyz.mac will unsqueeze and display the first 65,535 lines of any files listed. That's the biggest number you can give it, and is intended to display the whole file. This preview option also ensures that the data is displayable. The parity bit is stripped off (some Wordstar files use it for format control) and any unusual control characters are converted to periods. You'll seeinformation in a file so you can check it later. The error comments will have the screen to themselves. For example, A>sq out will send the progress comments to the file "out", which you can TYPE later. The routine display of the program name and version, etc., will still go to the console. A more practical example is to send that information to the console and to the file. A>sq fls c: x.asm y*.asm >temp.$$$ will simply pass the first two parameters through to the console output, which is being redirected to a file called temp.$$$. But the third parameter will be replaced by all the files on the current drive which are of type asm and have names beginning with y. FLS is smart enough to know that a letter followed by a colon and nothing else is a destination drive name intended for SQ or USQ. It will also treat any parameter beginning with a - (minus sign) as an option to be passed through. Anything e better view. The parameter handling of these programs is straightforward. Parameters fall into two classes: directed i/o options and operational parameters . Note that parameters read from files or from the console are not forced to upper case, but the internal file handling routines all treat lower case as upper case. When a file to be written already exists, it is quietly overwritten. Directed I/O parameters: The first action taken by these programs is to process directed i/o parameters from the CP/M command line. These parameters are optional and take the forms: file send most console output to file +file send most console output to file and console |pgm ... send most console output to a temporary file then run PGM.COM and take lse is considered a file name or pattern and is checked against the directory of the appropriate drive. Therefore you could use: A>fls b: c:*.aqm *.aqm -10 stuff.dqc >temp.$$$ A>usq era temp.$$$ to unsqueeze all files of type aqm on drives C and A and put the unsqueezed files on drive B, and then preview the first 10 lines of file stuff.dqc. Here is where the pipe comes in. The above three commands can be abbreviated as: A>fls b: c:*.aqm *.aqm -10 stuff.dqc |usq That little "|" is the pipe option and it causes the FLS output to be redirected to a temporary file and when that is done it actually runs USQ for you with the proper input redirection and then erases the temporary file. If that isn't enough, you can still use the + or > redirection option at the end of console input from the temporary file. "..." represent the parameters for PGM. This is called "piping". Only one input and one output redirection can apply to each program. After the program has arranged for any directed i/o parameters to be obeyed they are deleted from the parameter list seen by the rest of the program. Operational parameters: The program then checks if there are any remaining parameters from the CP/M command line. If there are, they are obeyed. If and only if there are no remaining parameters on the command line, the program prompts for them at the console. If console input has been directed to a file one parameter is read and obeyed from each line of the file. Otherwise, the user follows each typed parameter with a RETURN and an empty command exits the program. Each that line to capture the console output from USQ. A>fls b: c:*.aqm *.aqm -10 stuff.dqc |usq >out If you plan your comments carefully you can produce a single file containing an abstract of an entire library of squeezed files in one step! A>fls -25 *.?q? |usq >abstract One final point. Anywhere you specify a file name you can specify a drive in front of it. That applies to redirection and well as files to be squeezed and unsqueezed. If a name begins with a - (minus sign) it will look like an option to FLS unless you put a drive name in front of it (b:-sq.077). USAGE SUMMARY: The previous section gradually presented the various options by example. This section gives a condensed and more abstract description and is intended for reference. If you couldn't see the forest for the trees, maybe this will give you a   operational parameter is obeyed without looking ahead to other parameters, so options should precede the file names to which they apply. SQ operational parameters are a list of the following types: drive: set the current destination drive filename file to be squeezed drive:filename " " " " SQ does not change the files being squeezed. New, squeezed files are created on the destination drive (defaults to the current drive) with names derived from the original name but with the second letter of the file type (extention) changed to Q. When there is no type, QQQ is used. The original name is saved in the squeezed file. USQ operational parameters are a list of the following types: drive: set the current destination drive filename file to be squeezed drive:filename " " " opied to console output unchanged. Any other FLS operational parameter is treated as a file name and is checked against the directory of the appropriate drive. If it contains * or ? it is replaced by a list of all the files which fit the pattern. If nothing is found in the directory an error comment is sent to the console, even if normal console output has been redirected to a file. IMPORTANT: when using a pipe from FLS or any other input redirection to get the file list, etc., on which USQ or SQ are to operate you must NOT put any parameters other than redirection following the program name. They must be all together in the input parameter list. Example: A>fls -10 b:*.cq |usq +saveout is the proper way to preview the top (first 10 lines) of each squeezed .C file on the B drive. The -10 is passed through FL " -count Preview (display on the console) the first "count" lines of each file, where "count" is a number from 1 to 65535. If the -count option IS NOT in effect then USQ creates unsqueezed versions of the listed files on the destination drive, which defaults to the current logged drive. Each unsqueezed file is CRC checked against the CRC value of the original file, which is part of the squeezed file. The -count option is for previewing squeezed files. It allows you to skim through a group of squeezed files, peeking at the first "count" lines in each. The > or + output redirection option could be used to capture this information in a file, along with the corresponding file names, thus forming an abstract of the files on a disk. When the -count option is used tS to USQ. The results will be displayed on the console and saved in file "saveout" on the A drive. The saveout file lets you confirm the list of processed files even if the display scrolls off the screen while running unattended. In summary, i/o redirection parameters (those prefixed by +, <, >, or |) always follow the command to which they apply, but operational parameters (destination drive, -options) must be with the file name list. EXAMPLES: 1. Unsqueeze all squeezed files on the current drive and put the resulting unsqueezed files on the same drive. A>fls *.?q? |usq 2. Look at the first 10 lines of every squeezed file on drive B. A>fls -10 b:*.?Q? |usq note that since the file names for USQ came from FLS, the count option had to come from there too. he CRC check is cancelled and the output is forced into printable form by stripping the parity bit and changing most unprintable characters to periods. The exceptions are CR, LF, TAB and FF. The output from each file is terminated by an FF. PIP can be used to strip FFs and provide formatted printing if desired. "Count" defaults to the maximum value, 65,535, in case you want to look at a whole file. FLS operational parameters: FLS is a "filter", which means it accepts input from the console input or command line and transforms the input according to a set of rules to produce console output. That's fine for getting familiar with FLS, but to make it useful you "pipe" its output to the input of SQ or USQ. Any FLS parameter which is of the form: drive: or -anything is c  4. Squeeze all .ASM files on the B and C drives and put the squeezed files on the D drive. A>fls d: b:*.asm c:*.asm |sq Note that if d: had not been first the squeezed files would have gone to the A drive. 5. Squeeze file xyz.c on the A drive and put the results on the A drive. A>sq xyz.c 6. Build a parameter list of all ASM files on drive C in file XX.PAR and view it on the console. A>fls c:*.asm +xx.par 7. Use the above list to squeeze the files to the A drive. A>sq b: B>a:sq fls b: *.nd the SQ and USQ related files are on B along with BDSCIO.H and DIO.H. Each CC command produces a CRL file with specific addresses for external variables. If you recompile a file with the same value in the -e option you don't have to recompile the other files, just do the desired CC and then repeat the entire CLINK. CLINK's -s option prints statistics. Top of memory means the current TPA. Stack space is what's left over. These programs require stack space for local variables, including some healthy i/o buffers. Also some functions are recursive. If SQ doesn't have several K of stack space it will probably go crazy and do almost anything. For SQ (note not all use -o): D>cc b:sq.c -o -e3200 D>cc b:sqdio.c -e3200 D>cc b:tr1.c -o -e3200 D>cc b:tr2.c -o -e3200 D>cc b:io.c -o -e3200 D>clink basm *.c |sq >out 10. Preview the first 24 lines of each squeezed ASM file THEN unsqueeze them (unless stopped via cntl-C). A>fls -24 *.aqm a: *.aqm |usq Note that specification of a destination drive cancels previewing. RECOMPILATION: These programs are written in C and the instructions are for the BDS C compiler. The libraries must have been adapted for directed i/o as described in DIO2.C. The procedures below indicate the various C language source files (file type .C) required to recompile. Those files contain #include statements which cause header files (file type .H) to be read and compiled. The BDSCIO.H header file contains information about your system, including how much space to reserve for file buffers. You should use your own version of this file. The source files DIO2.C, S:sq sqdio tr2 tr1 io -s The linker will display some statistics. Check that the last code address is less than the start address of the external variables (3200 in this example). If not, repeat the above with a higher address in the -e options. For USQ (note: -e2800 may be enough. Note not all use -o): D>cc b:usq.c -o -e2900 D>cc b:usqdio.c -e2900 D>cc b:utr.c -o -e2900 D>clink b:usq usqdio utr -s Check the addresses as described above. For FLS: D>cc b:fls.c D>cc b:dio2.c D>clink b:fls dio2 IN CASE OF TROUBLE: I welcome suggestions and bug reports, but you must understand that some of the ideas I get would involve almost as much program development as the original package. I have what I want and (I hope) what most users want, so I am not motivated to spend many more months creQDIO.C and USQDIO.C are identical! If you only get one, just use PIP to create the rest. They are separate only to provide separate CRL files, which are needed because of the different external variable options. Note that they do not include all the header files, therefore the other source files must include the dio related headers first. DIO.C is supplied with BDS C. The above three files differ from the official version only by a change to the dioflush function to ensure TEMPIN.$$$ is deleted before another file is renamed to that name. (CP/M is stupid enough to make two files of the same name!). The procedure for building the SQ.COM and USQ.COM files from their source files follows. Note that I have renamed the first phase of the BDS C compiler to CC.COM. Also I will assume the BDS C package is on drive D a!ating something entirely different which just happens to involve data compression. The data compression routines are probably less than half of this package, and are designed to operate on large blocks of data, such as files. Dick Greenlaw 251 Colony Ct. Gahanna, Ohio 43230 614-475-0172 weekends and evenings elp, be sure to enter HELP at the A> prompt to learn more about CP/M and what the host system offers. ================================================================= *~#+w# *!9~!0:,!9~o&a{_o -P3d-O.&/X6,wg=JVMXM6 s.6 ?{JV}F1N؆l1䗠f2}6[rJVK!;jQ 1+Sx}Y3An4k5IYgbx4kվt?c^&4i  ˝YڗnDޜCi*^v? ˝Y8݌wDzzJ+Z布orgz25,Un7lrgzz\?JVv)ӛ~i wxB7)orgzY+v p!i )fa;ӳ&ۗn{(Ze۰ܙeay6ӌ~=)4kՈ![25OӕAn#-sM}gHoFZfڗo v?~}qc:ϐpŸm_f w51&-fh0&1Iߒ97SjG!5VjFJV͔f_D9$;~;cg1#p1I]nI_fq-Az;6mSRqoLX:K7(I/Q>=0 pҬծ eN(1ڗn:VF Bz Y!K~!gB#ш"(4g|A;Fij^^~Vq?/rL~~擹|eM?ΒfQY'[eF(@Zm$55!QK̠}w 3_o!k(p(ZIO{/!?~}qcC;Y̓-2zD1&ی)g߸)$ w(Zե?f/ҬUN|F}fr܁uKĸgA#?tK0~(Zᎂ K:b2$=ĥ> zCi*帽tu ۾o`\y?ΒiҬ帽]CƗI`go)P^,PrHy#m(7-h_:Y6 Po#;,c:)4kMb_B|:)-,`;ӳоtŰYmXL_v2ڗn3Οb) ]φuY+{׳?nG`g}0_Ϧ[d(ZMRK܀{v#$0}(ZCJo²iM'c@Zw(Z=a6Cj~zIm/,gq(ZZn{J+Zq؋Y&x}J=;,c:ڗn{J+Ze(2|d<}f7^~*f& qR wCכAJVV+Aǯ/nlBYy6n(dǯ>JV < /%^!vp'˦_6e:YvQSQUEEZE.DOC]   o! "$#%'&()*+-,.0/214357689:;<=>@?ABCDEFGHJILKMNPOQSRTUVWXYZ[\U"s·\>h~>Lƚ7yμLs#Qc͕c3/\4Լ/k>ϝ;>JVJVE =LXsknK6,w7f252c59לc۰ܙPj0gɹο"˦}>.WҬU8onns 43dR`῱4k5nkN![25,f.o4+S/)^nYY?ҋo_^ƯB^QԐ-zJ+ZWF24is|f汚)I>nxS.q9}/ēҲ 6JV[(q/}cB`㾅,z(Ze\ Q ϰox%tZC3,oܦQިO:JV÷ߧ ǽ/n#=!?qrHvz4k%ܽA9$;~͖eL+R_O:K=JV[(qJVMghLE*Z帣}؆F15,fmڗnzZ1I])Pje丷)4k5jqQSjc5 7oϹۄ`ߎKrHv?P5cf)!wy^J쥮xGc,鶧Ҭռ2{nPd(j;eA Q~Ƞq/׷1SxAᅓ%f}VDf@wҬ&7½ݾtoKYV*XMN~lrgzڗnC u1po/g nQ }փw/׷>uBP*j E ]7ydT /%_N Ci*`"!kB\Gzט)ѾtEi*fߵY^e7M_wK{g w5ҬUQCdҬU;~^un.w';%!P1IٳWLQypG9.򇹇ҬUFea=vIǎ?Fڸd!9(Z;?~}qvx4uXiYM4o 21|VZi֪Rb}Ct2b0/ 5[LoQNxwF:#xKpGf;d?m8cn wH;PAW_~proSnﳼ {4k5z~{;^cke3YMPj_Mc, ; z.탷goӾt_2(čFijr79wo2fHKrJV9Ƶ2,L$˲WiY3fެM/o74}CM㹍ci[&ե۫IY3flLW^n&f͘yr{5ҬUK߆)ѾtiYy|CtxŜ-(Z; ˝Yڗn#;h~N9@}cJVs'~ii_:v,mY)4koSp7pGc6{4c& Mᅣ}6,wg}6JV!nBDAAm^h_:浄JVs ˝YfP%Y};r2|LR׿[BH"sJV&A#Y%AmYa3=ҬUmeLQ9iu :d6=JV.-0G9Y gi2 (ZIO:!;25ff͘yeh?~o_f͘y6mLzPӨ 56Ύm=kh J+Z^D:̼M|!equ)KNҬ~Oic E ie0 GrHy^/@ij}x:7M#.e1}1SlvR"!9HO:!(Z5ۛ,Ku!=6xs4YOiY E> ƌ7Q_YwO;)t4Y?,)I(Zg\_!e]2 XYō OC0m_ogy> RƓݢ4k%OOc.#?~}qc3[!5KQ퐚p$}K:8,!,ey+Pz=n}nY,m~JĸpFij);Ǎ4](ZƦRoIǜ1ߟA (ZB~ϗRx)?!}^]}?.<0(Z]] &-frwAdh~.^JLG&. f!`Դ<3^И^JK%3Y`Ǝ-fZII SZij.).6 ^qS,ܛ_jف(Zd)^J?fzsBDA3YP: $=Kᅓ%x)4k Lqz۰ܙ2X6,wGcHoҢ4kվt~d K7!fHoҧwKJ?f //<2wξ4{{/%)%i܏4kվtPx@Aǯ/nP ~4e:~JYIwSZi*]/VZiV͛m&K;V*`>vоt?}߼,Pq(ZŬ|=ˋ#Px)xt-cBz5mY2|=SZi*SO3~^.,Q.8M3/4#Ci֪0orHv7߳gie Mq糠4kUovp7^8K;&Aǯ/n4k]'?#1n(dǯ=f27~)4k5 kz|fзa3=~JlrgzH'1-c\xwKJVq{IzorgzH'ܱ})4ڴi'4uf`~9;8Ho؆,/HGiʎ?VDfm48yF=4 M]AiY.qw/׷ie!ӯvH /*pҬ$K'-!LR퐚p7VjR ˝S3/2Fmh-FR.ACij;ӳ/F:)4ڴ}|i6(4k5.AӾp6,wgi_MAdQrd!;̱SZi֪);ӣ}53&0ǎ?~K(Z;̱SZiV͛mfޤҬUs{Az;Eh_tx^Gi֪}06o-w^ p$}K:OiYM4o֦ۨwMs(4ky mXLpGmBwc4kel0a\^JVay_1%`󟧴Ҭ&7*jb#;6`+WҬUszPdXL~JwKN;R.Yq{INx0e,wCf w(Z/e^8Yv,VDfm}iQo@3YBiY{8;7vD^ܟ۰ܙ"cоt(Zd|X6,wG1t{C,zFf=xm_̬&3VfʬҬUQCܦK0߳G}6{=6,wg=B1۰ܙEi֪}6ӸgNގ<{_RlB ܡ4k5-c\x3Kᅣ6RD_Y }tKHK}Yy\q=tLYfBhAF넻qMbV^1 WͲzC˾ׇҬ?;a3=KyJ+Ze(jR^Ϣ4kJVvKèy#&wކR:ҬM+c:!t2j31^YEi*ANjn׳ԲtL?ō !(Z7A;.te'xFi֪Wx=)4k|F5=o~yUqrHvzQ/:cp;2œhe4khGFLR/qGzǻM}|8K+Y+Mq74^,c^&<#OiYwP.6KRuGǓecD=eӡ4kվt̴/Ĭ<<#3,o%MR/9NAmf&_)-)79ݷ7h_ fڗY^B-[&˗zF|ewޠ}P}z+3Y{bx}J}=PBoVKG~iۃv$˲,)tf7{VqǖeLGm|ԄgTLQC2yFnPǼL^7{(Zkɂ4#{+]vyM4Ãw3f88!C?~FOb(79Pw,o>%a_޸\t emv,\%s(JVKp}gSZi*2V%zpGQC(1~d(je2Fm!5JV زh_M+)Ia{0p0,;f7v@>pG#>0b|!yFy`0 /%fK}hGFHǎ?|%~4hAfҬՎJ4n)=Z8K9^׳{dY+{_RlBw?׫OCs7)MnJ11AJVId?}/JVMs;7e9ǡ4keǼL㿾i͸2,v -?%fK)79;q{0K׳M+KNCiʾqSȘ2o!;&[Zf'&[!KK&g߸)§}e2)4k5ߟ1I]n)eǨi_: /o[;n(Z2rō?ϧk¸IӾtPx ܡ4k}i9^'2tf`&p0n|w(ZIоtrwVwoȈ-ø~@Cizq?o&)4ke4Dn67RƓN9^͎oǛGHK} w(ZM׃=Os城)٤kqrHvz4k5ΰqOs`:Z$~bx}J}= [CiOf<Ҷ7i []OcܴYXs?oD@ZviKrHӌ4k5o:w~e½Vj GIJbWiGi" Dc5 ƕf|4&`xM74k417Xh|Mn¸qY+ͦo&Bkrƍ+Zh6M}x&WlJ! l}B&17OhVqGz} /%e3ǎoǛi~HJV؃oyt{w;FZ+nP~>L0n 6e:k0;~^ҬU^[;no^'2)4k@bK/1ne:$.OeŬҬfDwohNƕf|4&6'Dk9Wl.1Bk9WlJ!l6',1hV2r7!mޞ˟JV d`"_Y+ͦo7)Zh6M}&IiG)>o6IJ+Z͛ #Ԁ3ehd|fA$^oB~¸RFbV%`& fno[CZ#{s#.:*? пͤ#~+:1s~1s@##ͥ7$:C6 tKsͱ$8Zs:C6tmsͱ$8.͔ 2':C6]sͱ$.pxs.0p!4:4̎sù$~ʤs ʤs.#ʧsÑs6.#7 ʹsw# ¬s+~.s#6Ê*ps!s#~͹$2'*7*7R!)͎?!=8"J6!_7t!:; ͂7?r JpQpWp4EDBACKUP$$$BAKNEW FILE:/25bp͒p͡pOqZ1:4:b2f5>0q:2i52g5:I!ڈp~<2k5>24!vi.>2vC!p ̀ʾp!p ̀p!8"J6×-!v.!6.292F2I2[[-*7"v"7p*7*7R|<2 72 7|D!"7>2 7%q)"7,q2 7!5wȷ!  .>2%!:C6!4̗!:~ͣwv:Jtqw::ʀq>26_7 !p ~87!p  :4=q!CS!7v!4:8:6q6 #:v+!4v8!5~8:4=r!SCAAdy/Tf^&G9$;~=%)߄;d?QiϞp(ZQ=bfN3K,Ʀ{k(Z,.[Q80z,JVK3mo\(79e_7~I4k5I]Iq.3doQ|nofi 6?{eYBƏ(Z?G>4g#-/f/oڗn{J+Zx|:zY3rM#Ig4kFw_L&&mrM64kFnq6GS9p7n9׳[&i-Hi []OcܴYXs&~ډ&„&)&/k BYTES LEFT ON DISK / SELECTED FILE(S) = *'&/ RECORDS !"':&_[/ (/H)>? !(w#'!m( h>?_!:(5'@<'A2J'/ DRIVE : BCDEQRSTVBCDEQRSTV((2D000F2ACB2D444DCD510C0E08CD560DC3437C :103D000F21A92D362ACD691AC33918CD691AC3C7 :100F4D003918CD971CC33918C33918C33918C3398B :100F5D0018C33918C33918C33918C33918C3391808 :100F6D00C33918C33918C33918C33918C33918C34D :100F7D003918C33918C33918C33918C3391v:6v> v&:>(r293r26p(%v!p :50q:+2^5:_5y)͉):C6Ărdr!8"J6:Y5=*J6!a!Z5r5!8"J6;!: ͂7?ɛu pcptp:*/Wͳṗp!vjvLzWvLPj!7I*7:*r̳G31!vPjnpͳpnp,p!vj͇p:*ʤp:Gv2Hvnp&q͆rv2'5k:*ƒqCÐpnp!vj!vj&q7p*7*7Rp!U*v͎> v&31AMG2'o ixg"6!7G*7*7w# q"7z̈CCp!"6Uq!vj:v>qnp>v&:*|t!Hv:Gv6q:*nq*"v|> v&}> v&:v>v&:v>v&͉qÐp*hv*7͎ҥr:u®qïq͎ҥrtWr|¦qqtqqq:IvLr={rڦqqLræq{ræq!Dv:Iv7ȷ:Iv=4rLr;r:Gvo&A> trr1ru(r;r>2IvxeÏq{rA%rQr*7#"7u>2Iv͈C>t:Iv={rLrnræqgo2Dv2Iv#C>2Dv>2Dv2Iv*Gv&"hv|2u͔ xr+!Dvf:Ivo=Lr{r}2Iv|2Dv"hv>2u*Gv|g*Gv͹R8L͉V*Gv"Gv2Av"Ev`i"Bv2?v<#2Iv2DvLs:&vogss&"GvDsnrtst=s͈tt$s"EvLs*EvDs*Gv&[tvuʨutsTsvu[t}uqs33"Ev!sKât͚tځuŠsnr͚tڛuʕu*Gv"+v:&vg$o"Gv2Dv2Ivt*+v"Gv7t|Ҙs˜s:&vs+Lrs[t:Gvg:HvGu|sDM vuums"Ev:Gv&oA:HvtyGeu>2DvmsmsTs͈C8LyG;rQ8LQt;LNt͈Cs͈tt |t |t͈tGx*Bv}”t7+"BvẍCKt!Avtʾt t6 6Út6Gͭt>xɯx t#t+:Dv2IvGux Gu #|t͝r+t:Dv1u||t:Gv)u|t>2Dv7=|t>2Dv:Hv|t|t)u> t`ueu}JuWu# }eu Gx*EvóGóG͈C>kD> kD!Þu͈C8L͈C:&vus  ¶u vu:Hvu|s8uo|uu%uEuͳoÊeu8t çpôp2vþp>2v25Ok$%p͹$!n5L#25yp>,cp͹$!5L#25>)c͔$*`5!5 .>2525:59q~!p!5 L#rqo?q(:5Rq:5kk*5"5>r2'!vͨjͤq{q*5|!p!pà&:5q*5|ʎq+"5:5[qg:5JÔJ?1 ͎rxͨsڼq͎rq͈C2'͗qҭq:5kk7!!:5:55r:5.rĨrr:5:5*7eÈCMh:5*7eC*7!5mrͮG:5:55ro /*7lÈC!n5x:5Srmrermr>+wy<<+w#y25~ʈrr>  > # pr+q#:5:5 r8LãrK?ÈC! p"60͍''/r@Yr>N!d5 7*7~ % *6~!%r͑!~!r2'ͤr͡sys#?"sͩ$ 87B,s-2s>25G@s>2525NJs25WUs>25U`s>25> c"p$p͹$7~͡s#bk))ܝs0_ܝs"5|s!0?::5s!7s*7sÈC!7s*7ltüsIGyOxG7tt  t#s+at#ss#Ltt #0ttattѷt Btat# t~͡s>Ҳt~>ɛ ; M7KP-1.ASM -- Kaypro II overlay file for MDM7xx. 11/11/83 ; ; You will want to look this file over carefully. There are a number of ; options that you can use to configure the program to suit your taste. ; This file adapts the Kaypro II computer to the modem program. Much of ; the information contained here is not in the MDMxx2.ASM file. ; ; Edit this file for your preferences then follow the "TO USE:" example ; shown below. ; ; Use the "SET" command to change the baudrate when desired. It starts ; out at 300 baud when the program is first called up. ; ; TO USE: First edit this file filling in answers for your own ; equipment. Then assemble with ASM.COM or equivalent ; assembler. Then use DDT to overlay the the results ; of this program to the original .COM file: ; ; A>DDT MDM7xx.COM ; DDT VERS 2.2 ; NEXT PC ; 4300 0100 ; -IM7KP-1.HEX (note the "I" command) ; -R ("R" loads in the .HEX file) ; NEXT PC ; 4300 0000 ; -G0 (return to CP/M) ; A>SAVE 66 MDM7xx.A4083545934.................. B4087329190.................. C4082632588.................. D4082875901.................. E3419336..................... F5529968..................... G5950541..................... H9654097..................... I3830473..................... J7072576502.................. K3482139..................... L............................ M............................ N............................ O............................ P............................ Q............................ R............................ S............................ T............................ U............................ V............................ W............................ X............................ Y............................ Z............................ $ #COM (now have a modified .COM file) ; ; = = = = = = = = = = = = = = = = = = ; ; 11/11/83 - Renamed to M7KP-1.ASM, no changes - Irv Hoff ; 07/27/83 - Renamed to work with MDM712 - Irv Hoff ; 07/01/83 - Revised to work with MDM711 - Irv Hoff ; 06/22/83 - Revised to work with MDM710 - Irv Hoff ; 05/25/83 - Revised to work with MDM709 - Irv Hoff ; 04/15/83 - Revised to work with MDM708 - Irv Hoff ; 04/11/83 - Updated to work with MDM707 - Irv Hoff ; 04/04/83 - Updated to work with MDM706 - Irv Hoff ; 02/27/83 - Updated to work with MDM705 - Irv Hoff ; 02/17/83 - Modified MDM703CF for Kaypro II ; computers with external modems - Irv Hoff ; ; = = = = = = = = = = = = = = = = = ; BELL: EQU 07H ;bell CR: EQU 0DH ;carriage return ESC: EQU 1BH ;escape LF: EQU 0AH ;linefeed ; YES: EQU 0FFH NO: EQU 0 ; ; PORT: EQU 04H ;Kaypro II serial output port MODCTL1: EQU PORT+2 ;Modem control port MODDATP: EQU PORT ;Mode8H LSTTST: DB YES ;yes=printer available on printer port 119H XOFFTST: DB NO ;yes=chcks for XOFF from remote while 11AH ;sending a file in terminal mode XONWAIT: DB NO ;yes=wait for XON after CR while 11BH ;sending a file in terminal mode TOGXOFF: DB YES ;yes=allow toggling of XOFF checking 11CH IGNORCTL: DB YES ;yes=CTL-chars above ^M not displayed 11DH EXTRA1: DB 0 ;for future expansion 11EH EXTRA2: DB 0 ;for future expansion 11FH BRKCHR: DB '@'-40H ;^@ = Send a 300 ms. break tone 120H NOCXNNCT: DB 'N'-40H ;^N = Disconnect from the phone line 121H LOGCHR: DB 'L'-40H ;^L = Send logon 122H LSTCHR: DB 'P'-40H ;^P = Toggle printer 123H UNSAVE: DB 'R'-40H ;^R = Close input text buffer 124H TRANCHR: DB 'T'-40H ;^T = Transmit file to remote 125H SAVECHR: DB 'Y'-40H ;^Y = Open input text buffer 126H EXTCHR: DB '^'-40H ;^^ = Send next character 127H ; ; DS 2 ; 128H ; IN$MODCTL1: MVI A,10H ;channel 0, reset interrupts. 12AH OUT MODCTL1 IN MODCTL1 ;get tm data port MODCTL2: EQU PORT+2 ;Modem control port MODRCVB: EQU 01H ;Your bit to test for receive MODRCVR: EQU 01H ;Your value when receive ready MODSNDB: EQU 04H ;Your bit to test for send MODSNDR: EQU 04H ;Your value when send ready ; ; ORG 100H ; ; ; Change the clock speed as needed for your system. ; DS 3 ;(for "JMP START" instruction) ; PMMIMODEM: DB NO ;yes=PMMI S-100 Modem 103H SMARTMODEM: DB NO ;yes=HAYES Smartmodem, no=non-PMMI 104H TOUCHPULSE: DB 'T' ;T=touch, P=pulse (Smartmodem-only) 105H CLOCK: DB 40 ;clock speed in MHz x10, 25.5 MHz max. 106H ;20=2 MHh, 37=3.68 MHz, 40=4 MHz, etc. MSPEED: DB 1 ;0=110 1=300 2=450 3=600 4=710 5=1200 107H ;6=2400 7=4800 8=9600 9=19200 default BYTDLY: DB 5 ;0=0 delay 1=10ms 5=50 ms - 9=90 ms 108H ;default time to send character in ter- ;minal mode file transfer for slow BBS. CRDLY: DB 5 ;0=0 delay 1=100 ms 5=500 ms - 9=900 ms 109H ;default time for extra wait after CRLF ;in terminal mode file he status bits RET DS 3 ; OUT$MODDATP: OUT MODDATP ! RET ;out modem data port 134H DS 7 IN$MODDATP: IN MODDATP ! RET ;in modem data port 13EH DS 7 ANI$MODRCVB: ANI MODRCVB ! RET ;bit to test for receive ready 148H CPI$MODRCVR: CPI MODRCVR ! RET ;value of receive bit when rdy 14BH ANI$MODSNDB: ANI MODSNDB ! RET ;bit to test for send ready 14EH CPI$MODSNDR: CPI MODSNDR ! RET ;value of send bit when ready 151H DS 6 ; OUT$MODCTL1: OUT MODCTL1 ! RET ;out modem control port 15AH OUT$MODCTL2: OUT MODCTL2 ! RET ;out modem status port 15DH ; ; LOGONPTR: DW LOGON ;for user message. 160H DS 6 ; 162H JMP$GOODBYE: JMP GOODBYE ; 168H JMP$INITMOD: JMP INITMOD ;go to user written routine 16BH RET ! NOP ! NOP ;(by-passes PMMI routine) 16EH RET ! NOP ! NOP ;(by-passes PMMI routine) 171H RET ! NOP ! NOP ;(by-passes PMMI routine) 174H JMP$SETUPR: JMP SETUPR ; 177H JMP$SPCLMENU: JMP SPCLMENU ; 17AH JMP$SYSVER: JMP SYSVER ; 17DH JMP$BREAK: JMP SENDBRK ;transfer NOOFCOL: DB 5 ;number of DIR columns shown 10AH SETUPTST: DB YES ;yes=user-added Setup routine 10BH SCRNTEST: DB YES ;Cursor control routine 10CH ACKNAK: DB YES ;yes=resend a record after any non-ACK 10DH ;no=resend a record after a valid NAK BAKUPBYTE: DB NO ;yes=change any file same name to .BAK 10EH CRCDFLT: DB YES ;yes=default to CRC checking 10FH TOGGLECRC: DB YES ;yes=allow toggling of CRC to Checksum 110H CONVBKSP: DB NO ;yes=convert backspace to rub 111H TOGGLEBK: DB NO ;yes=allow toggling of bksp to rub 112H ADDLF: DB NO ;no=no LF after CR to send file in 113H ;terminal mode (added by remote echo) TOGGLELF: DB YES ;yes=allow toggling of LF after CR 114H TRANLOGON: DB YES ;yes=allow transmission of logon 115H ;write logon sequence at location LOGON SAVCCP: DB YES ;yes=do not overwrite CCP 116H LOCONEXTCHR: DB NO ;yes=local command if EXTCHR precedes 117H ;no=external command if EXTCHR precedes TOGGLELOC: DB YES ;yes=allow toggling of LOCONEXTCHR 11$ 180H ; ; ; Do not change the following six lines. ; JMP$ILPRT: DS 3 ; 183H JMP$INBUF DS 3 ; 186H JMP$INLNCOMP: DS 3 ; 189H JMP$INMODEM DS 3 ; 18CH JMP$NXTSCRN: DS 3 ; 18FH JMP$TIMER: DS 3 ; 192H ; ; ; Clear sequences -- CLREOS is clear to end of screen, CLRSCRN is clear ; entire screen. Last entry must be 0. Any other 0's act as NOP's. ; CLREOS: CALL JMP$ILPRT ; 195H DB 017H,0,0,0,0 ; 198H RET ; 19DH ; CLRSCRN: CALL JMP$ILPRT ; 19EH DB 01AH,0,0,0,0 ; 1A1H RET ; 1A6H ; ; SYSVER: CALL JMP$ILPRT ; 1A7H DB 'Version for Kaypro II serial port 04H' DB CR,LF,0 RET ;..... ; ; ;----------------------------------------------------------------------- ; ; NOTE: You can change the SYSVER message to be longer or shorter. The ; end of your last routine should terminate by 0380H (473 bytes ; available after start of SYSVER) if using the Hayes Smartmodem ; or by address 0B80H (2521 bytes) otherwise. ; ;-----------1200 CALL JMP$INLNCOMP DB '9600',0 JNC OK9600 CALL JMP$ILPRT ;ALL MATCHES FAILED, TELL OPERATOR DB '++ Incorrect entry ++',CR,LF,BELL,0 JMP SETUPR ;TRY AGAIN ; OK300: MVI A,1 LHLD BD300 JMP LOADBD ; OK600: MVI A,3 LHLD BD600 JMP LOADBD ; OK1200: MVI A,5 LHLD BD1200 JMP LOADBD ; OK9600: MVI A,8 LHLD BD9600 ; LOADBD: STA INITMOD1+1 ;CHANGE TIME-TO-SEND TO MATCH BAUDRATE MOV A,L ;GET BAUDRATE BYTE STA INITMOD2+1 ;SEND TO 'CTC' FOR NEW BAUDRATE JMP INITMOD1 ;REINITIALIZE TO NEW BAUDRATE, THEN DONE ; ; ; TABLE OF BAUDRATE PARAMETERS ; BD300: DW 0005H BD600: DW 0006H BD1200: DW 0007H BD9600: DW 000EH ; BAUDBUF: DB 10,0 DS 10 ; ;----------------------------------------------------------------------- ; ; The following routine can be used as an auxiliary menu for notes of ; interest to a particular computer, etc. If using the Hayes Smartmodem ; this is unavailable without a spcial address change. ; SPC------------------------------------------------------------ ; ; You can put in a message at this location which can be called up with ; CTL-O if TRANLOGON has been set YES. You can put in several lines if ; desired. End with a 0. ; LOGON: DB 'This is a KayPro computer',CR,LF,0 ;..... ; ; ; This routine allows a 300 ms. break tone to be sent to reset some ; time-share computers. ; SENDBRK: MVI A,5 OUT MODCTL1 MVI A,0F8H ;SEND A BREAK TONE JMP GOODBYE1 ;..... ; ; ; This routine sends a 300 ms. break tone and sets DTR low for the same ; length of time to disconnect some modems such as the Bell 212A, etc. ; GOODBYE: MVI A,5 OUT MODCTL1 ;SEND TO THE STATUS PORT MVI A,68H ;TURN OFF DTR ; GOODBYE1: OUT MODCTL1 MVI B,3 ;DELAY 300 MS. CALL JMP$TIMER MVI A,5 OUT MODCTL1 MVI A,0E8H ;RESTORE TO NORMAL, 8 BITS, DTR ON, ETC. OUT MODCTL1 RET ;..... ; ; ; Kaypro II initialization -- sets CTC timer 00H for send and receive ; baudrate. ; LMENU: RET ; ;----------------------------------------------------------------------- ; ; ; NOTE: MUST TERMINATE PRIOR TO 0380H (with Smartmodem) ; 0B80H (without Smartmodem) ; END ; ----------- ; ; ; NOTE: MUST TERMINATE PRIOR TO : : (<2 (#(½%: (#O&/++ FILE NOT FOUND ++#)'#:(_&:&<=_%~x&s&# n&~ډ&„&)&/k BYTES LEFT ON DISK / SELECTED FILE(S) = *'&/ RECORDS !"':&_[/ (/H)>? !(w#'!m( h>?_!:(5'@<'A2J'/ DRIVE : BCDEQRSTVBCDEQRSTV((2D000F2ACB2D444DCD510C0E08CD560DC3437C :103D000F21A92D362ACD691AC33918CD691AC3C7 :100F4D003918CD971CC33918C33918C33918C3398B :100F5D0018C33918C33918C33918C33918C3391808 :100F6D00C33918C33918C33918C33918C33918C34D :100F7D003918C33918C33918C33918C3391; INITMOD: MVI A,00H ;SELECT REG. OUT MODCTL1 MVI A,18H ;THROW OUT OF MODE OUT MODCTL1 MVI A,04H ;SELECT REG. OUT MODCTL1 MVI A,44H ;SET ASCII PARAMETERS OUT MODCTL1 MVI A,03H ;SELECT REG. OUT MODCTL1 MVI A,0C1H ;ENABLE RECEIVE OUT MODCTL1 MVI A,05H ;SELECT REG. OUT MODCTL1 MVI A,0EAH ;ENABLE SEND, DTR, RTS OUT MODCTL1 ; INITMOD1: MVI A,1 ;SET FILE TRANSFER TIME STA MSPEED MVI A,47H OUT 00H ;SEND TO 'CTC' TIMER INITMOD2: MVI A,05H ;INITIALIZE TO 300 BAUD OUT 00H ;SEND TO 'CTC' TIMER RET ;..... ; ; ; Sets the modem speed via the SET command. ; SETUPR: LXI D,BAUDBUF ;POINT TO NEW INPUT BUFFER CALL JMP$ILPRT DB 'Input Baud Rate (300, 600, 1200, 9600): ',0 CALL JMP$INBUF LXI D,BAUDBUF+2 CALL JMP$INLNCOMP ;COMPARE BAUDBUF+2 WITH CHARACTERS BELOW DB '300',0 JNC OK300 ;GO IF GOT MATCH CALL JMP$INLNCOMP DB '600',0 JNC OK600 CALL JMP$INLNCOMP DB '1200',0 JNC OK$!9DM! ~#fo#n}:c! ~#fo#n}:`! ~#fon&! n&Z! ~#fo##s#r`!Õê! ~#fo#n}:ʪ! ~#fon&! n&¤! ~#fo##s#rê!Õ! ^#Vr+sn`is{|`in}?! ^#Vr+sn`is{`in}.ê!Õy`in}*U͐n`is{*! ^#Vr+s`in}.'*͐n`is{R! ^#Vr+s`in}.OR*y`in! ^#Vr+sn}sêy!Õê͐n}!ÕÕ!Õ!9!y9DM! `i`if!9!9DM͐!͐~#fo9"!9DM`iw#w! ^#Vr+sn}`i^#Vr+s͐ !9!9DM͐!͐<"s#rzS!͐##w#w͐~#fo!9DM͐`is#r! ^#Vr+s! ^#Vr+sns{ʡ{͐è!9!9DM͐ `is#rz͐ ! s#rz͐?͐!!9!h9DM! ^#Vr+s~#fo! s#r͐! s#r! ^#Vr+sn`is{W`in}%A! ! s#r! 6#6! s! s! s͐n}-–! ^#Vr+s! 4͐n}0¦! 4͐n&4 }! c !! s#r! ^#Vr+sn`is{.! c ! s#r! 4! `is#r5͐))%*i"i|g}o)~#fo`is#r͐|ҳ͐#`is#r͐|_!c͐`is#r͐p!9!9DM!!ͽ!| !!ͽ!! s{¶#! ! n}!!ͽ!|!!ͽ!! s ! n} !͞!")! n} W*)+|g}o`is#r`i^#Vr+szT! !ͽ!*)#").Ù! n&!ͽ!! n} ~! n} ‡!")Ù! n} ʙ*)#")!9 !9DM͐`is#r͐n}-͐n͐ n}͐`is#r͐ ! s#r͐n}͐3`i^#Vr+sn! ^#Vr+sn}! ^#Vr+sö!3!9!9DM͐n}s! n͐n}e͐! ^#Vr+sD!!9DM!͜!!n s͐{~#fo! s#r͐y~#fo! s#r`i6#6!l w#w!!! s#rz!m!o 6#6͐|V͐o͐V! ~#fo͐o)~#fon}!|͐o+|J! ~#fo͐)!vs#r! ^#Vr+s!l ^#Vr+s)!D ! ~#fo͐o)~#fo#s#rH! ~#fo͐o)~#fo͸|! ~#fo`i^#Vr+s)! ~#fo͐o)~#fos#rH! ~#fo͐o)~#fo! "!. !B s#r! ~#f^#Vr+sn`is`in& }D:UvXOʈCS+͐~#fo|v! ^#Vr+s6-͐͐~#fos#r! ^#Vr+s! 6 Î! 6Î! 6! ~#fo! n&! ^#Vr+s~#fo! ͒ѯgs#rw! ^#Vr+s! ^#Vr+s~#fos! ^#Vr+sw! n}! 6#6! ^#Vr+s~#fo! s#r͐n}w͐|w! ^#Vr+s! ^#Vr+sns! ^#Vr+s! ^#Vr+s-͐6! ! s#r! n}! ^#Vr+s!|! ^#Vr+s! n}!0! sÓ͐! ^#Vr+sns{! ^#Vr+s! n}(! ^#Vr+s!|(! ^#Vr+s6 >! ^#Vr+s`insT! ^#Vr+s`ins5͐6!9!9DM͐n}ʐ! ^#Vr+sn&̀"n!9DM͐͐ ͐^#Vr+s͐͐0͐7s!&+ ͐ ͐͐ ͉͐͒`is͐ ͐͐ )͐͒`in&#&+ !9!9DM! n&|ͯ_ ! n&|ͩ!9DM`iw#w͐~#fon&4 }ʰ ͐ ?͐^#Vr+snѯg`is#rq ͐÷ !9!9DM! n& | ! n& ! n&&!9DM! o͐o)~#fo#n!/ s{:W! ~#fo͐o)~#fon!. s!0 !B s#r!. n&!͜!!- 6͐|7! !- n}!Â!͜!!, s!, n}œ7!- 6!, n& ?2"|4!, n& ?͐Bz! ~#fo͐)!. #!s#rz!m!. ! ~#fo`i^#Vr+s)~#foi]!n n&!͜!!o ^#Vr+s!o w#w͐o͐lK!q 6#6͐q͐=!n n&! ~#fo͐q)~#fo͐o)!D ~#fo|/͐q`i^#Vr+s/͐q!s s#r͐s͐,! ~#fo͐s)! ~#fo͐s#)~#fos#r!s ^#Vr+sÇ!q ^#Vr+sw!o ^#Vr+s^͐y͐s#r͐{͐s#r!m!u9*.*!9DM! w#w`i6#6͐|! ~#fo͐n} ·! ~#fo! ^#Vr+s! ~#fo͐n&|g}os`i^#Vr+sÑ! ~#fo n} '! ~#fo! ^#Vr+s6.`i6 #6͐|җ! ~#fo͐n} T×! ~#fo! ^#Vr+s! ~#fo͐n&|g}os`i^#Vr+s.! ~#fo͐6͐ï!9!9DM! ^#Vr+sn`is{`in}*`in}?!!!9%n&|ͯ!! n&|ͩ 7:)~:,"s!"u*||!**s!! ~|!6*u*+"*"*u#"uH!7:O* ) ,7*+++:G_*DM!!o& *"+*|/g}/o#9 ""#"z{7*~# " "+*&! n&#7,2q*&:q):x"=x"=r:qo&  ”" > _ £"!a{   `OE!y6$ -7rBo&))T])))!y n}x! ! n}!91.9 6-12-82File unsqueezer version %s by Richard Greenlaw 251 Colony Ct. Gahanna, Ohio 43230 Accepts redirection and pipes. Usage: usq [-count][-Fcount][-N] [file ...] Parameters are from command line or one-at-a-time from standard input and are output drives and input file names. Empty to quit. *(;sFWcmuTOLOWETOUPPEATOFPRINTISALPHPRINTUNSQUEE!9DM! ~#fon}-! ~#fo#n&|P!:M4å!!9DM! ! ! ~#fo! !"7M}2:M>2+H>:2,H>2-H`i6#6`i~#fo! ~#fo%! ~#fo`i~#fo)~#foM `i^#Vr+s! ~#fo| *@}w! !% !Ͳ!{ !Ͳ! !Ͳ! !Ͳ!J !Ͳ`iw#w`i~#fo| ! s#rz³! 6 #6`i~#fo! ! ~#fos{ `i~#fo! 6`i^#Vr+sÊ! n} ! M ! n}w!91.9 6-12-82File unsqueezer version %s by Richard Greenlaw 251 Colony Ct. Gahanna, Ohio 43230 Accepts redirection and pipes. Usage: usq [-count][-Fcount][-N] [file ...] Parameters are from command line or one-at-a-time from standard input and are output drives and input file names. Empty to quit. *!9DM! ~#fon}- ! ~#fo#n&|… !:M4 ! ~#fo#n& |͝}29M}ʳ ! ^#Vr+s!"7M! ~#fo#n} ! ~#fo#H "7M| ! ~#fo#! !Ͳ ! ~#fo#n}:s ! ~#fon&!|Y ! ~#fo##n}V !"7M! ~#fo! 3!! ~#fon}2+H s ! ~#fo! !Ͳ ! ~#fo`is#r`i~#fon} `i~#fon}*ʧ `i~#fon}? ! ~#fo! !Ͳ `i^#Vr+sÁ ! ~#fo8 !9 BAD COUNT %s Output drive =%s ERROR - Ignoring %s Can't accept ambiguous name %s!9DM`i! ~#foX!#|q ! ~#fo!!Ͳ! w#w!")Hdm`i͘!|ʯ ! ~#fo!!Ͳû`i͘!! s#r6L! s#r! ~#fo`i!s! ^#Vr+sn} ! 6!+H! ͹"*K͞+@0;M'+FÎr ͖ 8{ Ăw#w#w^#V#*~#fo^#*~#fo^#V#*n^#*n^#V# ~#fo^#& ~#fo!+!#!+!#!+!+}|z{|}|z7||7zZZ)|/g}/o#|͉k|/g}/o#ɯ2qZZk:q|/g}/o#|/g}/o#:q<2qqDM!xxGyO҃)v|͔`i|)Öxڷz/W{/_ѯzW{_=yOxGæ2qZZ͉M|}ȯ|g}o)|/g}/o#z/W{/_!9~#fo! ! ! ! ! ! !9~#A"s!`*"!"!Y">2>2>22!"!"!@"!" ʞ!F#x±~#±!b2r~# "2r+}|~#G:rx"2r+w# +6#!6#2w2x*s!>r<o&F=-` r'~h6!+`W?_!~7z?` :>ª@w#G.¶ww#?*>?w#> w#.7:77%!6L! ͹"! ! ~#fo!3!`i͘!! s#r! ~#fo|U ! ~#fo|o ! ~#fo!!Ͳû!".H!"0H!  w#w!  ~#fo! ~#fo !  ~#fo)).H`i͘!s#r!  ~#fo)).H##`i͘!s#r!  ^#Vr+sà *7M|ʦ! ͹`iv! s#rzʓ! ~#fo*7Mғ! ~#fo|g}o! s! n&|P! n&|ڄ! n} m p { {~Ð! ^#Vr+sÄ! 6.! n&͹ *9M}ʣ! ͹û! ! ##|! !"!ͲÄ`iv! s#rzP*)H! ~#fo")H*:M}! ~#fo|! ! m#! ! ~#fom##|M! !3!ͲÄ! ~#fo*)Hʄ! !m#! !F!Ͳ! ~#fo|ʩ! !m#Ä! ͕$! %`i%! 9Can't open %s %s is not a squeezed file %s -> %s: %s has invalid decode tree size Can't create %s Write error in %s ERROR - checksum error in %s !"2L!c".L!9DM*2L|ښ*2L+"2L*4L! ~#fo `is#r!p|`i~#fo"4L*4L#|!0u"2L*4L! ~#fo "2L|!*2L++"2L*4Ls#r͐y~#fo! s#r`i6#6!l w#w!J-! s#rz>!×!o 6#6͐o͐Ҁ! ~#fo͐o)~#fon}!͐o+| ! ~#fo͐)!s#r! ^#Vr+s!l ^#Vr+s)!D ! ~#fo͐o)~#fo#s#rr! ~#fo͐o)~#fo|$! ~#fo`i^#Vr+s)! ~#fo͐o)~#fos#rr! ~#fo͐o)~#fo! {-!. !B s#r! ~#fo͐o)~#fo#n!/ s{:­! ~#fo͐o)~#fon!. s!0 !B s#r!. n&!9-!- 6! !- n}!!9-!, s!, n}a!- 6!, n& ?͐Bͤ! ~#fo͐)!. ͌&#J-s#rz8!×!. ! ~#fo`i^#Vr+s)~#fo&ó!n n&!9-!o ^#Vr+sG!o w#w͐o͐lu!q 6#6͐q͐g!n n&! ~#fo͐q)~#fo͐o)!D ~#fo|Y͐q`i^#Vr+sY͐q!s s#r͐s͐V! ~#fo͐s)! ~#fo͐s#)~#fos#r!s ^#Vr+s ñ!q ^#Vr+sá!o ^#Vr+sÈ͐y͐s#r͐{͐s#r!×!u9*.*!9DM! w#w`i6#6͐|! ~#fo͐n} ! ~#fo! ^#Vr+s! ~#!9!9DM`iw#w*.L#".L|u! ~#fo!"0L#|F!!".L`i~#fo)).H*0L|g}o)~#fo`is#rä`i~#fo)).H*0L"0L|g}o)~#fo`is#r`i~#fo|`i~#fo#`is#r`i~#fo|!`i~#fo`is#r`i~#fo!9!9DM*##s*#s*s! ~#fo! ~#fo~#fo)*s#r! 6#6`i6#6`i~#fo! ~#fo~#foq*##n}kq! ~#fo`i~#fo)~#fon}<ʚ|N+>Z! ~#fo`i~#fo)~#fo#n}º*! ~#fo`i~#fo)~#fo#X!#|! ~#fo`i~#fo)~#fo#!z!Ͳ͍,*6!! ~#fo`i~#fo)~#fo%|K*n&|g}osÅ*##4! ~#fo`i~#fo)~#fo#*###s#r! ~#fo`i~#fo)~#fo#n}! ~#fo`i~#fo)!s#r! ~#fo`i~#fo)*s#r*#n&|g}os! ~#fo`i~#fo)~#fo#n}!!Ͳ͍,! ~#fo`i~#fo)~#fo#͐,*#! ~#fo`i~#fo)~#fo###|€! ~#fo`i~#fo)~#fo#!!Ͳ͍,*#4*##n}%`i~#fo! s#r! ~#fo! ~#fo~#fo! ~#fo! ~#fo)! ~#fo! ~#fo#)~#fos#r! ^#Vr+sÞ! ~fo͐ns`i^#Vr+sû! ~#fo n} F! ~#fo! ^#Vr+s6.`i6 #6͐|ҫ! ~#fo͐n} së! ~#fo! ^#Vr+s! ~#fo͐ns`i^#Vr+sM! ~#fo͐6͐!9!9DM! ^#Vr+sn`is{`in}*`in}?! ! !9!9DM! ~#fo#n}:w! ~#fo#n}:t! ~#fon&! n&n! ~#fo##s#rt!éþ! ~#fo#n}:ʾ! ~#fon&! n&¸! ~#fo##s#rþ!é! ^#Vr+sn`is{ʐ`in}? ! ^#Vr+sn`is{`in}.þ !éÍ`in}*i͐n`is{>! ^#Vr+s`in}.;>͐n`is{f! ^#Vr+s`in}.cf>Í`in! ^#Vr+sn}‡þÍ!éþ͐n}£!éé!é!9!y9DM! `i'͐`iq*!9!9DM! n&*| ! n&  ! n&&!9DM! n&+|; ! n&B ! n&&!9DM`iw#w! 6#6͐ n! s{ { ! n} ‰ ! ^#Vr+s_ ! n}-¨ ! 6#6! ^#Vr+s! ^#Vr+sn! s3+| ͐ ?! nѯg`is#rè ͐͐? !9#fo^#Vr+s`i^#Vr+s*^#Vr+sW! ~#fo! ~#fos#r! ~#fo! ~#fo~#fo)w#we! ^#Vr+s`i^#Vr+sC!9Can't open %s #>ʷ#>œ#>#>¨#>#>´#>#$! n&͹! n&!9-! n&!9-! n} $! !9-! n&!9-͐##^#Vr+s|u$!͐͐~#fo}.|T$!͐##6#6͐͐s#r͐^#Vr+s! ns&!9DM͐ڮ$!%͐##~#fo|$!%͐##~#fo`is#r͐͐͐~#fo}.=7*^#V#z -x28-+V+^+-*͞/:8-o&9!7:O* *p-+*|/g}/o#9t-p-#"z{7*~# ʂ- ʂ-+*&!7,2q*&:q):-=-=r:qo&7:)~:,"s!"u*|5.**s:.! ~5.6*u*+"*"*u#"u.7*͐,\!*͛-7:)~:,"s!"u*|*u.*~#º."*s*u.#"u*+"ç.7*|DM**/></~# x/ ><$/~+ x$/|}7:,*͹0:*X/}|2q ʉ//:qwz/! {w#7*!9& 6C#6O#6M/*|/!\&/!\&*|/!!l&!9~#fo%0> +͆0#~0##0xSO070 /EXECL: Too much text $!p0!*w#[0*:1u0*~0!~0!a{ ѷ! , FNxg>Goy0$͐%!%͐+?`is#r͐##~#fo|ʤ%!͐͐͐.͐##~#fo͐s#r͐~#fo͐s#r!!͐~#fo6/%͐##6#6͐͐s#r!%!9!9DM͐%!͐~#fo͛/!9DM`iw#w! ~#fo͐n! ~#fo͐n}W&! ~#fo`i^#Vr+sn}T&!Ã& &! ~#fo͐n! ~#fo͐nѯgWÃ&!9!9DM`iw#w! ^#Vr+sn}ʹ&`i^#Vr+sÚ&͐&!9!9DM͐`is#r! ^#Vr+s! ^#Vr+sns{'&͐'!9!h9DM! ^#Vr+s~#fo! s#r͐! s#r! ^#Vr+sn`is{b*`in}%L*! ! s#r! 6#6! s! s! s͐n}-¡'! ^#Vr+s! 4͐n}0±'! 4͐n&3+}'! 0,'!! s#r! ^#Vr+sn`is{.(! 0,! s#r! 4! ^#Vr+sn`is`in& }DE(Uʁ(Xʊ(Oʓ(C(S )6*͐~#fo|ҁ(! ^#Vr+s6-͐͐~#fos#r! ^#Vr+s! 6 Ù(! 6Ù(! 6! ~#fo! n&! ^#Vr+s~#fo! ͎+ѯgs#rÂ)! ^#Vr+s! ^#Vr+s~#fos! $!8ðuw$ !J͉ !% ͑! ͺ n qn m|g}on i|g}on e|g}o|n an ]|g}on Y|g}o|¼ !J͉ ! ͉ !J͉ !͉ 8! ͑!ͺ ͂ U  ~ͬ Q ~ͬ M~ !J͉ !e !U ~͌ U^ !J !͉ m !se !p͉ s v 1 minuteminutes#Transfer time will be approximately"What is the File Size in kilobytes2Must be 60, 110, 300, 450, 600, 710, or 1200 Baud! +++ Invalid Baud Rate +++"(What is the Baud Rate (60 to 1200)M{L}1a\p[[[[ BASLIB #500240 5.2 - OWNED BY MICROSOFT, 1979 <ýý6#~žDM*"*##"Ø>22*^#V"##^#V" 2!!!""!"6#6P>2>2>2ʹMͷMD_?'**s#r"*##s#r:/*}o|g"*>(G}|v'!"(!(!9"\*6*0ʰ!6#}°|°6!b6#z*4|> 16#s#r#=>2V>2Y>2X2["^!Q"i^#Vr+sÂ)! n})! 6#6! ^#Vr+s~#fo! s#r͐n}ʂ)͐|ʂ)! ^#Vr+s! ^#Vr+sns! ^#Vr+s! ^#Vr+s8)͐6! ! s#r! n})! ^#Vr+s!|)! ^#Vr+s! n})!0)! sÞ)͐! ^#Vr+sns{*! ^#Vr+s)! n}3*! ^#Vr+s!|3*! ^#Vr+s6 *I*! ^#Vr+s`ins_*! ^#Vr+s`ins@'͐6!9!9DM! ^#Vr+sn`is{*`in} §*͐! m#͐`in&m##|*!*y*!*!9!9DM! n&|ͯ+! n&|ͩ!9DM! n&|ͯ/+! n&|ͩ!9DM! n&|ͯ^+! n&|ͩ!9DM͐n}ʌ+! ^#Vr+sn&͹j+!9DM͐͐ +͐^#Vr+s͐+͐0+͐7s!&',͐ ͐͐ ͉͎͐+`is͐ ͐͐ )͎͐+`in&#&',!9!9DM`iw#w͐~#fon&3+}},͐ ?͐^#Vr+snѯg`is#r>,͐Ä,!9  !\&!7*!,&*!,&,!&="&! BL<"e=L&Í STOf*i.. . ........}*w|:t„*r|ʄi*0 s#r*0 {w#6"u*\*r>2tfError -!~<ʪ=ʪ#~#Ö#Syntax Error in DATRETURN without GOSU Type MismatcOut of DatIllegal Function CalOverfloOut of Memor Subscript Out of Rang Division By ZerOut of String SpacString Formula Too CompleRESUME without Erro2Field Overflo3Internal Erro4Bad File Numbe5File Not Foun6Bad File Mod7File Already Ope9Disk I/O Erro:File Already Exist=Disk Ful>Input Past En?Bad Record Numbe@Bad File NamCToo Many FileUnprintable Erro!9N#F**~#~Қ~+ʠ~#~ښ+^#V###x###x|ʬ~#fo! Internal Error - No Line Number Q**~#H at lineif>/<(/<0=(}_|W!>M~#fo> at address|> }> f> => =!9"T*T @ PPN#"!9""y2*g|ʳ*! "wA~#*$ A~ʊ E <C"$   g*b *` *^ 8*yx8++`i+V+^`½##6+6+~6  >@++*"s#r+͆*#~_#~Wfz7r+s##6"###!~#foʊ`z<*"*}o|g6@#s#r#6"**"}w>#w##`µ++6+6əT*~=#=~=#fo6 F5G24!5###yw> qC*` }/o|/g#"` |t/(C!b ~wɯ2c q^$t*` t/(q^_$>>~9#y9!f ×>!f \ 2# !f "!f ~q >>>|}+!4!F͛(+6!b >"$2[ !0&!,!!f !~_#~W#~O)Q&!N&(ɇ<o&t/(*` *b I"` `i"b !` ^#V#N#F#!0O')x{)!d 6ͨ(wg>0*)Â:Gw#‚}×!f ~` q\ qu*` ||2aj L}Kq9>2`h~&ʌ-k+k+WR.e}E§WlʕLʕqʕQʦ:>~%#!dD W͂W_{_/?"q! q *\ ͵*` P*b *` *$ A8 ~#"$ ,Š û~Š !"w~,"P #"~d d # S Ê "j #"$ x"  +~ t yb ?Redo from Start *}!  *:Oú*+~+    +w ++~#fo9"!5*-~2 #~#^#V++sT:$ ,#~U,o&">2+F(ͤ/> Ϳ*"3-xGO>$ͳ&H"-s#r# (-H +V+^F(s#r# =-U,w*-w+ͤ/yOn-n-n-**}_|WҚ-\H7I Bytes Free ͞.-::g .>a~>a:-###^#V*{z-"p͒ s p͝ s pͨ s ph s p͒ Ð p͝ Ð pͨ Ð p Þ p͒ C p͝ C pͨ C p C ` ó \ ó "` ü H~# ´ x2:j : S<ͪ ~ ͩ# ~ ĩ# >2:j F#~#fox: ̪ 1 ( ~#ͩ 1 s: >"éG:x: Q*+~ é: >,ͩW*#^  += Qz{ {_ !"!"g2 !~6#w kW! ! WPgqR=qDG¾"\ `i"^ #~+6- 0OxG6#~`xE+y >2;|#"\ `i"^ ;#WD:isww60P +~0ʆ.Pʸq>"w#6+6-/</ ҫ:#p#w#6!#z9z͢{=Jp#6!#:~ *+W-+$01#W1++w'16%Uͭc+6%LuD_x _y=?{_xͷyOͷGO *=P^ѯu7Dy=OzWO~! , N zi&< G~#< #. ++G 0:R =ͼ)'>!>!>!>!>!>^#V#^#V#Í>Ý >Ý >Ý >Ý >Ý >^#V#^#V#i^#V#pO'ò ^#ø ^#V#p& ^#^#V## :c 2c #.:c 02c #.p<s~##++>R+V+^+f+r+s=p9~#^#Vb^#V#` 1̀2͟͢åը´V>_!45*"~#N#F# Myx +++6@#yw#xw+++6###!~6'<͆*#~#~z(!*"~#^#V#ڃbMI|nI++~_w#~Ww#I<*DM~#^#V#Ï+zĦ+{Ħ##{z~#q#p_ʏyxDMÏ~#ÏYP+++"6@###{_zW+r+sɷ/*| z+^#V+"w#s#r+++r+s##!6;*{z*?Q}|~# WyGxR<=**`ʢvʜ=###à during G.C. Q Q Internal Error - String Space Corrup#N#F*yx'?/< />͔3>͔p#=*!\ 8f >X;G?F/{_#zW#yO++z#;p#l>èM>N#F#*` /}o|gһ"` p#=¨w1_cƤ~@zZrN vH Tʚ;@B''d #~: W W W0?<=:~7-++WOʝHʝ+ͩڲH#øz.M!}0?)))صoM!}0? ? ))))صoa{ q:c :b :22z.z.!"g!$ "$ j: {?{p͡ï:r>\2r•zv+ʩ~vý+v½vs!$ 2r͡Oʁ:r>\v2ry@y7 g @ {@yI%))W%)_%Ͱ('%'(|)3%!I%D%Ͱ(%U'f%>O!c ~+>w)QY)r():c ҝ%hڕ%Ͱ('Ɓʝ%͒(Ͷ&!%#&JY'QY)))r)|Yt&wz^Pc|u~r1)% >2c !%#&Ͱ(og/(T& }}{(qnz Ͱ()U'#&U'Ͱ(~#ͼ)=xR')T&.&A(Q&)):c )d&/<͒()͛(g0*!` &~_#~W#~O҃)#4r).F*Ã)G~_#~W#~O~((A(ó&))>OT&A(&)r()ȯGͧ'"I y2K Fo͉(͒(!D*` :b O'c 4r)'+'g.*I :K Oz'+'g.*` :b 'x<=B'{_zWxG)yOHGÃ)A(R')))ͧ'y+F+F+Fw`h|ʟ'gy҃':` O|g}oxG-|w'}r'(ElaOq'!c ~Gx'ƀʢ)w͛(w+ɷr)ã))x{)!d 6ͨ(wg'z' >0*|ԕ){>2c (/ v>â">#é;6s!$ ͋ý ڽx<>Kyq#v ½> v͡X ʽ: swef=>^v@vs~ š> vv#Ë0"* #~+<ʿ=Q (+ 4+~#<=$ /9 :G9:l<2l*i"!["i /@*654> ͩ~=/*!"ͩ"> ͩ> é> @> @*t Gͬʈ~#foÊ##Ø GͬʨͶ>~+~?~+#+ &)))^#V#!` w#w#w#w#ɳ:~ A>\ )>`  ~#=-!#~ @ @Ʌo$ɧGw#V{zɑC.BTSB͑CT7͑CY7BLmBCS7͑CT7>BR7͑CD7R7>B> ڔB6 #=By.2:C:xڬBʹB͑CíBy/y͑CLB2:͑COúBBB!BHB7~~!B#wE@4BX`ZNDSCT"͑C[%C0%CA!C:%C CO!~6GWC#~ @͔$m ʠ )Oʥ !)!b y# + )?)͈!ͼ)_$þ ͈!V$k!!f ͔$*!:c ):m / "< x!< ~w#^)W)j)) J!c qx!c )F#~怩O) 4v)go"` "b )s#r#q#p))))"` `i"b *` *b DM^#V#N#F#xy):c :b 7|/G}/O!>* *7>{_zW}o|g= *|g}o?*CZQ2* o-yOzW{_xGB*#~ښ+^#V###x###x|ʬ~#fo! Internal Error - No Line Number Q**~#H at lineif>/<(/<0=(}_|W!>J:b <=(#!\ #!#x !c 5 k" !b N#F͛(+6`!!b >"$<#2[ :\ ͉#)x/F+N+=¨!!f ü!!\ >q#p#=¿!!\ !"ͳ!͢!͎!*͔$ʣ):c ʣ)!l N#Fͧ' $q"GP#N$x "!É#!b *$"j0 TeB׳]h!I.k ͈!ͼ)_$e"͈!V$!f ! !c q#~++w+q€")DNn"~`35zr1{r1h!I͔$)yO2l "͔$):c k!"/$$ )$)!d 6ͨ(g>0*|Ԅ(>$akͼ)I%''VERIFY is a program which works exactly like FINDBAD except VERIFY is written for CP/M 3.0 and will verify the integrity of a disk. It will not destroy an existing file so it is ok to use on a disk containing valid files. The program will lockout bad sectors on the disk by creating a dummy file called UNUSED.BAD and putting in in user 15. Command format: VERIFY d: c/r (d = A-P) Verify for CP/M Plus v3.3 $ Which drive is to be verified? (A-P) or (Q)uit: $ ABORTED!$[BADBLK]MAP0EG654321Copyright (c) 1983,SDSystems,10111,Miller rdDallas,Texas,752381E!ͳ2;-:1Gv#%:;O> "7^#VS5"9 ! ~G:08/nu~=w~=w^V:srî ͓ͷ & !C :)ʍ*|:}_Ku  Z )=21_ʁAvrv_Qʁ > MͻK Ēnf#B *A|!C}ݾ  ~ ~ '0 C  :OFCi`F)^ N| }ݾ8B}"3K3> [5>> >  yݾ*38>22#F0 @*?#"?*A^"A*Cq#~(p#"C!E"C*A|}Q*C2 *?0 |D-}/ x2"2ͣ̀ͣ̀ͣ̀ͣ̀:0_*:š2–> Ý:w>0#w"* |"è 222"SC2G>*o:0!0!   No Bad Blocks Found $ Verifying Track # [ 0]$ $ **** Error in Command Line ****  Must be "Verify" or "Verify x:" $  *** Bad Spot in Directory Area - Cannot Continue *** $ Cannot Create [BADBLK].MAP $  **** Warning **** System Tracks Bad *** Verifying track # [ ]$ *** Too Many Bad Blocks *** $=!6 Disk Verify for CP/M Plus v3.3 $ Which drive is to be verified? (A-P) or (Q)uit: $ ABORTED!$[BADBLK]MAP0E*:š2–> Ý:w>0#w"* |"è 222"SC2G>*o:0!0!