4LMLLMML MMLMMLN M Direct.Seg :3}6}k=H`kdck=k<'}8*dc0}8}k<H`k6ONECOLUMN: Print all in one column; implied by File.Pc% J) MULTICOLUMN: Print in 4 columns.Pc% J)FILEhave the form:`cc; Direct Dirs>FileSpec ~ outFile /.../`cc@ Both the dir >k@?c}A`}:k?k>,k@*\@͉}k?:'k@'@\j}A}k?c}Aak@+@͸% J) HELP: Print this message.Pc%J)1DELIMITER: Output file names as | Pc%J)Pc%J) CREATEDATE: Sort by create date.Pc%J)SIZE: Sort by file size.Pcc%c%Q/%de is specified, then the directory listing will`ccB be directed to that file: Use "infile outfDIRECT +sys:PERQFILE>UTILITY>FILE>SOURCE>DIRECT.PASROL.PAS.PASP>PZP Y%\< `o` d% D}k?>'9k@%\-k?=@#k?=}:k?<d k?H?k@'N}4}`k=`JdP}(PARTITIONS: Give partition information.Pc%J)2LISTDIRECTORIES: Show directories with no matches.Pc%J)Ĝ%%cc9 Direct is used to list the files in the File System.`cc) Valid direct commands U3u}3}3}?3VH>3Sw|;Q{3Sw|V3Sw,3ZH3Sw|4 ,?Z|V3Sw,3?I3Sw|?23Sw|?13Sw|?03Sw|?/3Sw|?.3Sw|V3Sw,?-3Sw|?,3Sw|V3Sw|3]H,[H,P3Sw|?J?)|3H"H HHHHHHH3Sw|?33Sw|?43Sw|?73Sw|?:3Sw|?=3Sw|?@3Sw|?C3Sw|V,3Sw|3Sw|?FHH3?ʌ3OV3Sw|;R| ?Y?f,3SH?_4?a4?c4?e44;gH?kȜ;iH?lȜ3SH3SH;mH?qȌ;oH?vȌ3SH3SH?xȼ3SH?wȼ;rt;tt3SH3,?~,?3SH3SH,? ,? 3SH3SH,?\,?\3SH3SH,?l,?l3SH3SH,? 3SH,?l3SH34H?<4H?<3SH3SH34H?L4H?L3SH3SH32,?,3SH"H,?,3SH5H,?,3SH6H8,H:?,3SH5, ?,3SH',?,3SH#q,J?,3SH%*,?,3SH!HB,`?,3SH34H0H,H?,3SH3H$H H,?,3SH3H4H0H?,3SH?;cp??J3H;P?;`??;a?'VH?7?,?;t;e?7,?.|,?.|,?.|,?.|?7?J?)|3 I;;;;;H4-J$w|?|;d?7+ʼ, ?5|,I?;t4 I|;g;;;;;&I?7,?/|,?/|,?/|,?/|;f';%g().8;;;*c?7,?1|,?1|,?1|,?/|;+b=C;c;;9c?7,?2|,?2|;:bE?L?7,c?3|,?3|;DaN;K`O;Ma,?6|?J?)|>VI;?[?g|3?c;T`?\;Za?]?`,3SH;cp?J?d|3SH,eI?g,3SH3hI34j4k3mI;nI;l`?74q;rI?p,tI?v?zɬ;sa?wy3{?n|3x~r$|I<}I7<IBJ3O3 J?HLNMLNNLNNL NNL NNL O Nile".`ccc# The wild cards are as follows:`cc' "*" matches 0 or more characters`ccC The Sort switch requires an argument. Specify as "/Sort=arg".`cc' The valid arguments for  0** Cannot have multi-column list with delimiters`c%͞`p,** Use "~fileName" to send output to a fileor`cI$HI$} k2J߭J Pts*tJ߭J 帛sJ߭J 帛} 7sm+$sJsm+o** Internal Long Error`cI$HI$} xJ߭Jts*tJ߭J﷜sJ߭J﷜} sm+cc' "&" matches 1 or more characters`cc& "#" matches exactly 1 character`ccSort are: `c% mn)3c `%mJ)c`cmH\]% } }}.`Y`}`>`}`#dL U-! Dh}}x]};sJ߭J Μ} 6tn)%tHtn)tJ߭J ts*-tJ߭tJߜsJ߭sJutk2's2!sJsm+sJ߭JϜ} tn)!tHtn)tJ߭Jts*,tJ߭tJߜsJ߭sJutx'd "'0" matches any digit`cc* "'A" or "'a" matches any alphabetic`ccc( "'@" mat }帜% `ao )o()}R4`}`oc%Qc%0c%Qc%0P帼c c}ec}a}7c}5c}9cc};adkd `};`}9cɺ}5  `Direct`-k2J߭k2JߜsHJ߭sHJu}t}s]n/pk/)H}pJ P}0ok0)}o}ooHpJ s 9xJ߭xJߜsHJ߭sHJu}t}s]mJ}ʷ}}}c}c}}T}}ches any non-alphanumeric`cc < "'*" matches "*"; other wild cards can be quoted also`cccc%@c%c%c%Q% }R3` SORT`} }帜}7  `Direct`}5R4c%c%/%}5d}7R3*d }7d帛ț>(}PpH̱I$mn+\ ǜ!Jm!Jn+Ϟ!J㭁!J㭂Jm`n`c}c}ɺqm+mrJ*rJmJ,#}U}}}L}npu)ϔ!pJ߭``L$L$} ʷ\p`˼}  Zp`˼}  Hp`˼} ' The valid values for are:`c%  mn)3c `%mJ)c`cmH%`ao)0oĜc%Q'' c%Q+c%Q`hSORT` c% c%c%@F`ț*(;}dc}>`3}dc}c}am( }d]mnI$nmJHM2k2mH2k2n,k2m*$c** Internal ErrHǜ!Jm!JrJqHrn)qHn*nqJJ, Hǜ!JqH!Jn[]mnI$nmJHM xmH xn,xm**c|$J4J3 J?%?G?3 J$J|$!J3}3 J?|?3SH3 J3SH3SH3SH3 J3*3SH3SH3 J3SH3SH3SH3 J3SH3SH3SH3 J3SH3SH?3 J3{?$SJ>3 J3SH|3??c??`???|3J?Ό3J33?7$J?7?7?7?7??9,;ap;dp39J>?3}??V>?%3}???3SH;Ap3SH3SH?c??`?;bp>OJ?3SH3XJL ONL OOL OOL OOLOOLP O 6pJ} pJ}  ds pHfI$mn+\ ǜ!Jm!Jn+Ϟ!JrsHs+c `rH&rMJ mx) crHmHnH^coHC) b%JI'c%$ ˼} cw$ ˼} cN$ } c``}  c``}c` `} c``$$7`" "<<3$巛$ $5<<5巛$<<JdPDb%J cc}`a(b%Jߊb%b%X* b%Hb%}8]3}fdc}c}ak'c `}f!J㭂Jm`n`c}c}ɺ qm+mrJ*rJmJ,#Hǜ!Jm!JrJqHrn)qHn*nqJJ, Hǜ!JqQ' b%) b%JLc%Q'bcN Name Blocks Bits LastBlk Kind Creation Update Acces` `JPc `cc$`$w$` `JPc `cc$`$]}:}}J``Jc}: }:.DR3φ}}`}J`Jdc}>`J$`\}fdP3}d3}3d3}fdk`c}ɺc% b%,ϰcc --- In `cc}f`H!Jn[ȉ'Xop)oJooH' m`n` m`n` ȉ) b%JIb%) b%JLs`cK$b%Jqt)ώs!pJ߭J߭``L$1L$pJ߭JL$ pJ߭JL$}ʷ}}N$` `JPc `cc$`cc `0`$$ ``JPc `F}>}}Jdc}>}`a]}>`ao'Ec"***WHERE HAS c --- `cckc ** Directory has too many files.`cc ** All files will not be listedb%Joq)dp`nJ߭J cc`c%@*c | `nJ߭J cc`nmHcoH̖],b%) ʷc%Q'cr` cpJ߭J cc`c%@*c | `pJ߭J cc`pJ߭Jcc$`$w$ ``JPc `cc$`$N$ ``JPcTHE PARTITION GONE?? `}c`c4}}oH`}oJ`JdP]}b%}}fdc}.`cc.** Delete some files or rename them to another`c directory.`cc`b%J` c%Q( b%JLb%JHLp ov)Ϸ nw)ϜnJpKoHqb%J)σub%qJt`qJ߭J cc`qJ߭J n my) cmH cK$} HK$c%Q'$} c``}  c``4c%Q')˼} c  `cc$`cpoHqHlccTotal `cɊK$``c  Blocks`c(K$H(<``cfɺɜb%J cɜ!b%JcaϢk%c}fc}c}33b%J daЊJ$+b%Jߊb%b%X* b%Hb%}3}333?c??3@O?);Ap3)N30N?,,N|3 N|?, N|3 |?3 N|g33$N,(O\?l$N,(O\?(30N3N3"N$4N|3Nf?(*Ap3*?A?)?(>3?%$*N$-N? 3/N3N3N3N3N?G35N36N?73:N|39N3:N3~N4=><3J$J$&c+ac%Q( c%Qc%Q' c%Q#c%Q(,`ghd f  H-J/kc ** Directory has too many files.`cc** All files were not listed.`cc.** Delete some ɉ'``c file`'( sccn in `cɉ)``c director`)(cies` ycr r n'ϲc `rcc`c : Start = `r ac` ` I`c End = `r`L$c`c$ ccDirect `cV4.5`c `cc$`& icl Files matching <> OP  w9:7files or rename them to another`c directory.`cccɊb%``c files found.`c'b%H'cc out of `cɉ*``c director`*(cies` yccJ scanned.`cc ac` ` I`c' Free = `r ac``cmH,nHͽc````c````))Direc`cc^`ct : `c3^d3d3d`ͪccs Files matching `cc^`xf5hLN " "#$%#$%)H)|b%'k pcc --- In `cc}f`c --- `cccc** No files found.`cc2*** No room in memory to allocate sorting arrays! `cc*** Names will not be sorted.`cct V4.5. Type "Direct/Help" for help.Pc%Ϙ/%36cFile for output: `c/%cd`d`ccc  in directories matching `cc`cc+`c : `c3^d3+d3dHcO&lename `cc`c- is malformed.`ccc%0c%cP&);<*H*]'()*"$3}d3}3d3}fd`" :}f"d帛 "﷛""5﷛" "3巛 c\'\'%c}$``$H`m``cx` c} `` H`m``c`m``!cX`m``!cX Output will be directed to file `cc/%`ccɜ/%c``````c7`cc3dc ** Filename `cc`c- is malformed.`ccc%0c%cP&);<3l3~N?,+Pp;Ap?N-N?|3????N$N,?|;Ap?)$N3(Olb?~;Ap3343+Pp??3$?%3N3N3$?A3N3N333Nb,(O|?|?,(O|?|?3?3*N$N?|;;?G?)30N3N3N3N?63N3N3N3N3N3Gp?6?43$N3N 33N,,|?,3N3N333N3N3N;Gp?,/O|?|?,/O|?|?>/O|?/|333343N3DO333DO4N4N4N,O33?3?3?4O43N4 ?4 ?4 ??4 3(O|_3? ??30O?@??????,N,,N,,N,,"O,?$,34,&O$!a3?3??*l$*O$0Oh?)3DO?-<+4XO?3(Oa31}?3,$1O$4O?0|???6,?;Ap;Gp??3N3N3333N3N;Gp?,/O|?L|?,/O|?L|?>/O|?/|??/|3?@?3/|??/|?,0LQPLQQLQQL QQLQQRSYSTEM System.PASe.PASILITY>DEVICE>SOURCE>FTP.PAS.PASS.PASPZP>PZP Y%\< `o` CMDPARSE CmdParse.H:PERQ_STRPerq_String.PASTILITY>FILE>SOURCE>DIRECT.PAS :BOOT>DIRECT.SEG/ErrorFile = :BOOT>DIRECTDIRECT>PZP Y%\< `o` CLOCK Clock.PASILE>UTILITY>FILE>SOURCE>DIRECT.PASROL.PAS.PASP>PZP Y%26 Aug0ZZH6&DYNAMIC DYNAMIC.PAS:&6 : XXe%XeX d̶H ̶H p IP Details.Seg/QZ-v)YtRX<[qd*###'#U]D^PAS x X Psys:exp> POS F.0 b-boot FILEUTIL FileUtils.PAS.Q.PMATCH PMatch.PASECT.SEG/ErrorFile = :BOOT>DIRECT T.SEG/ErrorFile = :BOOT>DIRECT * 2)READDISK ReadDis\< `o` ALLOCDIS ALlocDisk.PASILITY>FILE>SOURCE>DIRECT.PAS :BOOT>DIRECT.SEG/ErrorFile = :BOOT>DIRECTSOURCE>%\:PERQFILE>UTILITY>FILE>SOURCE>DREADER READER.PASOT>DIRECT.SEG/ErrorFile = :BOOT>DIRECT USERCONTROL y S$P6'2 .2FILESYSTFileSystem.PAS&6 $.$k.PAS&< 2( (= PASCAL.RUN6G&E>SOURCE>DIRECT.PAS DISKIO DiskIO.PASorFile = :BOOT>DIRUTILPROGUtilProgress.PAST.SEG/ErrorFile = :BOOT>DIRECT '>DIREC IRECT.SEG/ErrorFile = :MEMORY MemorWou$9DIRECT FINDBASEINITSWITINITSORTINIT DOHELP HANDLESWHANDLELISORT1 SORT LNGSORT1ASSIGNTILONGSORT$.$ -%\#PASCALG<HaFILEDEFS FileDefs.PASZP [#Gk`laDIRECTTILITY>FILE>SOURCE>DIRECT.PAS :BOOT>DIRECT.SEG/ErrorFile = :BOARITH Arith.PAS '''y.PASg':BO[\[[ :PERQFILE>UTILITY>FILE>SOURCE>DIRECT.PAS :BOOT>DIWRITER WRITER.PASLE>UTILITY>FIDOSORT ONECOLDISHORTFASLONGSLOWCHECKIFDADDIT REMOVEPADODIRSCAPROCESSOBREADTHFDOALLOCAFULLMEMOMYDISPLAITY>FILE>SOURCDELETEZrorFile = :BOOT>DIRECT :BGETTIMESGetTimeStamp.PAS :BOOT>DIRECT OT>DIRECT CT.SEG$k H$  ,=~ />DI 6G 'FILEDIR FileDir.PASE>UTILITY>FILE>SOURCE>DIRECT.PASROL.PAS.PASPLE>SOURCE>DIRECT.PASROL.PAS.PASP>PZP Y%\< `o` STREAM STREAM.PASPASUTILITY>FILE>SOURCDELETE26 Aug0ZZH6&DYNAMIC DYNAMIC.PAS:&6 : XXe%XeX dfF.1 }  %QRQQRRQ RRQRRQS R Details.Seg on.P帛 NJ)=LOADEDPROFILE: Profile information that has been loaded.P帛 NJ)/SHELLNAME: Name Default file for Edit and CompileP帛 NJ)+SWAP: Swapping allowed or notP帛 NJ)+IOERRORmn)mNJNmHmn) NJNcAH Details gives information about the current state of the system of the Shell run file.P帛 NJ)/SHELLINFO: Shell specific information.P帛 NJ)*DISKSIZE: SS: List all IOError countsP帛 NJ)0MEMORYSIZE Size of the machines memory.P帛 NJ),PAR.`cAcA , Details command line is of the form:`cAcA ! Detail { }`ize of the hard disk.P帛 NJ)*TIME: Give the current time.P帛 NJ)*PATH: Give ITYERRORS Number of parity errors.P帛 NJ)3POINTALLOWED Tells whether pointing allowed.P帛 NJcAcAG If the parameter is "*" then all the available information will`cAcAD printed. If P>R帛 NJ)-USERNAME: Name of the current User.P帛 NJ)+USERID: ID of the curthe current path.P帛 NJ).BOOTCHAR: Character used for bootingP帛 NJ)#3BOOTS: List )*ALL Show all of the above P帛 NJ)3CONFIRM [Default] Ask for confirmation.P帛 the parameter is empty, then a selection of the`cAcA.A information will be printed. If you wish to specifDETAILS .sys:PERQFILE>UTILITY>OTHERS>SOURCE>DETAILS.PAS.PAS.PASP>PZP Y%\< `o` z rent user.P帛 NJ))PROFILENAME: Name of profile file.P帛 NJ)*PARTITION: Partition informatithe valid boot characters.P帛 NJ)1SEARCH: List the current search list.P帛 NJ)5LASTFILE: NJ)P1NOCONFIRM Do not ask for confirmation .P帛 NJ)P'HELP Print this message.P  \   lk)hOCVKq"$X4JREEN > IO_UNIT GETTIMESFILEDEFSXWRITER TO_1 GETTIMESFILEDEFSXSTREAM ETHER1Boot } ,  SYSTEM ; *,STREAM WRITER ETHER10IIOERRMESALLOCDISARITH 0I_ DYNAMIC VETHERINT\IO_UNIT GETTIMESCODE MEMORY SYSTEM ,IOERRMES! System.1.Run System.Users7 Details.RUNDISKIO 8READDISKLOADER  READER . PERQ_STR0 SCREEN > FILESYSTv STREAM GETTIMESO ALLOCDISO STREAM WRITER  ,DYNAMIC VPERQ_STR0 DISKIO 8RE Po o 2IP System.1.Run/QZ-v)YtRX<[qd*###'#U]D^ CODE MEMORY IO_UNIT IO_OTHERIO_INIT <EXCEPT NSTREAM OS STREAM ADDISKGETTIMESFILEDEFSXARITH ARITH I5 GETTIMESFILEDEFSXDISKIO O <82HROOT.DR  ^lDYNAMIC VREADDISKALLOCDISARITH DISKIO 8SYSTEM ,PERQ_STR0 FILESYSTv MEMORY SCQSRQSSQSSQ SSQ SSQ T Sy what`cAcAE you want to see you can specify one or more of the following:`cAmn)CcAR }c `aqH' N`}N`͚qH' N`}N`qq'ZJN?? N`>N`<ɺaN:ɺ8R4^cA=** Details takes only switches and output filɜ0ɜ4N` } >nk>)F0rnNJ 'c}nJ`$}n0rnNJNnHnk>)кcA>V`"PcAcAmHmn)Й]ϘcASwapping ALLOWED to `` a n NJ mNcAc ` mNJ)cAc`cAmHmn)нcAcAcA= To write the output to a file type: dpr)pNJNpHpr)NJNNJNNJNqNJN}}NJ߭es as arguments.`cAcA\]}3 a5k5'}bogus!d\ k5 NJ 6}7 k6Nalid boots on device `cAc}`cAI are:`cA>nk>)0 nN cA `naHPcA`:PcA n NJcAc`>PcAcA)cASwapping NOT allowed`cAcAIOError couetails ~filename`cAcAcA? The /NoConfirm Switch is used to override queries about`cAcAN} # N`DetailsN`}NR3Qconsole:PQ}PcQ3Qdc}:Jd}7}7 k5 NJJd}7}7>cA: System = `} m`0 nN ʷ} 3} ɺ3JdcAc} `cAcA Interpreter = nts: `cAN*+mk+)ϯ mNJ߭(ϒN*})m`)JPcA ` mNJcAɭ``cA, overwriting an existing output file.`cAcAN} vNJNNJN NJc}ao(NJ߭ Ϗc* `ccQ`c already exists.`cbN`)` OverwriteJd}3ɜ.ɜ2N` 2I(2}3 :}7}7Abogus!Jd4}7`} m`0>nN ʷ} 3} ɺ3JdcAc} `cAnHnk>)]Jmn) mNm`mHmn)] for `cAc}`cA (`cAm``)PcAcAmHmk+)Qk* !cA` ALL ZERO`cA]NNJNNJNNJNNJN\} !}R4N`}N`}? P`}ca}ɺaNs(λs'\cAɜQc````ȼc cc>aN@8cɜ:cɜ<cc>a}7. Jd}}7d``0c```.c```2c```4c` mNcAThe current search paths are: `cAmn)gcA [`cAm``cA}] = "`3mNJ3cAc   STREAM WRITER  ,DYNAMIC VMEMORY SYSTEM ,SCREEN > IO_UNIT GETTIMESSTREAM PERQ_STRWN79 0 EXCEPT NSCREEN OW > IO_UNIT GETTIMESCODE MEIO 8IO_UNIT VIRTUAL SYSTEM ,MOVEMEM " GETTIMESCODE IO_UNIT KO SCREEN SYSTEM ,ARITH DISKIO 8IO_UNIT VIRTUAL GETTIMESCODE MEMORY DYNAMIC NAMIC VPERQ_STR0 GETTIMESCODE FILEDIR O DYNAMIC VSTREAM WRITER  FILEDEFSXARITH READDISK|OW JSTREAM WRITER  ,DYNAMIC VMEMORY MORY SYSTEM ,EXCEPT NIO_OTHERFILESYSTO 6v STREAM WRITER  ,DYNAMI> SYSTEM ,ARITH DISKIO 8GETTIMESCODE MEMORY VIRTUAL IO_OTHERIO_PRIVA0 N30 VGETTIMESCODE MEMORY FILEDEFSO XGETTIMESETHERINTΫ *\SYST ,PERQ_STR0 READDISKALLOCDISDISKIO 8ARITH FILEACCE GETTIMESFILEDEFSXFILEACCEGETTIMESFILEDEFSXARITH DISKIO 8LOADER N2 4$ PASLONG STREAM WRITER  C VEXCEPT NPERQ_STR0 FILEDIR READDISKALLOCDISFILEACCE ARITH DISKIO 8GETTIMESIO_OTHER7OC ARITH DISKIO 8GETTIMESCODE MEMORY VIRTUAL SYSTEM ,EM ,ETHER10IPASLONG 9N7 GETTIMESFILEDEFSXSTREAM VIRTUAL uk  SCREEN >Oo  DYNAMIC VSTREAM WRITER  ,SCREEN > EXCEPT NREADDISKALLOCDIS ,STREAM IO_OTHERREADDISKPERQ_STR0 ARITH DISKIO 8IO_UNIT VIRTUAL MEMORYFILEDEFSXGETTIMESN?2 IO_OTHERCODE N. GETTIMESMEMORY Nɏ6   STSCREEN > IO_UNIT IO_PRIVA0 IO_INIT ( <DYNAMIC VETHERINT\ETHER10ISCREEN > SYST EXCEPT NREADDISKALLOCDISFILEACCE IO_OTHERSYSTEM ,MOVEMEM " ARITH DISKIO 8DISKIO 8GETTIMESFILEDEFSXARITH MOVEMEM 2N6 " IO_OTHERSYSTEM ,GETTIMESCO FILESYSTv SYSTEM ,GETTIMESCODE RUNREAD READER `N9 . GETTIMESFILEDEFSXREAM WRITER  ,DYNAMIC VREADDISKALLOCDISFILEACCE STREAM ARITH DISKEM ,GETTIMESCODE MEMORY IO_OTHERIO_UNIT IO_PRIVA0 EXCEPT N0 NSCROUNGEIO_UNIT GETTIMESCODE MEMORY RUNREAD |N; DYNAMIC VSTREAM MEMORY DYQ TSQ TTQ TTQ TTQTTQU TNcArMemory size `K'cA1/4`NK'cA1/2`.K'1PcA1.12Jq type /Help for helpJPcADetails version: `cA `cAc `cAcADefault partition is: `cAc`cAcACurrent path is: `cA=cA(Parity error information not implemented`cANJ߭7cA"In Store profile: not implemented.`cAPOPCMDPAPopCmdParse.PASILITY>DEVICE>SOURCE>FTP.PAS.PASS.PASPZP>PZP Y%\< `o` CMDPARSE CmdParse.N2PcAcA megabyte`m sPcA.PcAcA]Jno)Y nNp@cA`Device #`1.12`cA . Time is: `ccAc`cAcNJ߭cA\ NJ߭Nc`cANJ߭  NJ߭6cADefault file: `cAc `cA NJ߭BcAINJ߭7cA"Shell info: not implemented.`cAcAQconsole:47c `ccQ`PAS x X Psys:exp> POS F.0 b-boot POPUP PopUp.PASN.QcAn``cAN Device name: `pcAc`cA mq) m NJr r n'ϽcA `rJ߭8cA)User name: `cAc H`cANJ߭6cAUser ID: `cA ``cABoot character: `NPcAcANJ߭fcADisk size is: `"cAr 24 mbyte.c written`c]612    P6'2 .2FILEUTIL fileutils.PAS  %\XcAc`cA : Start= `r acA` ` I`cA  End = `r acA` ` I`cA Free = `NJ߭7cAGroup ID: `cA ``cANJ߭8cAProfile: `cAc`cAcAP 12 mbyte.`cANJ߭ NJ߭ NJ߭[ )cAPointing ALLOWE55 1>2VX~$&,56, 6##PASCALG<HaFILESYSTFileSystem.PASRH Q%\G k`lar acA``cAmHmq)!nHno)ѧc````c````)Details `cANJ߭6cACurrent shell is: `cAc `cA NJ߭ϯcADefault device is: D.`cA+cAEPointing NOT allowed.`cA NJ߭NJ߭ NJ߭ NJ߭=cA(Parity error information not implemented`cANJ߭7cA"In Store profile: not implemented.`cA   . DE MEMORY IO_PRIVAAO# B0 EXCEPT NGETTIMESCODE MEMORY SYSTEM ,IO_OTHringsys:boot>Screensys:boot>FileSystemsys:boot>GetTimeStamp sys:boot>Codesys:boot>Memorysys:boot>IO_Unitsys:boot>IO_Otherssys:boot>IO_Initsys:boot>Exceptsys:boot>DYNAMICsys:boot>FileDefssys:boot>EtherInterruptsys:boot>PASLO "INITSHEL$sys:OS>PROGRAMS>SOURCE>INITSHELL.PASTETHER.PASPAS. ERIO_UNIT SCROUNGE]9 Z" DYNAMIC VREADER . STREAM WRITER  ,IO_OTHERot>IO_Otherssys:boot>IO_Initsys:boot>Exceptsys:boot>DYNAMICsys:boot>FileDefssys:boot>EtherInterruptsys:boot>PASLONGsys:boot>Virtualsys:boot>RunReadsys:boot>FileDirsys:boot>FileAccesssys:boot>MoveMemsys:boot>IO_Privatesys:boot InitShell.Seg Profile.Seg CmdParse.Seg IO_UNIT RUNREAD STREAM SYSTEM ,EXCEPT NPERQ_STR0 FILESYSTv MEMORY GETTIMESNGsys:boot>Virtualsys:boot>RunReadsys:boot>FileDirsys:boot>FileAccesssys:boot>MoveMemsys:boot>IO_Privatesys:boot ˊo ˊo +IP InitShell.SegQZ-v)YtRX<[qd*###'#U]D^ CODE SCREEN > sys:boot>systemsys:boot>STREAMsys:boot>WRITERsys:boot>Ether10IOsys:boot>IOErrMessages>Scrounge>AllocDisksys:boot>Arithsys:boot>DiskIOsys:boot>ReadDisksys:boot>Loadersys:boot>Readersys:boot>Perq_St !"sys:boot>AllocDisksys:boot>Arithsys:boot>DiskIOsys:boot>ReadDisksys:boot>Loadersys:boot>Readersys:boot>Perq_Stringsys:boot>Screensys:boot>FileSystemsys:boot>GetTimeStamp sys:boot>Codesys:boot>Memorysys:boot>IO_Unitsys:boQUTQUUQUUQU UU UV UZErrorFile = :BOOT>DETAILS :FILEDEFS FileDefs.PASFile = :BOOT>DETAILS T>DETAILS LS.S$k LS '$  ,=~ />DE 6G 'READDISK ReadDisk.PASLS.SEG/E]:PERQFILE>UTILITY>OTHERS>SOURCE>DETAIHERS>SOURCE>DETAILS.PAS.PAS.PASP>PZP Y%\< `o` IOERRMESIOErrMessages.PAS 26 Aug026]H6&WRITER WRITER.PAS&> XbXSd$iUMAKEBOOT/sys:PERQFILE>UTILITY>OTHERS>SOURCE>MAKEBOOT.PASASS.PASP>PZP Y%\< `o`   HGETTIMESGetTimeStamp.PASILITY>OTHERS>SOURCE>DETAILS.PAS :BOOT>DETAILS.SEG/ErrorFile = :BOOT>DETAILSETALS.PAS :BOOT>DETAILS.SEG/ErrorFileDISKIO DiskIO.PASDETAILS.SEG/ErrorFile = :BOOT>DETAILS \$ 26 Aug026]H6&WRITER WRITER.PAS&> XbXSd$iU&I I ̊W IP MakeBoot.Seg/QZ-v)YtRX<[qd*###'#U]D^ IPERQ_STRPERQ_String.PAS.SEG/ErrorFile = :BOOT>DETAILS .SEG/ErrorFile = :BOOT>DETAILS * 2)SYSTEM System.'A??? IO_UNIT IO_Unit.PASE>UTILITY>OTHERS>SOURCE>DETAILS.PAS.PAS.PASP>PZP Y%\< `o`^_^^ :PERQFILE>UTILITY>OTHERS>SOURCESTREAM STREAM.PASOOT>DETAILS.SEG/ErrorFile = :BOOT>DETAILS c'PPYTRA$   PAS &> (= PASCAL.RUN6G&ERS>SOURCE>DETAILS.PAS ALLOCDIS AllocDisk.PASrFile = :BOO CLOCK Clock.PASILE>UTILITY>OTHERS>SOURCE>DETAILS.PAS.PAS.PASP>PZP Y%\< `o` MEMORY MemorWou$9DYNAMIC DYNAMIC.PAS Shell.0.Run"j SHELL.0.RUN.SEG Shell.0.Run.0.RUN"T>DETAILSITY>OTHERS>SOURCE>DETAILS.PAS :BOOT>DETAILS.SEG/ErrorFile = :ARITH Arith.PAS '''y.PASg :BO^_^^ :PERQFILE>UTILITY>OTHERS>SOURCE>DETAILS.PAS :BOOT>DFILEDIR FileDir.PASE>UTILITY>OT!eDETAILS INIT DOHELP HANDLESWFIXOUTPUREADCMDLGETNAME PRINTDIBSHOWBOOTSHOWSEARSHOWSWAPSHOWIOERSHOWMEMOSHOWPART'%            }y}}ʷc Number of Commands is `}c ``c T (table entries are `*c ``c WnHsc c *** Bad entry in #ShellCommands section of `c c`c c e** '`c c` ? HELP PATH RUN RERUN PAUSE MOUNT DISMOUNT STATISTICSSWAP SCREENSIZE~ HELP PATH RUN RERUN PAUSE MOUNT DISMOUNT STATISTICSSWAP SCREENSIZEk, KH` ` J ShellCommandsm |(|` 'c ``` ||` |``c` words)`c c c 8Command Implementation Add Set SSz Inx`c c }nk)' c c c ** @`,c  `J`Jmn)X c mHmn)c \V  aJ~V9-l M'!l Ll+l ) ~V9l~V6))c}ɺ)JP׺aN~V7))c}P}. N` a+k+(.}.}.`k+J` JP}.  Pc}.6N}.7N}.y﷛xOTHER ? HELP PATH RUN RERUN PAUSE MOUNT DISMOUNT STATISTICSSφ}}nJ 帼} ` am'm},}m)c c}` c c c}m` c })JH})c},c}+aNc},a k+},3},P,}},P` ]+*k*})<ɺ)JP׺aN~V8))c}ɺ)JP׺a~V8,)~V8M(~V8~V8L~V8*~V8,8}.9k,k, ' }.:}):``<`})}):k,H,k,k-)ч   } >Default.Profile3)}PWAP SCREENSIZEOTHER aJ L-Pl ShellCommands}J}nJ*}ʷ}}}}m 'mJm)}m*c c}` c c c}m` c }k* (/0}k*,9}k** k+K}k*H0J+k*H*̺k+}t'}T'N }f'}F'N]~)c}ɺ)JP~,~V~P~V H~:巛~]c 2** No #ShellCommand)c c c** Your profile file '`c c}`c ' cannot be found,`c c  (** or has no en` }4,` }}Jɛ*)P)|``c}ɛ*K`}巛`})c `` c })c `` c })#c ``c  `})ic ``c ~``c<`}}~~Vʷ` c} c~-}3\~V )c}ɺ)JPP׼ xOTHERs found at all, using defaults.`c ``c<`}), -k,k-)y})}.ʷ` }.xOTHER ? try for '#ShellCommands'.`c c D(** Now trying to use '>Default.Profile'.`c >Default.ProfileP UVU UVV UVV U VV UVV UW V"#}}dP}c`c}cd`d`ccc}`c [`cc}*`c]: `c}cdone, retrying.`cr'ϥc , aborted.`c\]}Nm}NNINI `_H_Rc*[HM[['\`Yɺ\H\"[HM[['Y`N`amHamn rv)ϳ}Urc});cc** `cc}`c not found.`ck>}VfyP }PN>k=}3d}'cLS`9}'cUS`}'cUM`c]k7,hJN}KʷLS3}*d}S' }S}*P}STBtBYYBYyBYXN]Ncc<^^c  NmqHpH`} N``˼}ɜ',q(p(c Recovered.`c\c Disk error, N}}N} }`N}0}N}@}pN}R}N}}N}}?N}`}N}p}N}`` [(\) aI` ccBoot area written.`c]Nm?N R,rst))_N}Mʷ<Okcboot microcode file: Nm?NsNJ}sNJNsHst)]cc``3c ``c from `cc`(*N}K N}K0N}K@k8N}K`k9N}KPN}KpN}K"INN}K"N}KKk7J@K`˼}ɜ',r(q(c Recovered.`c\c Floppy error, status = `c``e, retrying.`cq'c , aborted.`c\]I}o rv)>c:p) qw)a}qN`c}3}d}4&}}.BinJPc}ɺa(ϩN=c})}c````}) c `(J`  cc segment `cɊ``"!H   wH }w NJyM0HNyzMKHL zL Nk8'J}MN}K`}M}KKN}MN}MW}M}Oʷ}O?N}Oc N}OTq*c , retrying.`cq'/}N}Nr*fc, recalibrating...`c`Y N``˼}ɜHaqHqw)rHrv)Š!oH!\oH\]Y[NmbcO[H@M[['9]HM]]'\H\`H``' k8+wk8*k8,Lc'** Micro address outside of boot area: `ck8``I`cUk8N}9c}){z'y'c at #`w }x NJ߭cxJ x' cwH w+L_N}ʷ}'cSW`W      !   "   #  $ |`Pick a command:c}﷛㭁mk+ϖmJ }cmJ*}ʷ}} Pc}ASx x X Psys:exp> POS F.0 b-boot SHELLDEF ShellDefs.PAS.Q SYSTEM System.PASGRAMS>SOURCE>INITSHELL.PASTETHER.PASPASSTREAM Stream.'A??? WRITER WRITER.PASAMS>SOURCE>INITSHELL.PAS :BOOT>INITSHELL.SEG/ErrorFile = :BOOT>INITSHELLSHELL..p .p +"IP Shell.Segd/QZ-v)YtRX<[qd*###'#U]D^%&'()*)}6N})}7N})#}8N})i}9N}}:mJmk+j|` NNvP6'2 .2POPUP PopUp.PAS4 $.$PAS(2( 1%\ PASCAL.RUN6G&NITSZP$YAIO_OTHER IO_Others.PASMS>SOURCE>INPASSTREAM STREAM.PASSHELL.SEG/ErrorFile = :BOOT>INITSHELL \  DYNAMIC DYNAM+,-./0123456789:;<=>?@AN`  ]2  |{+|)*?$.$ -%\#PASCALG<HaGETTIMESGetTimeStamp.PASP [#G k`laITSHELL.PASTETHER.PASPASPERQ_STRPERQ_String.PAS'''IC.PAS:BO\]\\ :OS>PROGRAMS>SOURCE>INITSHELL.PAS :BOOT>INITSHEINITCMDSDUMPCMDSPROCESSCBADENTRY)*@z))1 ))Jɛ*)P)|``c}ɛ*K`}巛`ZrFile = :BOOT>INITSHELL T>IDYNAMIC Dynamic.PASe = :BOOT>INITSHELL INITSHELL .SEG/E$k  `$  ,=~ />IN 6G 'UTILPROGUtilProgress.PAS %[:OS>PROGRAMS>SOURCE>INITSHELL.PAS BADENTRYGETSTRININTVAL GETBOOL PNOTFOUNPNOTFOUNHELL NITSHELL.SEG/ErrorFile = :BOOT>INITSHELL EG/Erro$ A#CMDPARSE CmdParse.PASPASE>IO_INIT.PASPT.PASPROFILE Profile.PH MEMORY Memory.PASSCALMS>SOURCE>INITSHELL.PAS :BOOT>INITSHELL.SEG/ErrorFile = :BOOT>INITSHELLAS :BOOT>INITSHELL.SEG/ErrorFile = : HELL NITSHELL.SEG/ErrorFile = :BOOT>INITSHELL EG/Erro$ 'A??? WRITER WRITER.PASAMS>SOURCE>INITSHELL.PAS :BOOT>INITSHELL.SEG/ErrorFile = :BOOT>INITSHELLSHELL. UWV UWW U WW U  WW U WW U X WN}ON}O;N}O;N}K`}MN}MN}MN}Mk:N}=Q}= c````}  c}`N`c}c}ml)}mNmHml)ml)ϦJmN~ʷ~*Cursor*3d`N`N`N`c}`N`G*Screen*3d`N`N`N`"H"}c`]m,8mHmH+c L`N`M] & sl )} sNsHsl )J J,Ae*unused*3dJ J`N`N`N`H J(v J*?c%** Insufficient}C}=}?}<OkHelpDir>Shell.IndexdzcI7 This is the Three Rivers Computer Corporation PERQ.`ccommand>" for help on .`c}}).HELPJP}R >HelpDir>d ShellCommandscThe Commands available are:`c}J}4ύl A Commands are either a System command name or a Run File name.`cc9 Type "?" for a list of valid system c}Jd3}Rdc~c~ al'&}R}d3}Rdc~c~ al'϶l),c}c}c~aNlHll)}'4*c}}J`lHcc}`c}Jommands or press`cc5 down with the pen or puck for a menu of commands.`cc: When the menu is HaveHelp}J}4mc}c}c~aNc} }})3)})"/HELPgl')P)cc/To see programs you may run, type 'dir >*.run'.`c}"}}&]c"c})c~aNlOc}) HELP})a'}) PN Ndisplayed, press in the gauge area at`ccC6 the bottom and move left or right while pressed to`ccN"\}J̈l'Jc** No help on `cc})`c available.`c$"}Rc}c}cc}aNmkg}CR3Y" "JSHELL sys:os>programs>source>shell.pas>testether.PASS c}) l B BYX l6cA** Use: "Help name" or "Help"`c})'3>HelpDir>Shell.Indexdc~cY scroll the menu.`cc0 Type "" to run a program.`ccD0 Type "Help or US - unswappable.`cI}cc}Tc:c}Tc(2ccLFixing up disk addresses... `cc`cL written.oNHaoHor)mHpHpq)дȊI``J}L  vz)$I`v`}Y}sHvH vz)}I` ʷ}} file [`cc`c]: `c}3d}3 }P3}dc})c})aII'ϐ3}d3d帺}*3S c}*ɺaSkS':c** `cc}*`c not found.`ckS(@}*3cc! UM - unmovable.`cc&H` *Names*  &`*Stack*  `cc:``c4`I`I`c4`巜ɜɜN` ʷ Lv_N JvN} ʷLv_N}ʷ} `} @'}},}I` ʷ}}ʷ}}*}aII` a' }dV3}dIc** `cc}`c is on the wrong disk.`cEnter name of character set` 4&c [`cc `]c:cc}3 d}3 } `*IO*  ~cQ~c υ~c lc ** Segment `~cc``c1 was in the configurati N巜ɜɜN` dcSystem `cc-boot disk address = `dNcɭ`` }}}}ʷ}}'R} } ʷw}J }} N߭w}H w}J }} N߭w}HI` a'ϙ)}  already exists, ok to rewriteJP)YesP帺a,P}4Sc}ɺa'Ec** `cc}`c not found.`c}P}4 }da\[on file but wasn't loaded.`c~c~cqaI` ['cclg``c Swappable blocks.`cc I`c}}s.BinJdc}ɺa(c Reading `cc}`cNc Hc*** Unable to find disk address of segment `cv``cv'ϵ}L  vz)$I`v`}Y}sH3}d3}daI}dIJIcv** `cc}`c is on the wrong disk.`cIgfecc6--- for each segment, one of the following is printed:`cc! SW - swappalf``c Unswappable blocks.`ccle``c Free blocks.`c@c}T}*c````}T   +   ,   -   .   /   0 Jnk}R4 }P}c}c}c ]# P##,#"N##NU#LJP }}}}}} }}} }c` `.c}c` `]c)}P}NJ)}P}c}`a }N }NN d ]N} X} }nly parameter.`ccc}`c(It turns statistics gathering on or off.`c kN}c}carddisk" as the only parameter.`ccc}`cIt `cc`cs the specified device.`cͽ## JP##`#`JP#cLoad `ɺ c secs.`c}}}cExec `}ɺ c  secs.`cc,9HELP`}`J}3N}}̟]}"}}c}c}cc}aN}c ]mMountcDismount}"}}c}c}cc}aN} }R3m k` k` }c}c}c ȼccccaN-  # POS JP##FJP##IO `ɺ c secs.`ccSwap `ɺ c  secs.`ccMove `ɺ c} }R3} }R3} kgcEnable statistics? `c}c``c}} }R3} kzc Device to `cc`cc: `c}c``c}}R4N]}"kτ}R3} p}c}c}c cNew default path: [`cc `c .JP##JP## JPc secs.`c} }B}}}}} }} } }}} }}} }}}c}c}cc}aNak*} } } R4Nk8}c})YESP)NOc}c}cc}aNMk)} } }R4NkB}c})FLOPPYP) HAR] `c}c``ck } }ɺa }c** P} Pcc}`cHPath take#N`## -boot JPc}}L4?L}P)#} cDuty `}c` `.c}c` `c percent.`cc]c} N}NJP帺aNk } }ɺa }** P} Pcc}`c5Statistics takes "Yes" or "No" as the oDDISKP帺aNk } }ɺa }** P} Pcc}`cc`c4 takes "Floppy" or "H UYX UYY UYY U YY UYY UZ YR}c````R  a+|a*a,Nc'** Micro address outside of boot area: `ca``I`cesP帺a,3}d3}daIS}dIJIc** `cc}`c is on the wrong disk.``` [(\#) aI` @c}}gc````}  I}c}c:c}cccS`c c?c** `cc`c is ill-formed.`c\c}`5c}*BBYX N*I)* c  /}``c`}}=ʷ},^^c (=o*$oH}=oNJ},^^cN},^^c̭o*oUaNbcRtcR?c** `cc}`c not found.`cN]c#Enter name ofcI(c:ɛSc````I` ʷc=Existing boot file to copy (type return to build a new one)written.`cc:``c4`I`I`c4`巜ɜɜMc** `cc`c is not a System program.`c\+%-,HLH-..c}]cɺaH}=oNJ N},^^c '},^^c },^^cc}c},P`P`c},c} }=N} new micro boot file [`ccS`c]: `c}3Sd}3 }SP3}dc}ec}eaII'ϐ: `c}g3d帺}g3 c}gɺak':c** `cc}g`c not found.`ck(@}gN` >N巜ɜɜN` dct Interpreter `cc-boot disk address = `d' dcConfiguration file name `4$[ccc`]cc: `N<3 } USP}SW3}=N} LS3}=N} US3}=N͵}oUM3}=N3}daII` a' S}dV3}dIc** `cc}`c is on the wrong disk.3a\[Nf)(Use standard interpreter microcode filesP)YesP帺a43Perqd帺aNfkfNcɭ`` I`c]`_YNNU?mn)YmNmHmn)]c}ɛc````c}3Ncg3dk<Ng3 gdgr4yc3) .Config Pcgc}c} a'Gc͙c** "`cc}`c$" is not valid for segment mobility,`cc)** US assumed (file `cc`cI` a'ϙ)} already exists, ok to rewriteJP)Y3IOd帺aNfcInterpreter microcode file: `c})3d帺})4kf3})daNfkf})3`c(ɜ7cɜ5cɜ3cN`7 Ϣ((Wc** `cc`c% has an incompatible run file format.`** `ccg`c not found.`cgdg.4Ͻgdc},c````Q},^^ 1   2   3   4   5   6 s a directory name as the only parameter. The final ">" may be`ccc}`c* omitted. Path changes the curr}N`Nͬl) Nx l+NlrNw}NwsNviNv_NUN`}portion will (not) be visible.`ccc}`c}E COMPLEMENT NOCOMPLEMENT: Specifies the color of the bottom p@LHLKux NxwNvxNwcNext program will run with `cɊu``c" screen lines. The bottomLJP cC`````)#LJP   ent path.`c}R4}}dc} }}>(c}>N`3}dc}c} al(p }dN`5N`}N`d}}]}"N}}c}c}art.`ccc}`c4 HELP : Displays this message.`cN͍N}R3 will be `w con`coff`v)c and complemented.`c.ccN    8ccc `cN !N`a(- c New path = `cc `c)#LJP  N`}N`cc}aNk)} } }R4Nk a #k }** P} Pcc}`cnc"Screen Size for next program: [8] `c}c``c} 3}8N }}}crN   c}^C`cNyȼ3>Hold_Time.TimeStampd a{{`` `  `J`Jc  c( @'B  c a cc`c}c}c}c ]NN}NJ)RONP}NJ)cOFFP}NJ) COMPLEMENTP}NJ)}( Command line is: ScreenSize nn /switch`ccc}`c3 where nn is 1..8 or a multiple of 128 up to 1024.}c}c kkk})n}k0Jk*k ,GcE** '`}kcc' is not a digit.`{`` ]c````c```` Py  y﷛ N|uwNvNyPNyc c/ ~c(c  c(" NyN""Z  y NOCOMPLEMENTP}NJ)HELPP}} }}c}`al*}cR4%N``ccc}`c_ Valid switches are:`ccc}`cG ON OFF: The bottom c\ kKkHkḦk)k) kKuWk*k,7c** Bad number to ScreenSize.`c\kxNwNx ``c`` c&c%c%c%c%cz cLzD` )# UZY UZZ UZZ U ZZ UZZ U[ Z`c).`c}=N}=Q巜Q}ͼc},c:** Bad arg. Form is: MakeBoot system./Build N﷜dc*System `cc-boot ` c is unused.`2cLdisk ````cc5 MakeBoot `c4.5`c# target memory manager version = `c2.13`ctKey>`c\]cT0``0`T``Uc0`ml)5UmN~ʷ~~~mHml)`3Z)Write boot file to hard diskP)YesP帺aNb Nbͅ}Nd帛HSSJS.RunJJdcɺak'?c** `cc`c not founaddress = `dNcɭ`` I`cdc Interpreter `cc-boot ` c is uncc;)cWrite the boot areaP)YesP帺aNc6)Write the boot areaP)NoP``c```Yc```Wc```c```c```c`Nc ) S>'S'S>'5}`S`Jdc`S`}i33dc}c}ad.`c\dN'=NbdNcHard disk selected.`c6NbdNcFloppused.`2cdisk address = `dNcɭ`` I`c}dcc.N`cɊN`帺aNcc b Nc4ώc)Write a system boot fileP)cYesP帺a c)c}4c c}4 /c}4c  /c}4c c /c}437cRoot file3}dc}c}ak'Ic** `cc}`c is not a valid path.`c\k` a4y selected.`cd﷛46 NccWhich character to boot from? `aNa*z,c.BootS}dcScS.N`cSɊN`cS.MBoot  Fix13.KWrite an interpreter boot fileP)YesP帺a9;55ERS*F name: `ccd`d`cc  /c}4c c} /c}4c} }JBUILD3sNϐ}g.RunJH`3.Run`Jdc}g }g.RUN33`.RUNJ`-c** Bad boot character.`cNk΁aJ巜ɜɜN`  Nstd帼c ɺa' d'``Jc```Lc```Nc` c]c````c 7  8 9 :  ; < NJ߭b )Pc"cɛ ɛ ɛ N`a{NJ߭,;c(* WARNING - Tablet seemeturn> to continue.`ckQ)N`Q)N`c"ccaN'",c"ɛ"J`32citch: /`cc`cT*'@cɛJ`JN"q#N# NJQ+И)#P usvNtwNu  N'CMDPARSE CmdParse.PASSCLOCK Clock.PASs to be unplugged`c"4c"ɛ"J`#Ny a{{ ,{ JN"** No file to run specified.`cTGc$** Need a file name, not a switch: /`cc`cN@( Ny]"J c a cc`cd %&d  b   )) e))fBDM 'x x X Psys:exp> POS F.0 b-boot GETTIMESGetTimeStamp.PASfQN`N`c0** Type ? for the current list of known commands`c͓͐|Pc| "͈3;c%** No previous file specified to run.`cN"+Q)N`Q)N`V#+36GQ)#(x %Q)#KuwNvxNw͠  ")N     VyP6'2 f2PERQ_STRPerq_String.PAS  %\X|HELPa'N`N`0 N`N`d stP {QP帼cccaN'4 Ncc"`c RUN3c"ccaNJJ J``JL.RUN49.RUTzQ+hPJ,::,#PJJN6, 6##PASCALG<HaSYSTEM System.PASZP [#Gk`laJ*ɜQʷQ)iN` N`  "ͻͶccc"`ccType POS F.0 b-boot GETTIMESGetTimeStamp.PAS.QCMDPARSE CmdParse.PASEBOOT.SEG/ErrorFile = :BOOT>MAKEBOOT SEG/ErrorFile = :BOOT>MAKEBOOT * 2)SYSTEM System.\< `o` READDISK ReadDisk.PASTILITY>OTHERS>SOURCE>MAKEBOOT.PAS :BOOT>MAKEBOOT.SEG/ErrorFile = :BOOT>MAKEBOOTC%\:PERQFILE>UTILITY>OTHERS>SOURCECONTROLSControlStore.PASAKEBOOT.SEG/ErrorFile = :BOOT>MAKEBOOT ING y S$h#N;;` ^  YP6'2 .2FILEUTIL FileUtils.PAS&> $/$ PAS'0>4$ PASCAL.RUN6G&ERS>SOURCE>MAKEBOOT.PAS FILEACCEFileAccess.PASorFile = :BE>MFILEDIR FileDir.PAST>MAKEBOOT.SEG/ErrorFile = :BOOT>MAKEBOOT >MAK >MAKEBOOT.SEG/ErrorFileIO IO.PAWou$9WRITER WRITER.PAS Shell.0.Run"j SHELL.0.RUN.SEG% Shell.0.Run.0.RUN"$*$/$ .%\#PASCALG<HaFILESYSTFileSystem.PASZP [#Gk`laOOT>MAKEBOOT>OTHERS>SOURCE>MAKEBOOT.PAS :BOOT>MAKEBOOT.SEG/ErrorFile =ARITH Arith.PAS '''ST Aug':BOabaa :PERQFILE>UTILITY>OTHERS>SOURCE>MAKEBOOT.PAS :BOOT>IO_INIT IO_Init.PASe = :BOOT>MA!eSTREAM STREAM.PAS' $ W&<  %\ READER REA34#$**09*t,?v,C0D00RS*FZG/ErrorFile = :BOOT>MAKEBOOMEMORY Memory.PASLE>UTILITY>OTHERS>SOURCE>MAKEBOOT.PASASS.PASP>PZP Y%\$  ,=~ />MA 6G 'DISKIO DiskIO.PASBOOT.SEG`:PERQFILE>UTILITY>OTHERS>SOURCE>MAKEBKEBOOTLE>UTILITY>OTHERS>SOURCE>MAKEBOOT.PAS :BOOT>MAKEBOOT.SEG/ErrorIO_UNIT IO_Unit.PAS ING  DER.PAS?4@a..RH R#?cDYNAMIC DYNAMIC.PASxp>Shell.0RUNREAD RunRead.PASSSASILITY>DEVICE>SOURCE>FTP.PAS.PASS.PASPZP>PZP Y%\< `o` CODE Code.PAS < `o` PERQ_STRPerq_String.PASILITY>OTHERS>SOURCE>MAKEBOOT.PASASS.PASP>PZP Y%\< `o` OOT.PAS :BOOT>MAKEBOOT.SEG/ErrorFiALLOCDIS AllocDisk.PASUTILITY>OTHERS>SOURCE>MAKEBOOT.PASASS.PASP>PZP Y%26 Aug026`H6&IO_OTHER IO_Others.PASW&: X\f\\f\ e = > ? @  A B Zll.pas :boot>shell.seg shelINITSHEL InitShell.PAS'\$<X $  ,=~ /she 6G 'IO_OTHER IO_Others.PASms>source>shell.pas>testether.PASc$W\6 boot %\ALLOCDIS AllocDisk.PASms>source>shell.pas>testetheTER.PAS?4@a..RH R#?cSTREAM STREAM.PASexp>Shell.0ISDOMNTDISDOPATH CHECKARGDOSCREENDOSWITCHCTLCABORWRITETIMNOTAFILE6PASLONG PASLONG.PAS Y6 HPOPCMDPAPopCmdParse.PASs>source>shell.pas :boot>shell.segY5/ :os>programs>source>shell.pas :boot>IO_UNIT IO_Unit.PASrams>source>shell.pas>testether.PASr.PASREADDISK ReadDisk.PASD P%\D8$H5$$iU.Runl vlu^S6PASLONG PASLONG.PAS Y6 $YoYtSX65tStS'tSREADER READER.PAS6$\ \jmsPOPUP PopUp.PAS.pas :boot>shell.seg ':boot>shell.segurce>shell.pas %\hwSCREEN Screen.PROFILE Profile.PASms>source>shell.pas :boot>shell.segPZP/0// :os>programs>source>shell.pas /0// :os>programs>source>shell.pas :STREAM Stream.PASgrams>source>shell.pas>testether.PAS$YoYtSX65tStS'tSREADER READER.PAS6$\ \jmO'%\ DYNAMIC DYNAMIC.PASO' testeth.Psys:exp a%PAS '' PASCAL.RUN6G&hell.pas :boot>shell.seg $FILEUTIL FileUtils.PASms>source>sh:boFILEACCEFileAccess.PAS'xH' :boot HO'xp>SARITH ArithHELPER Helper.PAS S$W\$W %\$WO'%\ DYNAMIC DYNAMIC.PASO' testeth.Psys:exp a%) (%exp> Shell.SHELL CHECKHELCHECKTWOHELP PNOTFOUNLISTCMDSPNOTFOUNFIXDEFAUCREATETIUPDATETITIME PRINTTIMDOSTATell.pas>testether.PASFILESYSTFileSystem.PAS'''hell.p.PASug0\: :bo/0// :os>programs>source>shell.pas :boot>shell.seg DISKIO DiskIO.PAS' DOSWAP DoSwap.PAS'd $ W\<  %\ WRITER WRI) (%exp> Shell.SHELL CHECKHELCHECKTWOHELP PNOTFOUNLISTCMDSPNOTFOUNFIXDEFAUCREATETIUPDATETITIME PRINTTIMDOSTAT U% [\ \  I\ \\\\\\ \.Runl vlu^S6MAKEBOOTGETLN ASK GETBOOTCFINDFILEFLOPPYADSTREAM STREAM.PASons.PAS6zpy"kzpH # LOADCONTLOADMICRJUFLOPPYWRDISKWRITWRITEBLOWRITEWORWRITEMICBOOTMICRSYSTEMCONAMESEGMMAKESEG PRINTMEMLOADFONTLOADSTANLOADCODELOADSEG LOADSTACADVANCE }  }+}}ʷ}}N} }`N}0}N}@}pN}R}N}}MPCONT LOADSNAMLOADFREELOADIOSELOADSATAFIXUPDISINTERPREREADINTEWRITEFLOINIT READRUN READCONFERROREXI %\ READER REA CONTROLS%sys:OS>SYSTEM>SOURCE>CONTROLSTORE.PAS.PASPZP>PZP Y%\< `o`  N}}?N}`}N}p}N}}Nop}}N}IN} }} DER.PAS?4@a..RH R#?cDYNAMIC DYNAMIC.PASxp>Shell.0 ControlStore.Seg7Ethernet.Names N} }`N}0}N}@}pN}R}N}}N}}?N}`}N}p}N}}N̢K ̢K ̞W IPControlStore.SegZ-v)YtRX<[qd*###'#U]D^  qrpmNmINmNmINC D,REF GH jq jq rVIP Clock.Segd/QZ-v)YtRX<[qd*###'#U]D^DEFGH :`}} L0H`}} M0H`}:`}} L0H`}} M0H`]2, 22H2M'!+++k/k+,c}.``k:'c}-`;`k:'c},`;`,k2})]}0+9).}, }} KH0Jq }o*}p,] (})k1J})ck0})Tk/})k.})k-})k,]"))$RThjd c}}߭}߭}]c}))}Pc}+ɺ})߭})߭}+]c}˼}}ɺ]}Pc}c*} '2)]2k 'c}/``k-'}\Pka+kz)kA+kZ)}\* c}\k`0++[npk0KJ``J3k0 ,HBCLOCK sys:OS>PROGRAMS>SOURCE>CLOCK.PASASESTETHER.PASPASPZP>PZP Y%\< `o`  c ,}c}H}}T L0H`}}T M0H`} `}$JanFebMarAprMayJunJulAugSepOctNovc}\ }3$JanFebMarAprMayJunJulAugSepOctNovDecPc}3 k0H0k0 ,}\}3k0KJ``J3k0 ,k-'c}1`c`k1+) k1H1k1P+ k1lH1k0BBYBYBYBY BY BYX+3k0'(k1M'k1dM'k1B Clock.SegLink.Seg Dec}cKJ``J} `}qdM L0H`}q M0H`} `}} L0H`}} M0H`}k-'c}1`c`k1+) k1H1k1P+ k1lH1k0BBYBYBYBY BY BYX+3k0'(k1M'k1dM'k1]]]]]]]]]] ]^`K K qEIPIO.SegO`d/QZ-v)YtRX<[qd*###'#U]D^ >PZP Y%\< `o` FSDELETEFSSCAN FSRENAMEFSMAKEDIFSSETSEAFSPOPSEAFSPUSHSEFSADDTOTDELERRORRENERRORMKDIRERR Login.1.RUN SRCHWARNSRCHERR FSEXTSEARENTOEXIRENDIR FSGETFSDFSSETFSDFSREMOVEIMPOSSIBFSBADNAMGETNAME FILEUPERQ_STRPerq_String.PAST>FILEUTILzS zS IP Login.1.RUN/QZ-v)YtRX<[qd*###'#U]D^IO_INIT IO_Init.PASPASAS>ETHER10IO.PASASSS.PASPASPZP>PZP Y%\< `o` IO_UNIT IO_Unit.P] :BOOT>FILEUTILS.SEG/ErrorFile = :BOOT>FILEUSCREEN Screen.PASSOURCE>FILEUTILS.PASS.PASPASPASASx x X Psys:exp> POS F.0 b-boot IO_OTHER IO_Others.PASRCE>IO.PASIO sys:OS>IO>SOURCE>IO.PASSS.PASPASPASPZP>PZP Y%\< `o`  PZP>PZP Y%\< `o` DYNAMIC DYNAMIC.PASOURCE>FILEUTILS.PASS.PASPASPASPZPSS.PASPASPASPZP>PZP Y%\< `o` FOO IJK4cL MN GETTIMESGetTimeStamp.PAS>SCREEN.PASRCE>TESTETHER.PASPASPZP>PZP Y%\< `o` IO_OTHER IO_OthersQRSTUVf aNnkn .)Couldn't re-enter P3}3d \͝}h >3}3d33}3d}h3}3d ʷ}h.PASx X Psys:exp> POS F.0 b-boot PERQ_STRPerq_String.PAS>SOURCE>CLOCc}N`}'\}33}d ʷ}3 }33}d3c}N`c}3N`}}3dc}c}l c}3}f aNnkn *)Couldn't enter P3}3d \}f3}d ʷ}j}fʷ}j }3PP}fK.PASASESTETHER.PASPASPZP>PZP Y%\< `o` SETTSTAMSETTSTRIGETTSTRISTAMPTOSSTRINGTOBADTIME NEXTCH VIFILEUTILsys:OS>IO>SOURCE>FILEUTILS.PASS.PASPASPASPZP>PZP Y%\< `o`  aNnkn 2)Bad Partition name on P3}3d \}o}dc}oc}m aNnkn 2) Bad Partition name on ]}c}N`} 3}d ʷ}  N\}}N} } ʷ}} ϼ} GETNUM SKIPSPACI FileUtils.Seg' Partition.RUN P3}d \kmkl(=) !Files not in the same partition: P3}d \}f3}d ʷ}f +)File N\}}ʷ}㰈Jt{)Y}tNA}}tNc}tH}}tN aN\tH q q rVIP FileUtils.SegQZ-v)YtRX<[qd*###'#U]D^KLMNOP not found: P3}d \}j}fʷ}j'3}d3}h3}3d ʷ}f}h ]}f3}d ʷc}3} ]^ ] ]^^ ]^^ ] ^^ ]^^_2z )SYSTEM *,STREAM WRITER ETHER10IIOERRMESALLOSCROUNGEZ" LOGIN y2t 22 DYNAMIC VREADER . STREAM WRITER DISKIO 8READDISKSE%POPUP .!FILEUTILIq N#DYNAMIC VSCREEN > PERQ_STR0 FILEDIR READDISKALLOCDISARITH CMDPARSE%CLOCK Bjq j'PERQ_STR0 IO_OTHERGETTIMESPOPUPCURf@ n( DYvT vT RIPCopy.RUN`d/QZ-v)YtRX<[qd*###'#U]D^ CDISARITH DISKIO <8READDISKJLOADER 4$ READER . PERQ_STRARITH ALLOCDISPOPUP .!SHELLDEF6"STREAM IO_OTHERIO_UNIT FILEUTILN#FILESYSTvDISKIO 8ARITH FILEACCE GETTIMESFILEDEFSXFILESYSTv PROFILE ˺u `$READER . NAMIC VIO_OTHERF.1:Boot>LoginF.1:Boot>PopUpF.1:Boot>ShellDefsF.1:Boot>FileUtilsF.1:Boot>ProfileF.1:Boot>C0 SCREEN > FILESYST6v GETTIMESCODE MEMORY   IO_UNIT  PROFILE `$CMDPARSE%USERPASS&MEMORY PERQ_STR0 GETTIMESCLOCK j'SCREEN > EXCEPT NWRITER  2 STREAM PERQ_STR0 CMDPARSE%GETTIMESFILEDEFSXFILESYSTv CMDPARSEFy mdParseF.1:Boot>UserPassF.1:Boot>ClockF.1:Boot>PopUpCursFILESYSTv FILEUTILN#GETTIMESFILEDEFSXSTREAMIO_OTHERIO_INIT <EXCEPT NDYNAMIC VFILEDEFSXETHERINT*\PASLONG SYSTEM ,POPUP ˶z .! DYNAMIC VWRITER  2 SYSTEM ,IO_UNIT IO_OTHERPO% WRITER  2 STREAM DYNAMIC VFILESYSTv FILEUTILN#GETTIMESFILEDEFSXSTREAM SYSTEM ,PERQ_STR0 USERPASS^u N&WRITER  2 STREAM GETTIMESFILEDEFSX VIRTUAL  RUNREAD FILEDIR FILEACCE MOVEMEM " IO_PRIVAB0 PUPCURn(SCREEN > DYNAMIC VGETTIMESCODE MEMORY SHELLDEFkjs 6"GETTIMESCMDPAR SYSTEM ,PERQ_STR0 USERPASS^u N&WRITER  2 STREAM GETTIMESFILEDEFSXARITH CMDPARSE%CLOCK Bjq j'PERQ_STR0 IO_OTHERGETTIMESPOPUPCURf@ n( DYOPQR ST t{)Ч} }ʷ}} }@)Can't create file named P3d \} }dc} d 3o,3d 3}oNJ3dc}3NJ3,R43}d 3I5N6k5H5k5+ Nc` ]},R3}} (c} N` }},dc}N`}\}Pk'}\ 4Ϟ}\ >'k98k9H9k8I,k8)}5}cKk8}3JJ,\4}5}}3`k8}3J` JP}312 ] 3333  1 330} } J`` J\.DR41c} .DR }.DR } ROOT.DR3>)The n6}3k5HNJ3R4N6k6k5'3}d 3}3k5NJ3}dP]})})#,})"N})#N` a2}3}\`k2J` JPc}\`k2` }}}3 Jd3}d}.}0k8]}N`}'\}:N` a(-}>N` aHo'\\ooo3}g77^  3.po's},}prJ`rH` ooo[}..30qo's},}qrJ`sqJrH` oame "ROOT" is reserved: P3}d \͡} .DR30)Null filename: P3}d \c3} dc}NU})})#  J})})`#` JaQk'!kH}kNJ3R4}\}P}}kNJ3}, Jdk'}\dc}c}ɺ}.3.po's},}prJ`rH` ooo[}..30qo's},}qrJ`sqJrH` ooosp's})\sHps}3I33S/ffoT9h78c}a(F))Can't overwrite old file with directory: P3}d \}N`3}dar'}})})  J})})} J})})`P`4Ϟ}\ N` a2}3}\`k2J` JPc}\`k2` }}}3 oosp's})\sHps}3I33S/ffoT9h78?@55R))T33\\\\3333r` ʷ}}ʷ}} N}r3}NoHo,N}oNJ3R4Npo'3 J)})P }``c` m``}}}14}c` }``c` m``}}}14m``}}Jd3}d}.}0aRk(k'kk(},}dP3},d3}39I8k9},k98}k9?@55R))T33\\\\3333^_^^__^__^  __^!__"`"x *SYSTEM *,STREAM WRITER ETHER10IIOERRMESALLOSCROUNGEZ" COPY Zx "" READER . DYNAMIC VSTREAM WRITER QUICKSOR!POPUP XSTREAM PERQ_STR0 SCREEN > IO_OTHERPOPUP "CMDPARSE'PMATCH BF 8$WRITER FILEDEFSXSTREAM SYSTEM ,PERQ_STR0 POPUPCURf@ ( DYNAMIC VIO_OTHERRANDOMNU @ d̂U ̂U RIP Direct.RUNd/QZ-v)YtRX<[qd*###'#U]D^#$%&CDISARITH DISKIO <8READDISKJLOADER 4$ READER . PERQ_STR"POPCMDPA0#STREAM PMATCH 8$UTILPROG%PERQ_STR0 GETTIMESFILEDEFSXFILESYSTv FILEUTILSTREAM  " PERQ_STR0 UTILPROG ˖{ %DYNAMIC VSCREEN > RANDOMNU)FILESYSTv GE) F.1:Boot>CopyF.1:Boot>QuickSortF.1:Boot>PopUpF.1:Boot>PopCmdParseF.1:Boot>PMatchF.1:Boot>UtilProgress0 SCREEN > FILESYST6v GETTIMESCODE MEMORY   IO_UNIT &CMDPARSE'SYSTEM ,QUICKSORF !PERQ_STR0 POPUP ˶z " DYNAMIC VWRITER  TTIMESFILEDEFSXSTREAM SYSTEM ,IO_OTHERFILEUTILIq &DYNAMIC VSCREEN > PERQ_SF.1:Boot>FileUtilsF.1:Boot>CmdParseF.1:Boot>PopUpCursF.1:Boot>RandomNumbersACCE GETTIMESFILEDEFSXFILESYSTIO_OTHERIO_INIT <EXCEPT NDYNAMIC VFILEDEFSXETHERINT*\PASLONG " SYSTEM ,IO_UNIT IO_OTHERPOPUPCUR(SCREEN > DYNAMIC VGETTIMESCODE MEMOTR0 FILEDIR READDISKALLOCDISDISKIO 8ARITH FILEACCE GETTIMESFILEDEFSXFILESYSTv CMDPARSEFy ' WRITER  " STREAM DYNAMIC VFILESYSTv FILEUTIL&GETTIMES&!VIRTUAL  RUNREAD FILEDIR FILEACCE MOVEMEM " IO_PRIVAB0 RY POPCMDPA"z 0#READER . WRITER STREAM  " SYSTEM ,GETTIMESFILEDEFSv CMDPARSEFy ' WRITER  " STREAM DYNAMIC VFILESYSTv FILEUTIL&GETTIMESFILEDEFSXSTREAM SYSTEM ,PERQ_STR0 POPUPCURf@ ( DYNAMIC VIO_OTHERRANDOMNU @ d U V WXYc ZFILESYSTFileSystem.PASAS>ETHER10IO.PASASSS.PASPASPZP>PZP Y%\< `o` FILEDEFS FileDefs.H:ALLOCDIS AllocDisk.PASRCE>FILEUTILS.PASS.PASPASPASPZP>PZP Y%\< `o` >PZP Y%\< `o` FSDELETEFSSCAN FSRENAMEFSMAKEDIFSSETSEAFSPOPSEAFSPUSHSEFSADDTOTDELERRORRENERRORMKDIRERR\WPASLONG sys:OS>SYSTEM>SOURCE>PASLONG.PASP.PAS.PASPZP>PZP Y%\< `o`  PAS x X 6'&6  %\GETTIMESGetTimeStamp.PAS.QREADDISK ReadDisk.PASURCE>FILEUTILS.PASS.PASPASPASPZP>PZP Y%\< `o` FILEDIR FileDirSRCHWARNSRCHERR FSEXTSEARENTOEXIRENDIR FSGETFSDFSSETFSDFSREMOVEIMPOSSIBFSBADNAMGETNAME FILEUPERQ_STRPerq_String.PAST>FILEUTILW PasLong.Segy Login.SegCopy.Seg MakeBoot.Seg P6'2 .2FILEACCEFileAccess.PAS&4 $.$.PAS (3( 2%\ PASCAL.RUN6G&LS.PAS :BOOT>FILEUPERQ_STRPerq_String.PAST>FILEUTILrr rr rr IP PasLong.Seg/QZ-v)YtRX<[qd*###'#U]D^YZ[\@ oiovfy.bin $.$ -%\#PASCALG<HaARITH Arith.PASZP [#G k`laS>SOURCE>FILEUTILS.PAS :BOOT>FILEUTILS.SEG/ErrorFile = :BOOT>FILEUSCREEN Screen.PASSOURCE>FILEUTILS.PASS.PASPASPASZ= :B~t}HDISKIO DiskIO.PAS %\rrorFi$k HPZP>PZP Y%\< `o` DYNAMIC DYNAMIC.PASOURCE>FILEUTILS.PASS.PASPASPASPZP#.]_$`__%``_& ``_'``(a! Direct.RUNCDISARITH DISKIO <8READDISKJLOADER 4$ READER . PERQ_STR3!ALLOCDISCLOCK 3"FILEDIR ARITH DISKIO 8READDISKPMATCH 3#PERQ_STR0 GETTIMESFILEACCE GETTIMESFILEDEFSXFILESYSTv CMDPARSEFy f4% WRITER  ( STREAM DYZV ZV xIP Partition.RUNQZ-v)YtRX<[qd*###'#U]D^()*0 SCREEN > FILESYST6v GETTIMESCODE MEMORY   IO_UNIT FILEDEFSXFILESYSTv FILEUTILP4$CMDPARSEf4%SYSTEM ,UTILPROG ˖{ 3!DYNAMIC VSCREEN > NAMIC VFILESYSTv FILEUTILP4$GETTIMESFILEDEFSXSTREAM SYSTEM ,PERQ_STR0 RANDOMNU @ dIO_OTHERIO_INIT <EXCEPT NDYNAMIC VFILEDEFSXETHERINT*\PASLONG RANDOMNUf4&FILESYSTv GETTIMESFILEDEFSXSTREAM SYSTEM ,IO_OTHERCLOCK Bjq 3"PERQf4&F.1:Boot>DirectF.1:Boot>UtilProgressF.1:Boot>ClockF.1:Boot>PMatchF.1:Boot>FileUtilsF.1:Boot>CmdParseF.VIRTUAL  RUNREAD FILEDIR FILEACCE MOVEMEM " IO_PRIVAB0 _STR0 IO_OTHERGETTIMESPMATCH BF 3#WRITER STREAM  ( PERQ_STR0 FILEUTIL1:Boot>RandomNumbersNAMIC VSCREEN > PERQ_STR0 FILEDIR READDISKALLOCDISDISKIO 8ARITH *'(4 'SYSTEM *,STREAM WRITER ETHER10IIOERRMESALLOSCROUNGEZ" DIRECT NG d%(( READER . DYNAMIC VSTREAM WRITER MEMORY UTILPROGIq P4$DYNAMIC VSCREEN > PERQ_STR0 FILEDIR READDISKALLOCDISDISKIO 8ARITH FILEACCE GETTIMESFILEDEFSXFILESYSTv CMDPARSEFy f4% WRITER  ( STREAM DY[\]^_`q*qIq$DX 33} 3Jdq`4}q}}ʷ}}ʷ} }} 33} 3J}}]rG$DX 33} 3Jdr`4*}+}r*rIk,* *}+}+}3rk,/0k+126k6H6P6'2 .2READD WRITED  j]HELPER !sys:OS>PROGRAMS>SOURCE>HELPER.PASASSTETHER.PASPASPZP>PZP Y%\< `o`  d3} B BY BYX}  }}}   }+'