home *** CD-ROM | disk | FTP | other *** search
Text File | 1985-02-10 | 71.6 KB | 1,823 lines |
- .fo Section 4 - Library Utilities Page #
-
- 4.0 Library Utilities
-
- 4.1 Author Credits and Introduction to LU
-
- Thi≤ documen⌠ applie≤ t∩ versioε 1.1░ oµ LU.COM«á I⌠á als∩ ì
- applie≤á t∩ Versioε 1.░ oµ LDIR┌ b∙ RicharΣ Conε anΣ Versioεá 1.░ ì
- oµá LRUN┌á b∙ RicharΣ Conε (whicΦ wa≤ deriveΣ froφ LRU╬á b∙á Gar∙ ì
- Novosielski).
-
- Copyright (c) 1982 Gary P. Novosielski
- All rights reserved.
-
- Permissioε i≤ hereb∙ granteΣ t∩ cop∙ anΣ distributσ thi≤ ì
- documen⌠á fo≥á an∙ non-commercia∞ purpose«á An∙ usσá oµá thi≤ ì
- materia∞á fo≥á commercia∞á advantagσ withou⌠á prio≥á writteε ì
- consen⌠ oµ thσ autho≥ i≤ prohibited.
-
- ╔á havσá modifieΣ thσ origina∞ documen⌠ fo≥ inclusioεá iεá ß ì
- HEL╨á filσá anΣ elaborateΣ oε thσ subjec⌠ witΦá documentatioεá oε ì
- LRUNZ and LDIRZ.
-
-
- INTRODUCTION
-
- Librar∙ Utilit∙ (LU⌐ i≤ ß prograφ t∩ allo≈ combininτ oµ ì
- multilplσá file≤á int∩ onσ large≥ file«á I⌠á require≤á CP/═ ì
- versioε 2.░ o≥ highe≥ t∩ run« L╒ run≤ unde≥ ZCPR2.
-
- Thi≤á large≥á filσ i≤ divideΣ int∩ tw∩á basiπá part≤á -- thσ ì
- director∙á (a⌠á thσá fron⌠á oµ thσ file⌐ anΣá thσá file≤á oµá thσ ì
- library« Thσ director∙ informatioε i≤ storeΣ iε thσ samσ filσ a≤ ì
- thσá data¼á o≥á membe≥ files«á Thσ amoun⌠ oµ spacσ t∩á bσ ì
- allocateΣ t∩ thσ director∙ mus⌠ bσ specifieΣ b∙ thσ use≥ wheε ì
- ß ne≈ librar∙ i≤ created¼á bu⌠ caε bσ changeΣ wheε thσ filσá i≤ ì
- reorganized« Thσ sizσ oµ eacΦ director∙ entr∙ i≤ 3▓ bytes¼ whicΦ ì
- mean≤á eacΦá fou≥á director∙ entrie≤ takσ u≡ onσ secto≥á oµá thσ ì
- librar∙ file«á Currentl∙ onl∙ 1╢ byte≤ oµ eacΦ entr∙ arσá used¼ ì
- witΦá 1╢á byte≤á beinτá reserveΣ fo≥ usσá witΦá possiblσá futurσ ì
- enhancements«á Thσ director∙ itselµ use≤ onσ entr∙ fo≥á contro∞ ì
- information¼á s∩á thσ numbe≥ oµ director∙ sector≤ needeΣ fo≥ ß ì
- librar∙ oµ φ member≤ i≤ (φ ½ 1⌐ » 4¼ roundeΣ u≡ t∩ thσ nex⌠ wholσ ì
- number.
-
- Thσá use≥á neeΣ no⌠ bσ concerneΣ witΦá thi≤á discussioεá a≤ ì
- director∙á sizσá i≤ calculateΣ b∙ thσá program«á Al∞á director∙ ì
- size≤á arσá inpu⌠ anΣ outpu⌠ iε term≤ oµá entries¼á eacΦá entr∙ ì
- beinτ ß potentia∞ membe≥ file« Thσ prograφ adjust≤ director∙ sizσ ì
- t∩ aε integra∞ numbe≥ oµ sectors.
-
- LRUN┌á i≤á ß smal∞ prograφ whicΦ allow≤ runninτ ßá .CO═ ì
- (objec⌠á code⌐ filσ membe≥ directl∙ froφá an∙á library¼á withou⌠ ì
- havinτá t∩á extrac⌠á i⌠á t∩á ßá separatσá disδá file«áá I⌠á i≤ ì
- specificall∙á intendeΣ t∩ bσ useΣ witΦ ß defaul⌠ COMMAND.LB╥ filσ ì
- under ZCPR2 and can be used as an Extended Command Processor.è
- LDIR┌ i≤ ß prograφ whicΦ allow≤ thσ use≥ t∩ displa∙ ß sorteΣ ì
- director∙ oµ thσ file≤ iε ß defaul⌠ COMMAND.LB╥ file«á Simplσ iε ì
- nature¼á LDIR┌á give≤á thσ use≥ thσ abilit∙ t∩ selec⌠á group≤á oµ ì
- file≤ viß wilΣ card≤ anΣ displa∙ ß sorteΣ listinτ whicΦá include≤ ì
- individual file sizes.
-
-
-
- 4.2 Why Use Libraries?
-
- First¼á ß librar∙ filσ usuall∙ take≤ u≡ les≤ spacσ thaε thσ ì
- tota∞á oµá thσ individua∞ membe≥ file≤ whicΦ wen⌠ int∩á it«á Thσ ì
- reasoεá fo≥á thi≤ i≤ tha⌠ CP/═ allocate≤ disδ spacσá iεá fixeΣ ì
- block≤ o≥ groups¼á typicall∙ 2δ byte≤ each« An∙ spacσ afte≥ thσ ì
- las⌠á secto≥á oµ ß filσ u≡ t∩ thσ nex⌠ 2δá blocδá boundr∙á i≤ ì
- wasted«á Thσá samσá file≤á iε ß librar∙ usσ onl∙á thσá numbe≥á oµ ì
- sector≤á the∙ actuall∙ need¼á anΣ thougΦ thσ librar∙ itselµá ma∙ ì
- havσá ß partiall∙ wasteΣ blocδ a⌠ thσ end¼á anΣ require≤ somσ ì
- spacσ fo≥ director∙ informatioε a⌠ thσ beginning¼á thσ ne⌠ ì
- effec⌠ i≤ usuall∙ ß savinτ oµ tota∞ space«á Thσ bes⌠ result≤ ì
- arσ seeε wheε man∙ smal∞ file≤ arσ combineΣ int∩ onσ library.
-
- Second¼ ß librar∙ filσ make≤ mos⌠ efficien⌠ usσ oµ thσ CP/═ ì
- disδá directory¼á sincσá i⌠ i≤ treateΣ a≤ onl∙ onσ filσá b∙á CP/═ ì
- regardles≤ oµ ho≈ man∙ member≤ i⌠ contains.
-
- Third¼á librarie≤á caεá aiΣ iε transferrinτá package≤á oµ ì
- softwarσ froφ onσ systeφ t∩ anothe≥ usinτ XMODEM« Onl∙ onσ filσ ì
- i≤ transferred¼á eliminatinτ thσ neeΣ t∩ ruε thσ XMODE═á ransfe≥ ì
- prograφ severa∞ times¼á thσ chancσ oµ overlookinτ ß needeΣ file¼ ì
- anΣá thσá problem≤ oµ naminτ conflicts¼á (sucΦ a≤ READ.M┼á files⌐ ì
- amonτ unrelateΣ packages.
-
-
-
- 4.3 Why Not Use Libraries?
-
- Therσá arσá somσá ver∙ gooΣ reason≤ fo≥á no⌠á usinτ ì
- libraries«á Fo≥á onσá thing¼á file≤á withiε ßá librar∙á arσá no⌠ ì
- availablσá t∩ mos⌠ "normaló programs«á Iµ ß frequentl∙á accesseΣ ì
- filσ i≤ placeΣ iε ß library¼á i⌠ wil∞ havσ t∩ bσ extracteΣ froφ ì
- thσ librar∙ t∩ it≤ free-standinτ counterpar⌠ beforσ i⌠ caεá bσ ì
- useΣá b∙á ß program«á (.CO═ file≤ arσ ß notablσá exceptioεá t∩ ì
- this¼á becausσá oµá thσ availabilit∙ oµ thσ LRUN┌á command¼ ì
- covereΣ later.)
-
-
- Librarie≤ caε actuall∙ wastσ disδ space« Wheε ß disδ filσ ì
- i≤ erased¼á CP/═ return≤ thσ spacσ formerl∙ useΣ b∙ thσ filσá t∩ ì
- thσá freσ spacσ poo∞ fo≥ usσ b∙ ne≈ files«á Wheε ß membe≥ filσ ì
- i≤á deleteΣá froφá ßá librar∙á however¼á thσá spacσá previousl∙ ì
- occupieΣá b∙á thσá filσ i≤ no⌠á useable«á Thσá librar∙á mus⌠á bσ ì
- reorganizeΣá t∩ makσ thi≤ spacσ availablσ t∩ CP/M«á Whilσ thi≤ ì
- i≤ eas∙ t∩ d∩ witΦ thσ L╒ command¼á i⌠ i≤ no⌠ automatic¼á anΣ ì
- iµ thσ situatioε i≤ ignored¼á largσ area≤ oµ disδ caε bσ tieΣá u≡ ì
- a≤ unproductivσ "deaΣ space".
-
-
-
- 4.4 How to Use the Library Utility LU
-
- L╒á ha≤ tw∩ basiπ method≤á oµá operation║á interactive¼á anΣ ì
- paramete≥ driven«á Usσ oµ thσ interactivσ methoΣ i≤ probabl∙ thσ ì
- bes⌠á wa∙ t∩ ge⌠ t∩ kno≈ thσ program¼á becausσ thσ effec⌠ oµ eacΦ ì
- actioε caε bσ immediatle∙ seen.
-
- T∩ star⌠ aε interactivσ librar∙ maintenancσá session¼á jus⌠ ì
- typσá L╒á oεá thσ commanΣ linσ witΦ n∩ parameter≤á afte≥á it« ì
- Afte≥á yo⌡á arσ familia≥ witΦ thσ program¼á yo⌡á caεá specif∙ ì
- multiplσá paramter≤á oε thσ commanΣ linσ anΣ L╒á wil∞á worδá witΦ ì
- littlσá o≥á n∩ intervention«á Inpu⌠ froφ disδ files¼á ├á prograφ ì
- "pipes"¼á anΣá thσá XSU┬ facilit∙ arσ als∩ supporteΣá fo≥á morσ ì
- advanceΣ applications.
-
- Al∞á thσá method≤ makσ usσ oµá simila≥á syntax«á CommanΣ ì
- inpu⌠á take≤ tw∩ forms║á operator≤ (sometime≤á calleΣá tags¼á o≥ ì
- options⌐ anΣ operands.
-
- Aεá operato≥á i≤á defineΣ a≤ an∙ tw∩á characte≥á strinτ ì
- wherσ thσ firs⌠ characte≥ i≤ ß minu≤ sign«á Operator≤ tel∞ thσ ì
- prograφ wha⌠ t∩ do« ValiΣ operator≤ arσ -a¼ -d¼ -e¼ -l¼ -o¼ anΣ -ì
- r«á Anythinτ elsσ witΦ ß simila≥ forφ i≤ aε operato≥ too¼á bu⌠ aε ì
- invaliΣ one.
-
- Operand≤ arσ everythinτ else« Normally¼ operand≤ arσ filσ ì
- name≤ whicΦ yo⌡ wan⌠ t∩ adΣ to¼á deletσ from¼á o≥ extrac⌠ froφ ß ì
- librar∙ file¼á o≥ arσ name≤ oµ librar∙ file≤ t∩ bσ opened« The∙ ì
- ma∙ contaiε thσ character≤ ¬ o≥ ┐á iε whicΦ casσ the∙ arσá calleΣ ì
- ambiguou≤ operands« Somσ valiΣ operand≤ are:
-
- foo.bar b:test.fil z *.* comm?nd
-
- T∩ refe≥ t∩ ß filσ nameΣ "-zó thσ operanΣ woulΣ havσ t∩ bσ ì
- entereΣá a≤á "-z.ó witΦ thσ period¼á sincσ otherwisσ i⌠ woulΣá bσ ì
- mistakeε a≤ aε invaliΣ operator.
-
- Wha⌠á actioεá i≤ takeε upoε thσ filσá depend≤á upoεá whicΦ ì
- operato≥á mos⌠á recentl∙ precedeΣ it«á Iµ n∩á operato≥á wa≤ ì
- entered¼á o≥ aε invaliΣ one¼ o≥ onσ tha⌠ take≤ n∩ operands¼ thσ ì
- operanΣ wil∞ bσ ignored.
- è Wheε runninτ interactively¼á L╒ prompt≤ fo≥ eacΦ operanΣ anΣ ì
- operator¼á onσ pe≥ inpu⌠ line«á Multiplσ input≤ pe≥ linσ arσ no⌠ ì
- alloweΣ usinτ thσ interactivσ method.
-
- Thσá promp⌠á yo⌡á wil∞ seσ i≤ thσ namσ oµá thσá curren⌠ ì
- operato≥á followeΣá b∙ ß ">ó character¼á fo≥á examplσá "-E>"« ì
- Thi≤á indicate≤á tha⌠ thσ -σ operato≥ i≤ iε effect¼á anΣá iµá aε ì
- operanΣá i≤á entereΣ i⌠ wil∞ bσ interpreteΣ a≤ thσá namσá oµá ß ì
- membe≥á filσá t∩ bσ ExtracteΣ froφ thσá library«á Wheεá thσ ì
- prograφá firs⌠á start≤ up¼á thσ promp⌠ i≤ "-?>ó whicΦá mean≤á n∩ ì
- operato≥á i≤á currentl∙ iε effect«á Iε thi≤ case¼á thσá onl∙ ì
- valiΣ inpu⌠ i≤ aε operator« An∙ operanΣ wil∞ bσ ignored.
-
-
- 4.5 Summary of Operators
-
- The operators available under LU are:
-
- -A Add Files to Library
- -D Delete Files from Library
- -E Extract Files from Library
- -L List Library
- -O Open a Library
- -R Reorganize a Library
-
- Thesσáá operator≤á arσá discusseΣá iεá morσá detai∞á iεá thσ ì
- following frames.
-
- -ßá adΣá file≤ t∩ library«á -ß cause≤ thσá promp⌠á t∩ ì
- changσá t∩ -A╛ whicΦ wil∞ theε accep⌠ a≤ operand≤ thσ name≤á oµ ì
- file≤á t∩ bσ addeΣ t∩ thσ opeε library«á (Iµ n∩á librar∙á namσ ì
- ha≤á beeε openeΣ witΦ thσ -∩ operator¼á thσ defaul⌠á librar∙ ì
- LIBRARY.LB╥á i≤á alway≤á useΣ instead.⌐á Ambiguou≤á operand≤ ì
- matcΦá al∞ disδ file≤ whicΦ qualif∙ accordinτ t∩ norma∞á CP/═ ì
- wild-carΣ conventions¼á excep⌠ thosσ witΦ ß filetypσ oµ .LBR« ì
- Explici⌠ drivσ specificatioε oε aε operanΣ cause≤ tha⌠ drivσá t∩ ì
- bσ searcheΣ fo≥ thσ file(s⌐ insteaΣ oµ thσ curren⌠ drive.
-
- -Σá deletσá file≤ froφ library«á -Σ cause≤ thσá promp⌠á t∩ ì
- changσ t∩ -D╛ whicΦ accept≤ name≤ oµ file≤ t∩ bσ deleteΣ froφ ì
- thσá opeεá library«á Ambiguou≤ name≤ matcΦ al∞á membe≥á file≤ ì
- whicΦá qualify«á Drivσ specification≤ oε operand≤ arσá ignored¼ ì
- sincσ thσ librar∙ member≤ arσ obviousl∙ oε whicheve≥ drivσ ì
- contain≤ thσ opeε library.
-
- -σá extrac⌠ file≤ froφ library«á -σ cause≤ thσ promp⌠ t∩ ì
- changσ t∩ -E╛ whicΦ accept≤ name≤ oµ librar∙ membe≥ file≤ t∩ bσ ì
- extracteΣá t∩ norma∞ free-standinτá CP/═á files«á Ambiguou≤ ì
- name≤á matcΦ al∞ membe≥ file≤ whicΦ qualify«á Drivσ specificatioε ì
- oεá ßá membe≥á namσ cause≤ thσ outpu⌠ filσ t∩ bσá placeΣá oεá thσ ì
- specifieΣá drivσ rathe≥ thaε thσ curren⌠á drive«á An∙á existinτ ì
- filσá witΦá thσá samσ namσ wil∞ bσ overwritteε unles≤á i⌠á i≤ ì
- protecteΣ b∙ virtuσ oµ it≤ Read/Onl∙ flaτ bi⌠ beinτ set.
-
-
- -∞ lis⌠ curren⌠ librar∙ map«á -∞ cause≤ thσ director∙á oµ ì
- thσá curren⌠ librar∙ t∩ bσ listeΣ oε thσ console«á Thσ membe≥ ì
- name≤á arσ displayed¼á alonτ witΦ thei≥ index¼á o≥á startinτ ì
- positioεá withiεá thσ library¼á anΣ thei≥á sizσá iεá sectors« ì
- Also¼á informatioεá i≤ displayeΣ abou⌠ thσ numbe≥ oµ sector≤á iε ì
- thσ library¼ anΣ ho≈ mucΦ space¼ i≤ useΣ o≥ unuseΣ (wasted)« ì
- Informatioεá i≤á als∩ displayeΣ abou⌠ thσ numbe≥ oµ entrie≤á iε ì
- thσ directory¼á anΣ ho≈ man∙ arσ active¼á deleted¼á o≥ freσ fo≥ ì
- use«á Thi≤ help≤ determinσ whethe≥ thσ librar∙ need≤ t∩ bσ re-ì
- organizeΣá t∩á freσá unuseΣá spacσá anΣá deleteΣá entries«á Thσ ì
- operato≥á -∞á expect≤á n∩á operands¼áá s∩á afte≥á thσá lis⌠á i≤ ì
- displayed¼á thσá promp⌠ change≤ bacδ t∩ -?╛ fo≥ entr∙ oµá anothe≥ ì
- operator.
-
- -∩ opeε ß library«á -∩ cause≤ thσ promp⌠ t∩ changσ t∩ -O╛ ì
- whicΦ accept≤ thσ namσ oµ ß librar∙ filσ t∩ bσ openeΣ fo≥á usσ ì
- witΦ subsequen⌠ operators« Iµ anothe≥ librar∙ i≤ alread∙ open¼ ì
- i⌠á i≤ closeΣ first«á Iµ thσ ne≈ librar∙ doe≤ no⌠ exist¼á i⌠ i≤ ì
- createΣá witΦá aεá empt∙ directory«á Ambiguou≤á name≤á arσá no⌠ ì
- allowed«á Drivσ specificatioε i≤ allowed« Thσ filσ typσ ma∙ bσ ì
- specified¼á bu⌠á default≤ t∩ .LB╥ whicΦ i≤ strongl∙ suggesteΣá a≤ ì
- thσ filσ typσ fo≥ al∞ librar∙ files.
-
- Yo⌡á wil∞á recal∞ tha⌠ file≤ oµ typσá -ßá (add⌐á operator« ì
- Thi≤á prevent≤á librarie≤á froφ beinτ accidentall∙á addeΣá t∩ ì
- othe≥á libraries¼á o≥ t∩ themselves╗á ß situatioεá no⌠á unlikσ ì
- tryinτá t∩á drivσ ß trucδ u≡ it≤ owε tailpipe«á Iµá fo≥á somσ ì
- reasoε yo⌡ wan⌠ t∩ adΣ onσ librar∙ t∩ another¼á bσ m∙ guest¼ bu⌠ ì
- yo⌡á wil∞á havσá t∩á specif∙á thσá namσá withou⌠á ¬á o≥á ┐ ì
- character≤ wheε addinτ it.
-
- -≥á reorganizσá library«á -≥ cause≤ thσá currentl∙á opeε ì
- librar∙ t∩ bσ reorganized« First¼ thσ director∙ i≤ sorteΣ int∩ ì
- alphabetica∞ order¼ anΣ theε al∞ activσ member≤ arσ copieΣ t∩ ì
- ßá worδá librar∙á whicΦ i≤ openeΣ oε thσá curren⌠á drive¼á no⌠ ì
- necessaril∙ thσ drivσ containinτ thσ olΣ library« Thσ use≥ ma∙ ì
- specif∙á ß differen⌠ numbe≥ oµ entrie≤ fo≥ thσ worδ librar∙á iµ ì
- i⌠á i≤á necessar∙á t∩á expanΣá o≥á compres≤á thσá directory«á Thσ ì
- director∙á wil∞á alway≤ bσ madσ largσ enougΦ t∩ contaiεá al∞á thσ ì
- activσá member≤á oµ thσ olΣ library¼á s∩ ß sizσ oµá ▒á ma∙á bσ ì
- specifieΣá t∩á makσá thσ director∙ a≤ smal∞á a≤á possible«á (Seσ ì
- Specifyinτ Director∙ Size≤ below.)
-
- Wheεá reorganizatioεá i≤ complete¼á thσ olΣá librar∙á i≤ ì
- deleteΣ anΣ thσ worδ librar∙ i≤ renameΣ t∩ thσ namσ oµ thσá olΣ ì
- library«áá N∩áá backu≡á cop∙á i≤á retained«áá Thσáá newl∙ ì
- reorganizeΣá librar∙á remain≤á opeε fo≥ usσá witΦá subsequen⌠ ì
- operations.
-
- Wheneve≥á thσ prograφ i≤ promptinτ fo≥ aεá operand¼á anothe≥ ì
- operato≥á ma∙á bσá entereΣ insteaΣ t∩ changσ thσ statu≤á oµá thσ ì
- prompt«á T∩ enΣ aε interactivσ session¼ ente≥ ß blanδ linσ a⌠ thσ ì
- prompt.
-
- SPECIFYING DIRECTORY SIZE
-
- Wheneve≥ aε olΣ librar∙ i≤ opened¼á thσ director∙ sizσá i≤ ì
- displayeΣ a≤ follows:
-
- Old library LIBRARY.LBR has 32 entries, 5 free.
-
- Thi≤á mean≤á tha⌠á ╡ morσ member≤ ma∙ bσ addeΣá beforσá thσ ì
- director∙á become≤ full«á Wheε thσ director∙á i≤á full¼á -ß ì
- become≤á aεá invaliΣ operator¼á anΣ thσ librar∙á mus⌠á bσ ì
- reorganizeΣ t∩ adΣ an∙ morσ members.
-
- Wheεá ß librar∙ i≤ createΣ fo≥ thσ firs⌠ time¼á thσ use≥ i≤ ì
- prompteΣ likσ this:
-
- New library COMMAND.LBR. Allow how many entries?_
-
- An∙ numbe≥ froφ ▒ t∩ 6553╡ i≤ valid«á Thσ actua∞ maximuφá i≤ ì
- determineΣá b∙ thσ amoun⌠ oµ freσ memor∙ availablσ oε thσá systeφ ì
- iεá use«á Director∙á sizσá wil∞ bσ roundeΣ u≡ t∩ thσá nex⌠á wholσ ì
- secto≥ necessar∙ t∩ contaiε thσ numbe≥ oµ entrie≤á requested« ì
- Thi≤á numbe≥á wil∞á remaiε iε effec⌠ unti∞á thσá librar∙á i≤ ì
- reorganized« Sincσ thσ director∙ itselµ count≤ a≤ aε entry¼ onσ ì
- entr∙á i≤á addeΣá t∩á whateve≥ i≤ entereΣ beforσá thσá sizσá i≤ ì
- calculated«á Thereforσá jus⌠ ente≥ thσ maximuφ numbe≥ oµá membe≥ ì
- file≤ yo⌡ wan⌠ thσ librar∙ t∩ bσ capablσ oµ holding.
-
- Thσá maximuφ numbe≥ oµ membe≥ file≤ i≤ als∩ constraineΣá b∙ ì
- thσá amoun⌠á oµá availablσá disδá space«á Iµá durinτá aεá adΣ ì
- operatioε thσ disδ spacσ run≤ out¼á thσ namσ i≤ no⌠ addeΣ t∩ thσ ì
- directory« Iµ ß multiplσ adΣ i≤ iε progress¼ duσ t∩ aε ambiguou≤ ì
- operand¼á thσá remaininτá qualifyinτ file≤ arσá stil∞á addeΣá iµ ì
- possible« Iµ an∙ oµ theφ i≤ smal∞ enougΦ t∩ fi⌠ iε thσ remaininτ ì
- disδá space¼á i⌠ wil∞ bσ added«á Iµ an∙ sector≤ werσ writteε b∙ ì
- aεá adΣá attempt¼á anΣ theε neve≥á utilized¼á the∙á remaiεá a≤ ì
- unuseΣ sectors¼ anΣ thσ librar∙ shoulΣ bσ reorganized.
-
-
-
-
- 4.6 LU Command Line Forms
-
- Al∞á oµ thσ informatioε needeΣ fo≥ ß maintenancσ ruε ma∙á bσ ì
- specifieΣá oεá thσ commanΣ line«á Thσ operator≤ anΣ operand≤á arσ ì
- entered¼á separateΣá b∙ spaces¼á afte≥ thσ L╒á command¼á anΣá thσ ì
- operation≤á wil∞ takσ placσ withou⌠ consolσ intervention¼á excep⌠ ì
- iεá thσ casσ wherσ thσ director∙ sizσ fo≥ ß ne≈ librar∙á i≤ ì
- requested« Thσ synta° is:
-
- LU <opr> [<opd> [<opd> ...]] [<opr> [<opd> ...]...
-
- where square brackets indicate optional parameters, and:
- <opr> is any operator.
- <opd> is any operand.
- ... indicates that the preceding parameter may occur
- several times.
-
- An∙á name≤á occurrinτ prio≥ t∩ thσá firs⌠á operator¼á o≥ ì
- followinτá aεá operato≥ whicΦ doe≤ no⌠á expec⌠á operands¼á arσ ì
- ignored.
-
-
-
- Advanced Features of LU
-
- Inpu⌠á froφ BD╙ ├ "pipesó o≥ ordinar∙ sequentia∞ file≤á i≤ ì
- als∩á possible«á Thσ filenamσ i≤ specifieΣ oε thσá commanΣá linσ ì
- precedeΣ b∙ ß "<ó characte≥ anΣ n∩ interveninτ blank« Example:
-
- LU <CONSOL.DUP
- read≤ thσ content≤ oµ thσ filσ CONSOL.DU╨ anΣ use≤ eacΦ linσ ì
- oµá thσá filσ a≤ iµ i⌠ haΣ beeε typeΣ a⌠ thσ norma∞á consolσ ì
- b∙ thσ interactivσ method«á Iε thi≤ case¼ n∩ operator≤ o≥ ì
- operand≤áá ma∙á bσá present«áá Consolσá outpu⌠á ma∙á als∩áá bσ ì
- redirecteΣ b∙ specifyinτ aε outpu⌠ filσ oε thσ commanΣá linσ ì
- afte≥á thσ characte≥ ">"«á Thi≤ applie≤ t∩ paramete≥ driveε ì
- a≤ wel∞ a≤ interactivσ (includinτ "piped"⌐ input« Examples:
-
- LU -O SPECIAL -A ZOT.COM >LOGFILE.OUT
- woulΣ adΣ thσ filσ zot.coφ t∩ thσ librar∙ special.lb≥á anΣ ì
- writσá thσá consolσ outpu⌠ t∩ ß filσá calleΣá logfile.out«á thσ ì
- locatioεá oµá thσá outpu⌠ namσ oε thσ linσ doe≤á no⌠á matte≥á anΣ ì
- excep⌠á fo≥ turninτ oε redirecteΣ output¼á i⌠ i≤ ignoreΣ b∙á al∞ ì
- operators.
-
- LU <BATCH.IN >B:RECORD.DOC
- woulΣá takσ interactivσ command≤ froφ thσ filσ batch.iε anΣ ì
- writσ consolσ outpu⌠ t∩ ß filσ calleΣ record.doπ oε drivσ B.
-
- Normally¼ consolσ filσ outpu⌠ i≤ als∩ echoeΣ oε thσ rea∞ ì
- console¼á excep⌠ wheε inpu⌠ i≤ als∩ redirected¼ a≤ iε thσ las⌠ ì
- example« T∩ forcσ visiblσ consolσ outpu⌠ wheε botΦ aε inpu⌠ anΣ ì
- outpu⌠á filσá arσ used¼á thσ ">óá characte≥á precedinτá thσ ì
- outpu⌠ filσ namσ ma∙ bσ changeΣ t∩ ß "+ó instead:è
- LU +RECORD.DOC <BATCH.IN
- woulΣá havσá thσá samσ effec⌠ a≤ thσá previou≤á example¼ ì
- excep⌠á tha⌠á messagσ outpu⌠ woulΣ als∩ bσá visiblσá oεá thσ ì
- console.
-
-
-
- 4.7 CAUTIONS
-
- Thσá importancσá oµá keepinτ backu≡ copie≤ oµá al∞á disδ ì
- files¼á anΣ especiall∙ libraries¼ canno⌠ bσ overemphasized« B∙ ì
- usinτ librar∙ files¼ thσ use≥ i≤ exposeΣ t∩ thσ dreadeΣ all-the-ì
- eggs-in-one-baske⌠ syndrome«á Tha⌠ is¼ iµ somethinτ happen≤ t∩ ì
- thσ librar∙ file¼á particularl∙ thσ directory¼ i⌠ ma∙ bσ beyonΣ ì
- thσá capabilitie≤ oµ eveε ß CP/═ wizarΣ t∩ restorσá thσá membe≥ ì
- files« Thσ situatioε i≤ madσ particularl∙ stick∙ b∙ thσ fac⌠ tha⌠ ì
- thσá thσ director∙ mus⌠ bσ updateΣ iε placσ a≤ member≤ arσá addeΣ ì
- o≥ deleted.
-
- Precaution≤ havσ beeε takeε t∩ minimizσ thi≤ risk«á Fo≥ onσ ì
- thing¼á thσá director∙ i≤ reaΣ int∩ memor∙ wheε thσ librar∙ ì
- i≤ firs⌠ opened¼ anΣ i≤ onl∙ writteε bacδ iµ i⌠ differ≤ froφ ì
- thσ cop∙ oε thσ disδ wheε thσ librar∙ i≤ closed« Operation≤ ì
- whicΦ changσ thσ director∙ are║á adds¼ deletes¼ anΣ thσ sor⌠ ì
- operatioεá whicΦ i≤ donσ beforσ reorganization«á Iµá onl∙ ì
- extract≤á (o≥á LRUNZá prograφá executions⌐á arσá done¼áá thσ ì
- director∙á i≤á neve≥ rewritten¼á anΣ thσ .LB╥ filσ ma∙á bσá writσ ì
- protecteΣ iµ desired.
-
- Fo≥á anothe≥á thing¼á thσ entirσ empt∙á director∙á i≤ ì
- allocateΣá anΣá writteε t∩ disδ wheε ß ne≈á librar∙á i≤á firs⌠ ì
- created«á Thi≤á insure≤ tha⌠ therσ wil∞ alway≤ bσ enougΦ spacσ oε ì
- disδá fo≥ thσ numbe≥ oµ director∙ entrie≤ requesteΣ a⌠á thσá timσ ì
- oµá creation«á Thσá disδ spacσ ma∙ ruε ou⌠ whilσá addinτá file≤ ì
- later¼ bu⌠ therσ wil∞ alway≤ bσ enougΦ rooφ oε disδ t∩ updatσ thσ ì
- director∙ oncσ i⌠ i≤ successfull∙ created.
-
- Thσá fac⌠á tha⌠á onl∙ thσ memor∙ cop∙ oµ thσá director∙á i≤ ì
- modifieΣ unti∞ thσ filσ i≤ closeΣ ma∙ comσ iε ver∙ hand∙ iµá yo⌡ ì
- mistakenl∙á deletσá ß filσ anΣ recognizσ i⌠á righ⌠á away«á Fo≥ ì
- example¼ supposσ yo⌡ makσ thσ mistakσ oµ typinτ *.¬ afte≥ thσ ì
- -D╛ prompt.
-
- Briefly¼á you≥ hear⌠ sinks¼á a≤ thσ "Deleting:ó messagσ i≤ ì
- displayeΣá anΣ al∞ thσ membe≥ name≤ zi≡ int∩ oblivion«á Don'⌠ ì
- panic«á Onl∙ thσ memor∙ cop∙ oµ thσ director∙ ha≤ beeεá modified« ì
- Wheεá thσá -D╛ promp⌠ returns¼á d∩ no⌠á hi⌠á RETURN«á Instead¼ ì
- abor⌠á thσ prograφ witΦ Control-C«á Thi≤ wil∞ cance∞ thσá prograφ ì
- withou⌠á updatinτá thσ directory¼á anΣ thσ origina∞ member≤á wil∞ ì
- stil∞ bσ present.
-
-
- Herσ i≤ anothe≥ caution« Sincσ thσ entirσ director∙ (bu⌠ ì
- no⌠á membe≥á sectors⌐á mus⌠ fi⌠ iε memor∙ fo≥á ßá librar∙á t∩á bσ ì
- successfull∙ opened¼ i⌠ i≤ possiblσ tha⌠ ß hugσ director∙ createΣ ì
- oεá ß you≥ systeφ wil∞ bσ to∩ largσ t∩ fi⌠ iε memor∙ iµ reaΣá oε ì
- anothe≥á systeφá wil∞ les≤ memory«á Thi≤ shoulΣ no⌠ bσ ßá probleφ ì
- witΦ ß librar∙ oµ unde≥ ß hundreΣ entries.
-
- T∩ givσ yo⌡ aε ideß oµ ho≈ mucΦ elbowrooφ yo⌡ havσ t∩ worδ ì
- with¼á L╒ display≤ thσ highes⌠ memor∙ locatioε useΣ eacΦ timσ i⌠ ì
- terminates«á Thi≤á wil∞ var∙ dependinτ oε thσá larges⌠á director∙ ì
- useΣ durinτ operation«á I⌠ doe≤ no⌠ includσ thσ stack¼á whicΦ ì
- grow≤á dowε froφ higΦ memory¼á anΣ i≤ alloweΣ abou⌠ ß thousanΣ ì
- byte≤ oµ spacσ fo≥ subroutinσ linkage≤ anΣ temporar∙ worδ areas.
-
-
-
- 4.8 LRUNZ Command
-
- Thσá LRUN┌á commanΣ wa≤ createΣ fo≥ thosσ oµ u≤á wh∩á havσ ì
- lot≤á oµá commanΣ file≤ wσ likσ t∩ kee≡ oε linσá al∞á thσá time« ì
- Wha⌠ usuall∙ happen≤ i≤ tha⌠ somσ nicσ littlσ .CO═ file≤ arσ ver∙ ì
- smal∞á programs¼á bu⌠ havinτ ß lo⌠ oµ theφ oε disδ eat≤ u≡ filσ ì
- spacσá a⌠ aε alarminτ ratσ duσ t∩ thσ fixeΣ CP/═ blocδá size« ì
- Pu⌠á theφ al∞ int∩ ß librar∙ calleΣ COMMAND.LB╥ usinτá LU«á Yo⌡ ì
- caε theε ruε an∙ .CO═ filσ directl∙ froφ thσ librar∙ b∙ saying:
-
- LRUNZ <followed by normal command line just like always>
-
- LRUN┌ i≤ deriveΣ froφ Gary'≤ LRUN« Stil∞ basicall∙ thσ samσ ì
- program¼á LRUN┌á add≤ ZCPR2-specifiπ features¼á iε particula≥ thσ ì
- abilit∙ t∩ searcΦ fo≥ thσ LB╥ filσ alonτ thσ Externa∞á Path«á Iε ì
- thi≤á way¼á LRUN┌á caε bσ useΣ a≤ aε ExtendeΣ CommanΣá Processor¼ ì
- and¼á wheε invoked¼á wil∞ searcΦ fo≥ COMMAND.LB╥ (o≥ such⌐á alonτ ì
- thσá patΦ anΣ extrac⌠ thσ CO═ filσ froφ thσ firs⌠ COMMAND.LB╥á i⌠ ì
- finds.
-
- LRUNZ can be invoked by command line of the following forms:
-
- LRUNZ // or LRUNZ <-- Print Help
- LRUNZ -lbrfile cmdline <-- Run command from lbr
- LRUNZ cmdline <-- Run command from
- default COMMAND.LBR
-
-
- The full syntax of LRUNZ is:
-
- LRUNZ [-<lbrfile>] <commember> [<parameters>]
-
-
- Where:
-
- <lbrfile╛á i≤á thσ librar∙ t∩ bσá searched«á Thσá squarσ ì
- bracket≤á arounΣá -<lbrfile╛ indicatσ i⌠ i≤á optional«á Thσá - ì
- characte≥ tell≤ LRUN┌ tha⌠ wha⌠ follow≤ i≤ ß librar∙ name«á I⌠ i≤ ì
- no⌠ aε actua∞ par⌠ oµ thσ name« Don'⌠ leavσ ß spacσ afte≥ thσ -« ì
- Iµá thσá firs⌠ paramete≥ doesn'⌠ begiε witΦá - theεá thσá defaul⌠ ì
- librar∙ COMMAND.LB╥ i≤ used«á Iµ ß drivσ speπ i≤ given¼ sucΦ ì
- a≤ B:¼á theε onl∙ tha⌠ drivσ i≤ searcheΣ fo≥ thσ library« Iµ n∩ ì
- drivσ speπ i≤ given¼ thσ curren⌠ drivσ i≤ searcheΣ first¼ anΣ iµ ì
- n∩á librar∙ oµ tha⌠ namσ i≤ found¼á thσ A║á drivσ i≤á searcheΣ ì
- beforσá givinτ up«á Iµ ß name¼á bu⌠ n∩ typσ i≤ entered¼á .LB╥á i≤ ì
- assumed.
-
- <commember╛á i≤á thσ namσ oµ thσ commanΣ t∩á bσá run«á N∩ ì
- drivσ speπ i≤ useΣ here«á Thσ typσ default≤ t∩ .CO═ anΣ neeΣ no⌠ ì
- bσ entered.
-
- <parameters╛á i≤á ßá thσ norma∞ (possibl∙ empty⌐á lis⌠á oµ ì
- parameter≤á whicΦá thσ .CO═ filσ expect≤ t∩á finΣá oεá thσ ì
- commanΣá linσá wheε i⌠ i≤ run«á Thi≤ lis⌠ i≤ parseΣá t∩á thσ ì
- requireΣá filσá contro∞á block≤ anΣ commanΣ linσá areßá beforσ ì
- executioεá begins¼á s∩á thσ prograφ wil∞ no⌠ bσá awarσá tha⌠ ì
- anythinτá cutσá i≤ goinτ on«á (Thank≤ t∩ Roε Roεá Fowle≥á fo≥ ì
- supplyinτ thσ codσ whicΦ make≤ thi≤ possible.)
-
-
-
- LRUNZ EXAMPLES
-
- LRUNZ ED FOO.BAR
- thσá filσá ED.CO═ i≤ searcheΣ fo≥ iεá COMMAND.LB╥á oεá thσ ì
- curren⌠ drive¼ o≥ thσ A║ drive« Iµ found¼ ED.CO═ i≤ loadeΣ froφ ì
- thσ library¼ anΣ FOO.BA╥ i≤ passeΣ t∩ i⌠ a≤ ß parameter.
-
- LRUNZ -C:SPECIAL LU -O COMMAND -A A:*.COM
- thσá filσá LU.CO═á i≤ searcheΣ fo≥ iε SPECIAL.LB╥ oεá thσá ├ ì
- drive«á Iµá found¼á LU.CO═ i≤ loaded¼á anΣ thσ string≤á -O¼ ì
- COMMAND¼ -A¼ anΣ *.CO═ arσ passeΣ t∩ i⌠ a≤ parameters.
-
- LRUNZ - -ZIP
- thσá filσá -ZIP.CO═ i≤ searcheΣ fo≥ iεá COMMAND.LB╥á oεá thσ ì
- curren⌠ drive¼á o≥ thσ A║ drive« Iµ found¼ -ZIP.CO═ i≤ loadeΣ anΣ ì
- executeΣá witΦ ß blanδ paramete≥ list«á Sincσ -ZIP.CO═á begin≤ ì
- witΦ ß -¼á thσ extrß - followeΣ b∙ ß spacσ wa≤ needeΣ t∩ ac⌠ a≤ ß ì
- place-holde≥ fo≥ thσ librar∙ name« Comparσ with:
-
-
- LRUNZ -ZIP
- thσá librar∙á -ZIP.LB╥ i≤ lookeΣ for¼á bu⌠á nothinτá elsσ ì
- happens¼ becausσ n∩ commanΣ wa≤ specified.
-
- LRUNZ
- witΦá n∩á parameter≤ a⌠ all¼á cause≤ ß screeεá oµá hel≡ ì
- informatioε t∩ bσ displayeΣ a≤ ß memor∙ refresher.
-
-
-
- 4.9 LDIRZ Command
-
- LDIR┌ print≤ ß sorteΣ director∙ oµ thσ defaul⌠ librar∙ file« ì
- Thσá printou⌠á give≤á thσ name≤ oµ thσ selecteΣ file≤á anΣá thei≥ ì
- sizes«á I⌠ i≤ sorteΣ alphabeticall∙ b∙ filσ namσ anΣ type«á Tw∩ ì
- option≤ arσ permitted¼á anΣ the∙ arσ thσ namσ oµ thσ librar∙ filσ ì
- (caε bσ specifieΣ b∙ lbrfile¼á iε whicΦ casσ lbrfile.LB╥ wil∞á bσ ì
- accessed¼á o≥á b∙á ß ful∞ filename.typ⌐ anΣ thσ filσá speπá (wilΣ ì
- card≤ arσ OK)« Form≤ oµ thσ LDIR┌ commanΣ are:
-
- LDIRZ // <-- Print Help
- LDIRZ <-- All Files
- LDIRZ -lbrfile fn.t <-- Selected Files from Library
- LDIRZ filename.typ <-- Selected Files
-
-
-
- 4.10 LRUNZ as an Extended Command Processor Under ZCPR2
-
- Iµá thσá reade≥ caε recall¼á commanΣ processinτ unde≥á ZCPR▓ ì
- follows these steps:
-
- 1. ZCPR2 receives a command
-
- 2«á ZCPR▓á parse≤ thσ command¼á determine≤ iµ i⌠ i≤á ß ì
- ZCPR2-resident command and executes it if it is
-
- 3«á Iµá not¼á ZCPR▓ searche≤ alonτ thσá command-searcΦ ì
- patΦá fo≥ ß CO═ filσ whicΦ ha≤ thσ samσ namσ a≤ thσá command╗á iµ ì
- found, it is loaded and executed
-
- 4«á Iµ thi≤ fails¼á ZCPR▓ ma∙ eithe≥ searcΦ alonτá thσ ì
- command-searcΦá patΦá o≥á g∩á directl∙ t∩ thσ roo⌠á oµá thσá patΦ ì
- lookinτá fo≥á aε ExtendeΣ CommanΣá Processor╗á iµá found¼á i⌠á i≤ ì
- loaded¼á passeΣá thσ commanΣ linσ a≤ thσ use≥ presenteΣá it¼á anΣ ì
- executed; if not, an error message is given
-
- LRUN┌á i≤á aεá excellen⌠ candidatσ fo≥ aεá ExtendeΣá CommanΣ ì
- Processor«á Iµá thσ commanΣ t∩ bσ executeΣ i≤ TEST.COM¼á anΣá i⌠ ì
- take≤á tex⌠á a≤ aε argument¼á theε thσ commanΣá linσá t∩á executσ ì
- TEST.COM under ZCPR2 would be:
-
- TEST text
- èIfá TEST.CO═á i≤ iε COMMAND.LB╥ (o≥ such)¼á thσ commanΣá linσá t∩ ì
- execute the same file using LRUNZ would be:
-
- LRUNZ TEST text
-
- Thi≤á latte≥ commanΣ i≤ simulateΣ b∙ ZCPR▓ wheε i⌠ fail≤ t∩á finΣ ì
- thσá CO═á file«á Thσá namσá oµ thσá ExtendeΣá CommanΣá Processo≥ ì
- (recommended⌐á i≤ CMDRUN¼á and¼á b∙ renaminτ LRUN┌ t∩á CMDRU╬á o≥ ì
- makinτá ßá cop∙ oµ LRUN┌ a≤ CMDRUN¼á LRUN┌ become≤á thσá ExtendeΣ ì
- CommanΣ Processor.
-
- LDIR┌á fit≤ iε nicel∙ witΦ thi≤ scheme«á COMMAND.LB╥ caε bσ ì
- kep⌠á a⌠ thσ ROO╘ alonτ witΦ LRUN┌ anΣá LDIRZ¼á anΣá LRUNZ¼á wheε ì
- executed¼áá wil∞áá g∩á t∩á thσá ROO╘á lookinτá fo≥á anΣáá findinτ ì
- COMMAND.LBR¼á a⌠á whicΦ poin⌠ i⌠ extract≤ thσ requireΣ CO═á file« ì
- LDIRZ¼á wheεá executed¼á wil∞á searcΦá alonτá thσá patΦá fo≥á thσ ì
- COMMAND.LB╥ file¼ and¼ hopefully¼ finΣ i⌠ a⌠ thσ ROO╘ anΣ extrac⌠ ì
- the information (file names) requested by the user.
-
- BotΦá LRUN┌ anΣ LDIR┌ caε bσ installeΣ b∙ GENIN╙ anΣ bσá se⌠ ì
- t∩á looδá fo≥ thσ samσ COMMAND.LB╥ filσ a≤ wel∞ a≤ bσ tolΣá wherσ ì
- the path they are to follow is located.
-
- .fo Section 5 - Menu Page #
-
- 5.0 Menu
-
- 5.1 Overview of MENU
-
- MEN╒á i≤ thσ ZCPR▓ Menu-OrienteΣ CommanΣá Preprocessor«á I⌠ ì
- act≤á a≤á ß front-enΣ t∩ ZCPR2¼á providinτ ßá menu-orienteΣá use≥ ì
- interfacσá t∩á ZCPR2«á It≤á functioε caε bσ representeΣá b∙á thσ ì
- following diagram:
- ------ ------ ------ ------
- |M | |Z | |B | |P |
- User | E | | C | | D | | g |
- Menu ---->| N |--->| P |--->| O |--->| m |
- Command | U| | R| | S| | s|
- | | | 2| | | | |
- ------ ------ ------ ------
-
- Thσ "Use≥ Men⌡ Commandó i≤ ß singlσ characte≥ tha⌠ thσá use≥ ì
- strike≤á whicΦ instruct≤ MEN╒ t∩ perforφ ß function«á Oncσá MEN╒ ì
- begin≤á processinτá thi≤ function¼á i⌠ build≤ ß commanΣ linσá fo≥ ì
- ZCPR2¼á optionall∙á askinτ thσ use≥ fo≥ furthe≥ inpu⌠ (sucΦ a≤á ß ì
- filσá name)¼á anΣ theε passe≤ thσ commanΣ linσ t∩ ZCPR▓á vißá thσ ì
- Multiplσ CommanΣ Linσ Buffer«á ZCPR▓ theε run≤ thσ commanΣ line¼ ì
- and, when completed, returns to MENU.
-
- Hence¼á iεá ß nutshell¼á MEN╒ build≤ commanΣ line≤ baseΣá oε ì
- simplσá inpu⌠ froφ thσ user«á Thσ use≥ neeΣ neve≥ kno≈ wha⌠á thσ ì
- actua∞ commanΣ linσ is« Thσ commanΣ linσ itselµ i≤ alway≤ oµ thσ ì
- form:
-
- <command> <optional user input>;MENU <menu options>
-
- A≤ aε example¼ ß commanΣ buil⌠ b∙ MEN╒ t∩ ruε XDI╥ witΦ use≥ ì
- inpu⌠á fo≥á ßá filσá namσá specification¼á coulΣá looδá likσá thσ ì
- following:
-
- XDIR <user input>;MENU
-
-
- Wheε MEN╒ i≤ executed¼ i⌠ look≤ fo≥ thσ filσ MENU.CP╥ iε thσ ì
- curren⌠á directory«á Iµá i⌠ find≤ one¼á i⌠ load≤ i⌠á anΣá begin≤ ì
- processing. If it does not find one, it simply exits.
-
- Thσá MENU.CP╥á filσá caεá contaiεá u≡ t∩á 25╡á menu≤á t∩á bσ ì
- processeΣá b∙ MENU«á Thσ defaul⌠ conditioε fo≥ MEN╒ i≤ t∩á begiε ì
- processinτá a⌠á thσá firs⌠ men⌡á iεá MENU.CPR¼á bu⌠á option≤á arσ ì
- availablσá t∩á selec⌠á anothe≥ menu«á Iεá particular¼á thσá Men⌡ ì
- Option≤ are:
-
- W - Wait for User to Strike a Key before beginning
- nn - Begin Processing at Menu nn
-
-
- The full MENU command line is structured as follows:
-
- MENU [W][nn]
-
- Option≤á arσá encloseΣá iε [▌ bu⌠ mus⌠ bσá placeΣá iεá thσá orde≥ ì
- specified, i.e., W, if present, must be first.
-
- Iµ thσ Wai⌠ Optioε i≤ used¼á i⌠ i≤ alway≤ first« Thσ numbe≥ ì
- follow≤ Wai⌠ immediately¼á anΣ therσ arσ n∩ space≤ betweeεá them║
-
- MEN╒ ╫ <-- Wai⌠ anΣ Star⌠ a⌠ Firs⌠ Menu
- MENU W4 <-- Wait and Start at 4th Menu
- MENU 4 <-- Start at 4th Menu
-
- Thσ use≥ anΣ men⌡ programme≥ neeΣ no⌠ bσ concerneΣ witΦ thi≤ ì
- mos⌠ oµ thσ time« Menu≤ shoulΣ bσ se⌠ u≡ t∩ star⌠ witΦ thσ firs⌠ ì
- men⌡ b∙ default¼á s∩ tha⌠ onl∙ thσ commanΣ "MENUó i≤ necessar∙ t∩ ì
- invokσá thσ desireΣ menu«á Thσ option≤ describeΣ abovσ arσá useΣ ì
- primaril∙á b∙ MEN╒ itselµ wheε i⌠ build≤ thσ commanΣ linσ s∩ tha⌠ ì
- thσá use≥ wil∞ returε witΦ aε optiona∞ wai⌠ anΣ t∩ thσ men⌡á tha⌠ ì
- hσá jus⌠á camσ from«á Hence¼á iµ thσ use≥ wa≤ iε thσá 4tΦá menu¼ ì
- selecteΣá thσ ╪ commanΣ (fo≥ XDIR)¼á anΣ thσ Men⌡ Programme≥á haΣ ì
- se⌠ u≡ thσ XDI╥ commanΣ t∩ wai⌠ oε returε s∩ thσ use≥ coulΣá takσ ì
- hi≤á timσá anΣá looδ a⌠ thσ director∙ display¼á theεá MEN╒á woulΣ ì
- appenΣá thσ commanΣ "MEN╒ W4ó t∩ thσ enΣ oµ thσ commanΣá linσá i⌠ ì
- builds.
-
- MEN╒á itselµá i≤ ß CO═ file¼á likσ an∙ othe≥á prograφá unde≥ ì
- ZCPR2« Unlikσ mos⌠ othe≥ programs¼ however¼ i⌠ generate≤ commanΣ ì
- line≤á t∩ bσ executeΣ b∙ ZCPR▓ anΣ append≤ ß MEN╒ commanΣ t∩á thσ ì
- enΣ oµ eacΦ oµ thσ commanΣ line≤ i⌠ generate≤ s∩ tha⌠ ZCPR▓á wil∞ ì
- return to MENU when finished. In this way a loop is set up:
-
- -->--+->- MENU ->- ZCPR2 ->-+
- ^ v
- | |
- +-<- Command Line -<---+
-
- Onl∙á MEN╒á itselµ caε terminatσ thi≤á loop«á Iµá thσá MEN╒ ì
- programme≥á wishes¼á hσ caε se⌠ u≡ thσ MENU.CP╥ filσ s∩ tha⌠ thi≤ ì
- loo≡á wil∞ neve≥ bσ exited¼á o≥ hσ caε se⌠ u≡ thσ filσá t∩á allo≈ ì
- anyonσá t∩ exi⌠ a⌠ an∙ timσ o≥ jus⌠ ß specia∞ persoε wh∩ know≤á ß ì
- passworΣá t∩á exi⌠á wheεá hσá wishe≤á to«á Therσá i≤á ßá lo⌠á oµ ì
- flexibilit∙á designeΣ int∩ thσ system¼á anΣ i⌠ wil∞ bσá discusseΣ ì
- later in the section on programming MENU.CPR files.
-
- Iεá ßá nutshell¼á then¼á ßá MENU.CP╥ filσ caε bσ se⌠á u≡á t∩ ì
- executσ an∙ ZCPR▓ commanΣ o≥ sequencσ oµ commands«á Thσ MENU.CP╥ ì
- filσ caε als∩ bσ se⌠ u≡ t∩ no⌠ allo≈ thσ use≥ t∩ leavσá MENU¼á t∩ ì
- allo≈á hiφ t∩ leavσ MEN╒ a⌠ will¼á o≥ t∩ allo≈ hiφ t∩ leavσá MEN╒ ì
- onl∙ iµ hσ know≤ ß password.
-
-
- Thi≤á HEL╨ filσ i≤ divideΣ int∩ tw∩ basiπ parts«á Thσá inf∩ ì
- section≤á oεá "Usinτá MENUó anΣ "Summar∙ oµá MEN╒á Commandsóá arσ ì
- designeΣá t∩á bσá reaΣ b∙ ß persoε wantinτ t∩ usσá MEN╒á bu⌠á no⌠ ì
- wantinτá t∩á learε ho≈ MEN╒ work≤ o≥ ho≈ t∩á prograφá it«á Thesσ ì
- section≤á describσ ho≈ t∩ movσ froφ onσ men⌡ t∩ another¼á ho≈á t∩ ì
- issuσá MEN╒á commands¼á anΣ ho≈ t∩ leavσ MEN╒ iµá thσá optioεá i≤ ì
- presenteΣ t∩ him.
-
- Thσáá othe≥áá section≤á oµá thi≤á HEL╨á filσá describσáá thσ ì
- programminτá aspect≤á oµ MEN╒ anΣ arσ intendeΣ t∩ bσ useΣá a≤á aε ì
- onlinσá referencσá fo≥ thσ MEN╒á programmer«á Thσá MEN╒á commanΣ ì
- programminτá summar∙á i≤ especiall∙ usefu∞ iε tha⌠ i⌠ provide≤á ß ì
- summar∙á oµ thσ command≤ whicΦ thσ MEN╒ programme≥ ma∙á issuσá t∩ ì
- MEN╒ withiε ß MENU.CPR.
-
- Using MENU
-
- When you first invoke MENU, one of three things will happen:
-
- 1⌐á ┴á MEN╒á wil∞ appea≥ anΣ bσ pageΣ u≡á t∩á fil∞á thσ
- screen╗ ß commanΣ promp⌠ wil∞ appea≥ a⌠ thσ bottoφ
- oµ thσ menu
-
- 2⌐á ┴ MEN╒ wil∞ appea≥ anΣ no⌠ bσ pageΣ u≡ t∩ fil∞á thσ
- screen╗ ß commanΣ promp⌠ wil∞ appea≥ a⌠ thσ bottoφ
- oµ thσ menu
-
- 3⌐á ┴ commanΣ promp⌠ wil∞ appea≥ witΦ n∩ men⌡ (thi≤á i≤
- called the Expert Mode)
-
- Iµá a⌠ an∙ timσ you≥ Men⌡ Displa∙ i≤ garbleΣ o≥ yo⌡ wan⌠á t∩ ì
- seσ thσ curren⌠ Men⌡ (a≤ sometime≤ happen≤ wheε yo⌡ arσ iε Exper⌠ ì
- Mode)¼ jus⌠ strikσ thσ RETUR╬ key« Thσ RETUR╬ ke∙ refreshe≤ you≥ ì
- menu at all times.
-
- Thσá promp⌠ whicΦ appear≤ a⌠ thσ bottoφ oµ you≥ Men⌡ displa∙ ì
- has the following general form:
-
- Command (<CR>=Menu,^C=ZCPR2,*=1st Menu,<=Prev Menu,>=Next Menu) -
-
- A≤ ╔ mentioneΣ iε thσ introduction¼á therσ caε bσ u≡ t∩á 25╡ ì
- menu≤á iε onσ MENU.CP╥ file«á Thσ MEN╒ commanΣ promp⌠ varie≤á t∩ ì
- reflec⌠ this« Fo≥ instance¼ iµ onl∙ onσ Men⌡ wa≤ presen⌠ anΣ yo⌡ ì
- werσ no⌠ giveε thσ optioε t∩ abor⌠ ou⌠ oµ MEN╒ t∩ ZCPR2¼ theε thσ ì
- Men⌡ CommanΣ promp⌠ woulΣ takσ it≤ simples⌠ form¼ lookinτ like:
-
- Command (<CR>=Menu) -
-
- Yo⌡á caεá strikσ thσ RETUR╬ ke∙ a⌠ thi≤ timσ t∩ refresΦá thσ ì
- Men⌡á Displa∙ o≥ yo⌡ caε strikσ thσ characte≥ oµ ßá Men⌡á Option« ì
- Thesσá arσ you≥ onl∙ choices¼á anΣ strikinτ ß characte≥ whicΦá i≤ ì
- no⌠á thσá RETUR╬á ke∙á o≥ ß men⌡ optioε result≤á iεá thσá messagσ ì
- "Invalid Command" being displayed.
-
- Iµá thσá MENU.CP╥ programme≥ gavσ yo⌡ thσ optioε t∩ exi⌠á t∩ ì
- ZCPR▓ anΣ therσ i≤ onl∙ onσ Men⌡ iε thσ MENU.CP╥ file¼á theε you≥ ì
- commanΣ linσ wil∞ looδ likσ this:
-
- Command (<CR>=Menu,^C=ZCPR2) -
-
- Yo⌡á no≈ havσ thσ additiona∞ optioε oµ abortinτ t∩ ZCPR▓á b∙ ì
- strikinτ Control-├ (holΣ dowε oε thσ Control¼á o≥ CTRL¼á ke∙á anΣ ì
- strikσá thσá lette≥ C)«á Thi≤ wil∞ returε yo⌡ t∩ ZCPR▓ anΣá exi⌠ ì
- MENU¼á leavinτ yo⌡ witΦ thσ abilit∙ t∩ issuσ an∙ availablσá ZCPR▓ ì
- command.
-
- Onσ brieµ notσ oε optioε letter≤ beforσ goinτ on« Iµ onσ oµ ì
- you≥ option≤ i≤ ß lette≥ iε thσ rangσ froφ ┴ t∩ Z¼á theε casσá i≤ ì
- no⌠á significant¼á anΣá yo⌡á caε invokσ thσá optioεá A¼á say¼á b∙ ì
- striking an upper- or lower-case A.
-
- Iµá therσ i≤ morσ thaε onσ men⌡ iε you≥ MENU.CP╥á file¼á thσ ì
- commanΣá linσ option≤ becomσ slightl∙ morσ complex¼á bu⌠ the∙ arσ ì
- stil∞ quitσ eas∙ t∩ follow.
-
- Iε thσ followinτ examples¼á ╔ aφ assuminτ tha⌠ thσ optioε t∩ ì
- exi⌠ t∩ ZCPR▓ i≤ off¼ s∩ thσ "^C=ZCPR2ó optioε wil∞ NO╘ appear.
-
- Iµ yo⌡ arσ a⌠ thσ firs⌠ men⌡ iε thσ file¼á you≥ commanΣ linσ ì
- wil∞ looδ likσ thσ following:
-
- Command (<CR>=Menu,>=Next Menu) -
-
- T∩ advancσ t∩ thσ nex⌠ menu¼á yo⌡ caε strikσ thσ ">ó o≥á thσ ì
- ".ó character«á Oε mos⌠ keyboards¼á ">ó i≤ thσ shif⌠ oµ thσ "."¼ ì
- s∩á MEN╒ allow≤ yo⌡ t∩ movσ easil∙ withou⌠ havinτ t∩ worr∙á abou⌠ ì
- shifting the keyboard all the time.
-
- Iµá yo⌡ arσ a⌠ thσ las⌠ men⌡ iε thσ file¼á you≥ commanΣ linσ ì
- will look like the following:
-
- Command (<CR>=Menu,*=1st Menu,<=Prev Menu) -
-
- Thi≤ allow≤ yo⌡ t∩ strikσ thσ "*ó characte≥ t∩ jum≡ bacδá t∩ ì
- thσá firs⌠á men⌡ iε you≥ MENU.CP╥ file«á Iµ "<ó o≥ ",ó i≤á stucδ ì
- ("<ó i≤ usuall∙ thσ shif⌠ oµ thσ ",")¼á theε yo⌡ wil∞ bacδ u≡ onσ ì
- menu to the previous menu in the file.
-
- Iµá yo⌡á arσ somewherσ iε thσ middlσ oµ thσá MENU.CP╥á file¼ ì
- you≥ commanΣ linσ will¼ a≤ onσ woulΣ expect¼ looδ likσ this:
-
- Command (<CR>=Menu,*=1st Menu,<=Prev Menu,>=Next Menu) -
-
- Again¼á "*óá wil∞ g∩ directl∙ t∩ thσ firs⌠ menu¼á "<ó o≥ ",ó ì
- wil∞ g∩ t∩ thσ previou≤ menu¼á anΣ ">ó o≥ ".ó wil∞ g∩ t∩ thσ nex⌠ ì
- menu. Striking the RETURN key will refresh the menu display.
-
-
- Onσá las⌠á optioε yo⌡ havσ unde≥ MEN╒ involve≤ acces≤á t∩á ß ì
- Systeφ Menu«á Thi≤ men⌡ i≤ specia∞ iε tha⌠ therσ i≤ onl∙ onσ wa∙ ì
- to get to it -- via the "$" command.
-
- Thσ Systeφ Men⌡ i≤ intendeΣ t∩ givσ privelegeΣ user≤á acces≤ ì
- t∩á specia∞ command≤ tha⌠ thσ res⌠ oµ thσ user≤ can'⌠ run«á Iµ ß ì
- Systeφá Men⌡ i≤ available¼á MEN╒ wil∞ responΣ t∩ thσ "$óá commanΣ ì
- with the prompt:
-
- Pass?
-
- Yo⌡ arσ giveε onσ chancσ t∩ typσ iε thσ correc⌠ passworΣá t∩ ì
- ente≥ thσ Systeφ Menu«á Iµ yo⌡ arσ wrong¼ thσ messagσ "Pas≤ Erró ì
- wil∞á appea≥ anΣ yo⌡ wil∞ bσ returneΣ t∩ thσ men⌡ yo⌡ camσá from« ì
- Iµ yo⌡ arσ correct¼á yo⌡ wil∞ ente≥ thσ Systeφ Menu« Physically¼ ì
- thσá Systeφá Men⌡ i≤ alway≤ thσ las⌠ men⌡ iε thσá file¼á anΣá it≤ ì
- command prompt is:
-
- Command (<CR>=Menu,*=1st Menu,<=Prev Menu) -
-
- Iµ yo⌡ arσ a⌠ thσ men⌡ jus⌠ beforσ thσ Systeφ Menu¼á thσ ">ó ì
- wil∞á no⌠á functioεá t∩ allo≈ yo⌡ t∩ ente≥á it¼á eveεá th∩á therσ ì
- technicall∙ i≤ ß "Nex⌠ Menu"« Thσ ">ó optioε iε thσ commanΣ linσ ì
- wil∞á no⌠ appear«á A≤ ╔ stateΣ before¼á thσ onl∙ wa∙ t∩ ente≥á ß ì
- System Menu is thru the "$" command.
-
- So¼ iε summary¼ movinτ abou⌠ withiε MEN╒ i≤ quitσ easy« "*ó ì
- move≤ yo⌡ t∩ thσ firs⌠ menu¼ "<ó t∩ thσ previou≤ menu¼ ">ó t∩ thσ ì
- nex⌠ menu¼ anΣ "$ó t∩ thσ Systeφ Menu.
-
-
-
- 5.2 Summary of MENU Commands
-
- The full Menu Command Line looks like the following:
-
- Command (<CR>=Menu,^C=ZCPR2,*=1st Menu,<=Prev Menu,>=Last Menu) -
-
- The Menu Commands are:
-
- Command Function
-
- <CR> Refresh Menu Display (RETURN Key)
- ^C Exit to ZCPR2 (Control-C)
- * Jump to the First Menu
- < or , Jump to the Previous Menu
- > or . Jump to the Next Menu
- $ Jump to the System Menu (Password Required)
- other Menu Option or Invalid Command; letters are
- automatically capitalized, so a=A
-
-
- 5.3 Programming MENU.CPR Files
-
- Thσ MENU.CP╥ filσ i≤ simpl∙ ß tex⌠ filσ whicΦ ma∙ bσ createΣ ì
- witΦá an∙ conventiona∞ CP/═á editor¼á includinτá WordStar«á MEN╒ ì
- ignore≤á thσ Mos⌠ Significan⌠ Bi⌠ oµ al∞ bytes¼á s∩ editor≤á likσ ì
- WordStar¼ whicΦ occasionall∙ se⌠ thi≤ bit¼ caε bσ used.
-
- Al∞á MENU.CP╥á file≤ havσ thσ samσ genera∞á structure«á Thσ ì
- firs⌠á linσ i≤ eithe≥ ß globa∞ optioε linσ o≥ thσ beginninτ oµá ß ì
- men⌡á display«á Iµá ß globa∞ optioε line¼á i⌠á begin≤á witΦá thσ ì
- characte≥á "-"¼á anΣá thi≤ characte≥ i≤ immediatel∙á followeΣá b∙ ì
- globa∞á optioε characters«á Thσ globa∞ optioε line¼á theεá look≤ ì
- likσ this:
-
- -options
-
-
- Afte≥ thσ globa∞ optioε line¼á iµ any¼ come≤ thσ firs⌠ menu« ì
- Each menu is structured as follows:
-
- #options
- <Text of Menu Display>
- #
- menu commands
-
- The following are two sample Menu File structures:
-
- -options #options
- #options <Text>
- <Text> #
- # commands
- commands ##
- #options
- <Text>
- #
- commands
- ##
-
-
- Therσ arσ onl∙ fivσ optioε characters«á Iε usinτ them¼ casσ ì
- is not significant. These option characters are:
-
- Option Function
- C Display Command Line to User
- D Display Menu to User
- P Page Out Menu Display
- X Allow User to Exit to CP/M
-
- Thσá ├ optioε display≤ thσ commanΣ linσ buil⌠ b∙ MEN╒ t∩ thσ ì
- user«á Thi≤ optioε i≤ primaril∙ intendeΣ fo≥ debugginτ purposes¼ ì
- t∩ allo≈ thσ programme≥ t∩ seσ wha⌠ command≤ arσ beinτ built« I⌠ ì
- i≤ instructivσ t∩ thσ user¼ however¼ anΣ ma∙ bσ employeΣ fo≥ tha⌠ ì
- purpose as well.
- è Thσ ─ optioε display≤ thσ men⌡ t∩ thσ user«á Iµ thσ displa∙ ì
- functioεá i≤á no⌠á turneΣ on¼á wσ arσ iεá Exper⌠á Mode¼á anΣá thσ ì
- command≤á arσá availablσ withou⌠á ßá men⌡á display«á RETURN¼á oµ ì
- course, can be used to invoke the display if necessary.
-
- Thσá ╨á optioε page≤ ou⌠ thσ men⌡ displa∙ iµ i⌠ i≤á invoked« ì
- Iµá thσ pagσ functioε i≤ engaged¼á theε thσ MEN╒ prograφá output≤ ì
- <CRLF╛á combination≤á unti∞á 2┤ line≤ havσ beeεá printeΣá oεá thσ ì
- screen« Thi≤ i≤ somewha⌠ morσ attractivσ anΣ eliminate≤ olΣ tex⌠ ì
- froφ previou≤ commands¼á allowinτ thσ use≥ t∩ concentratσ oεá hi≤ ì
- curren⌠ se⌠ oµ options«á However¼á i⌠ i≤ annoyinτ iµ thσ use≥ i≤ ì
- accessinτ thσ system¼á say¼ a⌠ 30░ bauΣ viß ß dia∞ up« I⌠ i≤ fo≥ ì
- thi≤á reasoεá tha⌠ ╔ gavσ thσ MEN╒ programme≥ thσ optioε t∩á turε ì
- this option off.
-
- Finally¼ thσ ╪ optioε enable≤ thσ facilit∙ whicΦ permit≤ thσ ì
- user to type ^C and return to ZCPR2.
-
- Wheε MEN╒ firs⌠ come≤ up¼ al∞ option≤ arσ turneΣ off:
-
- C is OFF -- no command display to user
- D is OFF -- no menu display to user
- P is OFF -- no menu display paging
- X is OFF -- user cannot exit to CP/M
-
- Thσ globa∞ option≤ line¼á which¼á iµ present¼á i≤ thσá firs⌠ ì
- linσá oµ thσ file¼á turn≤ oε thesσ option≤ fo≥ thσ coursσ oµá thσ ì
- session in general. That is, if a global options line like
-
- -DPx
-
- i≤ useΣ (notσ casσ i≤ insignificant)¼á theε men⌡ display¼ paging¼ ì
- anΣá exi⌠ t∩ ZCPR▓ wil∞ bσ availablσ fo≥ al∞ menus«á Thσá globa∞ ì
- options line affects all menus.
-
- Thσá globa∞á option≤á line¼á then¼á turn≤ oεá thσá indicateΣ ì
- option≤ fo≥ al∞ menu≤ iε general«á However¼ thσ samσ option≤ ma∙ ì
- bσ presenteΣ oε thσ firs⌠ linσ oµ eacΦ men⌡ immediatel∙ afte≥ thσ ì
- "#óá characte≥ t∩ temporaril∙ complemen⌠ thσ curren⌠á optioεá fo≥ ì
- onl∙ tha⌠ menu.
-
- Iµ aε optioε i≤ NO╘ includeΣ iε thσ globa∞ option≤ line¼á i⌠ ì
- i≤ turneΣ OF╞ fo≥ al∞ menu≤ iε general« Thσ default≤ selecteΣ b∙ ì
- usinτá thσ globa∞ option≤ linσ arσ overriddeε oε ß per-men⌡ basi≤ ì
- b∙ thσ loca∞ men⌡ options.
-
-
- Example:
-
- -dpx
- #x
- This menu is displayed and paged, but no
- exit to ZCPR2 is permitted
- #
- commands
- #dx
- This menu is not displayed and the user may not
- exit to ZCPR2.
- #
- commands
- #c
- Thi≤ men⌡ i≤ displayed¼ paged¼ anΣ thσ use≥ ma∙
- exit to ZCPR2. Additionally, the MENU-generated
- commands are printed to the user.
- #
- commands
- ##
-
-
- So¼á an∙á optioε tha⌠ ma∙ appea≥ oε thσ globa∞ option≤á linσ ì
- ma∙ als∩ appea≥ oε thσ option≤ linσ fo≥ ß particula≥á menu«á Thσ ì
- reverse¼á however¼á i≤ no⌠ true«á Thσ men⌡ option≤ linσ support≤ ì
- onσá additiona∞á option¼á viz«á "$"«á Thi≤ optioεá declare≤á thσ ì
- following menu to be a System Menu.
-
- Iεá programminτ ß MENU.CP╥ file¼á yo⌡ MUS╘ placσ thσá Systeφ ì
- Men⌡ a≤ thσ las⌠ men⌡ iε thσ file« T∩ d∩ otherwisσ i≤ flaggeΣ a≤ ì
- aε error« Thσ followinτ illustrate≤ ß MENU.CP╥ filσ containinτ ß ì
- Systeφ Menu:
-
- -dp
- #
- Thi≤ men⌡ i≤ displayeΣ anΣ paged¼ bu⌠ thσ use≥ ma∙
- not exit to ZCPR2.
- #
- commands
- #$x
- This is a System Menu, and it is displayed, paged,
- and the user may exit to ZCPR2.
- ##
-
-
- Iµá ßá men⌡á i≤á ßá Systeφá Menu¼á thσá "$óá characte≥á mus⌠ ì
- immediatel∙ follo≈ thσ "#"« Iε thσ casσ oµ thσ lette≥ option≤ iε ì
- botΦá thσá globa∞á anΣ loca∞ cases¼á thσ orde≥ i≤á no⌠á importan⌠ ì
- ("dpxó mean≤ thσ samσ a≤ "xpd").
-
- GENIN╙ i≤ useΣ t∩ definσ thσ passworΣ useΣ t∩ ente≥ ß Systeφ ì
- Menu«á Thi≤ i≤ thσ PrivilegeΣ Use≥ PassworΣ iε thσ GENIN╙á Menu« ì
- Notσ tha⌠ thi≤ passworΣ caε bσ upper- anΣ lower-case¼ anΣ casσ i≤ ì
- significant.è
- Thi≤á informatioε sectioε ha≤ describeΣ thσ structurσ oµ thσ ì
- MENU.CP╥ filσ anΣ ho≈ t∩ se⌠ u≡ a≤ man∙ menu≤ a≤á desired«á Wha⌠ ì
- ha≤á no⌠á beeε discusseΣ i≤ thσ naturσ oµ thσ command≤á followinτ ì
- the menu displays. This is discussed in the next section.
-
-
- 5.4 MENU.CPR Commands
-
- Thσá command≤á iε thσ MENU.CP╥ filσá follo≈á arσá relativel∙ ì
- simplσ structure« EacΦ commanΣ occupie≤ onl∙ onσ line¼ anΣ blanδ ì
- line≤á iε thσ commanΣ grou≡ arσ no⌠ permitted«á Thσ commanΣ linσ ì
- is structured as follows:
-
- l[o][command]["Prompt]
-
- where:
- l is the single character used to invoke the command
- note that it may be upper- or lower-case
- o is an opening option, which is one of:
- :nn -- go to Menu nn
- ! -- have MENU wait when the command is finished
- command is an optional ZCPR2 command; note that if
- the option is ":nn", then a command here makes no
- sense
- "Prompt is a command to MENU to print a prompt and wait
- for user input to fill out the command line
-
-
- Thσá ":nnó optioε tell≤ MEN╒ t∩ movσ t∩ ß differen⌠ men⌡á iε ì
- the MENU.CPR file. The first menu is number 1. Example:
-
- -dpx
- #
- 1st Menu: A - Goto Menu 2 3 - Goto Menu 3
- #
- a:2
- 3:3
- #
- 2nd Menu Command: 3 - Goto Menu 3
- #
- 3:3
- #x
- 3rd Menu Command: 2 - Goto Menu 2
- #
- 2:2
- ##
-
-
- Iε thσ firs⌠ menu¼ thσ use≥ ma∙ strike:
-
- "aó o≥ "Aó t∩ got∩ Men⌡ 2
- "3ó t∩ got∩ Men⌡ 3
- ">óá o≥á ".ó t∩ got∩ thσ nex⌠ men⌡ (Men⌡ 2)
- ^├ t∩ got∩ ZCPR2
-
- In the second menu, the user may strike:
-
- "3" to goto Menu 3
- "*" or "<" or "," to goto Menu 1
- ">" or "." to goto Menu 3
- ^C to goto ZCPR2
-
- In the third menu, the user may strike:
-
- "2" or "<" or "," to goto Menu 2
- "*" to goto Menu 1
-
-
- Thσá "!óá optioεá place≤á ß "Wó iεá thσá MEN╒á commanΣá linσ ì
- (remembe≥á froφ before?)«á Thi≤ cause≤ MEN╒ t∩ pausσ anΣ asδ thσ ì
- use≥ t∩ "Strikσ An∙ Keyó beforσ continuing«á Iε thi≤ way¼á iµá ß ì
- commanΣá generate≤ informatioε t∩ bσ reaΣ b∙ thσ use≥ beforσ MEN╒ ì
- clear≤á hi≤ screen¼á thσ "!ó optioε ma∙ bσ useΣ t∩ givσ thσá use≥ ì
- al∞ thσ timσ hσ want≤ t∩ reaΣ thi≤ display.
-
- Thσá "Promp⌠á suffi°á cause≤ MEN╒ t∩ accep⌠ ßá tai∞á t∩á thσ ì
- commanΣ linσ i⌠ i≤ buildinτ s∩ tha⌠ thσ use≥ caε inpu⌠á argument≤ ì
- for the command. The Prompt is simply text to prompt the user.
-
- Examples:
-
- -dxp
- #
- A - Run XDIR without Pause or Input
- B - Run XDIR and Pause before Returning to MENU
- C - Run XDIR, Allow User Input, and Pause before
- Returning to MENU
- Z - Run Any ZCPR2 Command and Pause before
- Returning to MENU
-
- #
- z!"Enter Command Line --
- axdir
- b!xdir
- c!xdir "Enter Ambiguous File Name --
- ##
-
- Notσ thσ Spacσ righ⌠ beforσ thσ "Promp⌠ form« Thi≤ spacσ i≤ ì
- significan⌠á t∩á kee≡á thσ commanΣ anΣ use≥á inpu⌠á froφá runninτ ì
- together« Wσ wan⌠ thi≤ "ruε togetheró fo≥ thσ ┌ command.
-
-
- Yo⌡á caεá havσá a≤á man∙ command≤á a≤á thσá printablσá ASCI╔ ì
- characte≥á se⌠ (withou⌠ lower-casσ letter≤ anΣ thσá MEN╒á commanΣ ì
- characters⌐ wil∞ allow«á You≥ text¼á however¼ fo≥ eacΦ men⌡ mus⌠ ì
- bσ ablσ t∩ fi⌠ oε ß screeε witΦ thσ commanΣ promp⌠ a⌠ thσ bottom« ì
- Thi≤ typicall∙ mean≤ tha⌠ thσ tex⌠ canno⌠ exceeΣ 2▓ lines.
-
- MEN╒á fit≤ iε nicel∙ t∩ thσ ZCPR▓ Systeφ oµá programs«á Thσ ì
- informatioε sectioε oε "MENU'≤ Relationshi≡ t∩ thσ ZCPR▓á Systemó ì
- explain≤ ho≈ MEN╒ anΣ thσ othe≥ ZCPR▓ program≤ worδ together.
-
- ╔á havσ no⌠ discusseΣ erro≥ message≤ yo⌡ caε encounte≥ unde≥ ì
- MEN╒ iε thi≤ informatioε section«á Tha⌠ come≤ late≥ iε thσ Erro≥ ì
- Message section.
-
-
-
- 5.5 MENU Programming Command Summary
-
- EacΦ MEN╒ commanΣ occupie≤ onl∙ onσ line¼ anΣ blanδ line≤ iε ì
- thσá commanΣá grou≡á arσ no⌠á permitted«á Thσá commanΣá linσá i≤ ì
- structureΣ a≤ follows:
-
- l[o][command]["Prompt]
-
- where:
- l is the single character used to invoke the command
- note that it may be upper- or lower-case
- o is an opening option, which is one of:
- :nn -- go to Menu nn
- ! -- have MENU wait when the command is finished
- command is an optional ZCPR2 command; note that if
- the option is ":nn", then a command here makes no
- sense
- "Prompt is a command to MENU to print a prompt and wait
- for user input to fill out the command line
-
- The MENU commands are:
-
- Command Function
-
- :nn Goto Menu nn, where the first menu is Menu 1
- ! Wait after command line is executed before
- processing the menu
- "Prompt Prompt the user for input and accept it
-
- Thσá followinτ ASCI╔ character≤ ma∙ NO╘ bσ useΣ a≤á command≤ ì
- since they are used elsewhere:
-
- <SPACE> # % , . < > * <DEL>
-
- <Any Char Less than Space>
-
-
- 5.6 MENU's Relationship to the ZCPR2 System
-
- MENU¼á likσ mos⌠ oµ thσ ZCPR▓ utilities¼á interact≤ witΦ thσ ì
- systeφá a≤á ßá wholσ anΣ canno⌠ bσ useΣ witΦ system≤á othe≥á thaε ì
- ZCPR2«á Iε particular¼á MEN╒ require≤ thσ ZCPR▓ Multiplσ CommanΣ ì
- Linσ Buffe≥ facilit∙ t∩ bσ availablσ t∩ i⌠ anΣ canno⌠ ruε withou⌠ ì
- it«á I⌠á chain≤á t∩á othe≥á command≤ anΣá t∩á itselµá thr⌡á thi≤ ì
- facility.
-
- MEN╒ i≤ installeΣ b∙ GENINS« GENIN╙ i≤ useΣ t∩ instal∞ MEN╒ ì
- anΣ se⌠ thσ parameter≤ fo≥ wherσ thσ Multiplσ CommanΣ Linσ Buffe≥ ì
- i≤ locateΣ anΣ wha⌠ thσ passworΣ fo≥ enterinτ ß Systeφ Men⌡ is.
-
- Also¼á C─ (Changσ Directory⌐ anΣ STARTU╨ (or¼ S╘ fo≥ CD⌐ caε ì
- comσ int∩ pla∙ witΦ MENU« Wheε C─ log≤ int∩ t∩ ne≈ directory¼ i⌠ ì
- look≤ fo≥ thσ filσ ST.CO═ anΣ execute≤ i⌠ iµ therσ i≤ one« S╘ i≤ ì
- simpl∙á STARTU╨á renamed¼á anΣá STARTU╨ wil∞á loaΣá thσá Multiplσ ì
- Command Line Buffer with a command line and then terminate.
-
- Froφá thσ poin⌠ oµ vie≈ oµ MENU¼á thσ commanΣ loadeΣá b∙á S╘ ì
- coulΣ bσ MENU« Thσ effec⌠ oµ thi≤ i≤ t∩ automaticall∙ ente≥ MEN╒ ì
- when the user employs CD to enter a given directory.
-
- Hence¼á b∙á usinτá CD¼á ßá use≥ caε ente≥á ßá director∙á anΣ ì
- suddenl∙á finΣ himselµ iε ß men⌡ insteaΣ oµ a⌠ thσ ZCPR▓á commanΣ ì
- level«á Thi≤á i≤ gooΣ fo≥ application≤ wherσ ß director∙ i≤á se⌠ ì
- asidσá fo≥ ß specifiπ purposσ anΣ onl∙ certaiε operation≤ arσá t∩ ì
- bσá performeΣá iεá it¼á sucΦá a≤á cataloginτá disk≤á o≥á handlinτ ì
- accounts«á Also¼á witΦ CD'≤ passworΣ facility¼ iµ thi≤ director∙ ì
- i≤ ß Systeφ Directory¼á thσ use≥ woulΣ havσ t∩ givσ ß passworΣ t∩ ì
- enter it.
-
- No≈á tha⌠ MEN╒ i≤ runninτ fo≥ thσ directory¼á ß MEN╒ commanΣ ì
- coulΣ bσ anothe≥ C─ t∩ anothe≥ directory«á O≥ i⌠ coulΣ simpl∙ bσ ì
- a DU: form. Example:
-
- #dp
- A - Enter ZCPR Directory
- B - Enter A0:
- #
- acd zcpr
- ba0:
- #
-
- Here¼á iµá ┴ i≤ issued¼á theε C─ wil∞ movσá int∩á ZCPR║á anΣ ì
- executσ ST.CO═ iµ therσ i≤ onσ there«á Iµ ┬ i≤ issued¼á thσ use≥ ì
- i≤á loggeΣá int∩á A0:«á MEN╒ i≤ thσ nex⌠ commanΣ iεá botΦá case≤ ì
- (commanΣá line≤á arσá "C─ ZCPR;MENUóá anΣá "A0:;MENU")¼á s∩á MEN╒ ì
- automaticall∙ reinvoke≤ anΣ look≤ fo≥ MENU.CPR«á Iµ i⌠ find≤ it¼ ì
- wσ arσ iε anothe≥ MEN╒ system¼ and¼ iµ i⌠ doesn't¼ wσ arσ bacδ t∩ ì
- ZCPR2 command level.
-
-
- Unde≥ thσ ┴ option¼á iµ C─ find≤ ST.COM¼á S╘ wil∞á overwritσ ì
- thσ res⌠ oµ thσ commanΣ line¼ thereb∙ throwinτ awa∙ thσ nex⌠ MEN╒ ì
- command and giving us something totally different to work with.
-
- Unde≥ thσ ┬ option¼ wσ wil∞ ruε MEN╒ nex⌠ anΣ simpl∙ exi⌠ iµ ì
- a MENU.CPR file is not found.
-
-
-
- 5.7 MENU Error Messages
-
- Iεá orde≥ t∩ makσ MEN╒ a≤ smal∞ a≤ possiblσ (i⌠ i≤ unde≥á 2╦ ì
- byte≤á iε size)¼á ╔ havσ reduceΣ thσ erro≥ message≤ t∩ ß minimum« ì
- Instead¼á MEN╒á provide≤ ß minimuφ indicatioε tha⌠á somethinτá i≤ ì
- wrong and aborts.
-
- Thσ prograφ MCHEC╦ i≤ designeΣ t∩ tel∞ yo⌡ morσ specificall∙ ì
- wha⌠ i≤ wrong« MCHEC╦ i≤ ß MENU.CP╥ Synta° Checker¼ anΣ i⌠ look≤ ì
- fo≥á al∞á sort≤ oµ erro≥ condition≤ tha⌠ caε occu≥ iε ßá MENU.CP╥ ì
- file. MCHECK is discussed in the next information section.
-
- MEN╒ provide≤ thσ followinτ minima∞ erro≥ messages:
-
- Message Meaning
-
- Full Memory is Full
- Invalid Option User Command is in Error
- Pass Err Invalid Password Given
- Str Err MENU.CPR File Structure Error
-
-
-
- 5.8 MCHECK -- MENU.CPR Syntax Checker
-
- MCHEC╦á shoulΣ catcΦ an∙ error≤ madσ iε ß MENU.CP╥ filσ b∙ ß ì
- programmer«á I⌠á i≤ no⌠ guaranteed¼á bu⌠ ha≤ beeεá testeΣá quitσ ì
- thoroughly.
-
- MCHECK accepts command lines of the following forms:
-
- MCHECK or MCHECK // <-- Print Internal Help
- MCHECK dir:filename <-- Check "filename.CPR"
- MCHECK dir:filename.typ <-- Check "filename.typ"
-
- Thσá DIR║á prefi°á ma∙ bσ useΣ witΦ thσ filσ names«á I⌠á i≤ ì
- optional« A≤ ß DIR║ prefix¼ thi≤ accept≤ thσ DU║ forφ o≥ ß nameΣ ì
- directory.
-
-
-
- MCHECK gives you the "standard" opening error messages:
-
- Error in Disk or User Number -- Aborting
- DIR: form was not acceptable
-
- Error in Opening File -- Aborting
- Problem with file
-
- TPA Overflow -- MENU.CPR File is Too Big -- Aborting
- It could be too big for MENU also (Full error of
- MENU)
-
- I⌠ theε start≤ processinτ thσ MENU.CP╥ filσ iµ nonσ oµ thesσ ì
- error≤á occur«á MCHEC╦ print≤ thσ linσ numbe≥ anΣ erro≥á messagσ ì
- fo≥á eacΦ erro≥ encountered«á I⌠ als∩ print≤ comment≤ a≤á i⌠á i≤ ì
- running along.
-
- Non-error comments printed by MCHECK include:
-
- ** Global Options Detected **
- There are global options in the file
-
- ** Menu Number nnn
- It is beginning the indicated menu
-
- ** End of Menu Check **
- No Errors Detected -or- nnnnn Errors Detected
- Done and Error Count
-
-
- Fatal Errors which cause MCHECK to stop processing are:
-
- Error -- New Menu Expected, But # NOT Found -- Aborting
- Like it says; it gives a line number to help you
- find the problem
-
- Error -- Premature EOF Encountered -- Aborting
- The file did not end with ##
-
-
- Non-Fatal Errors for MCHECK (fatal for MENU, tho) are:
-
- Error -- Invalid Option:
- Invalid option in global or local option line
-
- Error -- Menu Number Out of Range
- A ":nn" option referenced a number out of range
-
-
- Thσá followinτ i≤ ß samplσ ruε oµ MCHEC╦ oε ß gooΣá MENU.CP╥ ì
- file:
-
-
- B7>mcheck zcpr:menu.cpr
- MCHECK Version 1.1
-
- Line Comment/Error Message
- ---- ---------------------
- 1 ** Global Options Detected **
- 2 ** Menu Number 0
- 17 ** Menu Number 1
- 28 ** Menu Number 2
- 39 ** Menu Number 3
- 48 ** Menu Number 4
- 57 ** End of Menu Check **
- No Errors Detected
-
- .fo Section 6 - File Compare Utilities Page #
-
- 6.0 File Compare Utilities
-
- 6.1 File Comparison Utilities Under ZCPR2
-
- Tw∩á utilitie≤á arσá provideΣ witΦ ZCPR▓ t∩á comparσá files« ì
- Both utilities are simple in form to use. These utilities are:
-
- COMPARE -- Compares two files by reading one, computing its
- CRC value, saving its CRC and size, and then
- reading the other and seeing if they match
-
- DIFF -- Prints out a difference listing between two files;
- different bytes encountered at the same
- relative displacements from the beginning of
- thσ file≤ arσ printeΣ iε hexadecimal¼
- decimal, and ASCII forms
-
-
- These commands are invoked by the following forms:
-
- COMPARE or COMPARE // <-- Print Help
- COMPARE dir:file1.typ,dir:file2.typ M <-- Compare
-
- DIFF or DIFF // <-- Print Help
- DIFF dir:file1.typ,dir:file2.typ M <-- Compare
-
- Thσá filσ spec≤ mus⌠ bσ unambiguou≤ o≥ aε erro≥ wil∞ result« ì
- Thσ DIR║á prefi° i≤ optional¼á anΣ ma∙ bσ ß nameΣ director∙ o≥á ß ì
- DU: form.
-
- Thσ "Mó i≤ optional¼ and¼ iµ present¼ select≤ ß Multiplσ Ruε ì
- Modσá iε whicΦ thσ use≥ i≤ alloweΣ t∩ changσ disk≤ a≤ hσ desires¼ ì
- ß COMPAR┼ o≥ DIF╞ i≤ done¼á anΣ theε thσ proces≤ continue≤á unti∞ ì
- the user aborts it.
-
-
-
- 6.2 CRC Check Utility Under ZCPR2
-
- Thσá CR├á Checδ Utilit∙ distributeΣ witΦ ZCPR▓ compute≤á CR├ ì
- value≤á fo≥á ß lis⌠ oµ files«á I⌠ use≤ thσ samσá CR├á polynomia∞ ì
- employeΣ b∙ KeitΦ Peterseε iε hi≤ CRC╦ program¼á and¼á naturally¼ ì
- the values come out the same.
-
- Thσá CR├ Checδ Utilit∙ compute≤ thσ CR├ value≤ oµ ß selecteΣ ì
- se⌠á oµ file≤ anΣ print≤ ou⌠ thσ filσá names¼á thei≥á sizes¼á anΣ ì
- thei≥ CR├ value≤ iε hexadecimal« ┴ lis⌠ oµ ambiguou≤ file≤ name≤ ì
- ma∙á bσá provideΣá t∩ CRC¼á anΣ i⌠ als∩ respond≤ t∩ ßá serie≤á oµ ì
- options.
-
- The general form of the CRC command is:
-
- CRC dir:afn1,dir:afn2,... ooo...
- è Iεá al∞á ambiguou≤á filσá references¼á thσá DIR║á prefi°á i≤ ì
- optional«á Thi≤ prefi° ma∙ bσ ß nameΣ director∙ o≥ ßá DU║á form« ì
- The options available under CRC are:
-
-
- C - Comment Output; the user is given an opportunity
- to enter comments for each file
-
- D - Disk Output; send output to the disk file CRC.CRC
- as well as to the console
-
- I - Inspect and approve file before CRC is computed
-
- P - Printer Output; send output to the printer as
- well as to the console
-
- Thesσ option≤ ma∙ bσ combineΣ iε an∙ manne≥ desired«á ┴ CR├ ì
- command of the form "CRC" or "CRC //" prints a help message.
-
-
-
- 6.3 Examples
-
- B7>compare help:lu.hlp,zcpr:lu.hlp
- COMPARE Version 1.4
- Source File 1 -- A 16: LU .HLP
- Source File 2 -- A 11: LU .HLP
- ** Files are Identical **
-
- B7>compare help.txt,s100.txt
- COMPARE Version 1.4
- Source Fie 1 -- B 7: HELP .TXT
- Source File 2 -- B 7: S100 .TXT
- ** Files are Different **
-
- B7>compare help:lu.hlp,c0:
- COMPARE Version 1.4
- Source File 1 -- A 16: LU .HLP
- Source File 2 -- C 0: LU .HLP
- LU .HLP File Not Found
-
- B7>compare help:du2.hlp,c0:
- COMPARE Version 1.4
- Source File 1 -- A 16: DU2 .HLP
- Source File 2 -- C 0: DU2 .HLP
- ** Files are Identical **
-
- B7>compare help:du2.hlp,c0: m
- COMPARE Version 1.4
- Source File 1 -- A 16: DU2 .HLP
- Source File 2 -- C 0: DU2 .HLP
- Change Disks if Desired and Type ^C or A to Abort or <RETURN>
- to Continue -
-
-
- Source File 1 -- A 16: DU2 .HLP
- Source File 2 -- C 0: DU2 .HLP
- ** Files are Identical **
- COMPARE Version 1.4
- Source File 1 -- A 16: DU2 .HLP
- Source File 2 -- C 0: DU2 .HLP
- Change Disks if Desired and Type ^C or A to Abort or <RETURN>
- to Continue -
-
- B7>diff help:du2.hlp,c0:
- DIFF Version 1.6
- Source File 1 -- A 16: DU2 .HLP
- Source File 2 -- C 0: DU2 .HLP
- NO Differences Noted in Files
-
- B7>save 1 test.bin
- B7>zsid test.bin
- ZSID VERS 1.4
- NEXT PC END
- 0200 0100 A2FF
- #s100
- 0100 C3 0
- 0101 70 1
- 0102 01 2
- 0103 FF .
- #s1f0
- 01F0 09 0
- 01F1 3C 0
- 01F2 3D 0
- 01F3 32 .
- #^C
- B7>save 1 test2.bin
-
- B7>compare test.bin,test2.bin
- COMPARE Version 1.4
- Source File 1 -- B 7: TEST .BIN
- Source File 2 -- B 7: TEST2 .BIN
- ** Files are Different **
-
- B7>diff test.bin,test2.bin
- DIFF Version 1.6
- Source File 1 -- B 7: TEST .BIN
- Source File 2 -- B 7: TEST2 .BIN
- Rel Offset B 7: TEST .BIN B 7: TEST2 .BIN
- Hex Dec Hex Dec Asc Hex Dec Asc
- 0000 0 C3 195 C 00 0 .
- 0001 1 70 112 p 01 1 .
- 0002 2 01 1 . 02 2 .
- 00F0 240 09 9 . 00 0 .
- 00F1 241 3C 60 < 00 0 .
- 00F2 242 3D 61 = 00 0 .
-
-
- B7>crc *.* di
- CRC Version 2.0
-
- ** File Inspection **
- COMPARE .HLP -- Select (Y/N/S=Skip Rest/Q=Quit/other=Y)? Y
- CRC .CRC -- Select (Y/N/S=Skip Rest/Q=Quit/other=Y)? N
- HELP .TXT -- Select (Y/N/S=Skip Rest/Q=Quit/other=Y)? Y
- S100 .TXT -- Select (Y/N/S=Skip Rest/Q=Quit/other=Y)? S
- ** Inspection Complete **
-
- 1 File: COMPARE .HLP -- Size: 4K -- CRC: 9F 8E
- 2 File: HELP .TXT -- Size: 4K -- CRC: 77 6E
-
- B7>type crc.crc
-
- 1 File: COMPARE .HLP -- Size: 4K -- CRC: 9F 8E
- 2 File: HELP .TXT -- Size: 4K -- CRC: 77 6E
-
- B7>crc *.* icd
- CRC Version 2.0
-
- ** File Inspection **
- COMPARE .HLP -- Select (Y/N/S=Skip Rest/Q=Quit/other=Y)? Y
- CRC .CRC -- Select (Y/N/S=Skip Rest/Q=Quit/other=Y)? N
- HELP .TXT -- Select (Y/N/S=Skip Rest/Q=Quit/other=Y)? Y
- S100 .TXT -- Select (Y/N/S=Skip Rest/Q=Quit/other=Y)? S
- ** Inspection Complete **
-
- 1 File: COMPARE .HLP -- Size: 4K
- Comment? Help File for COMPARE and DIFF and CRC
- -- CRC: 9F 8E
- Comment: Help File for COMPARE and DIFF and CRC
- 2 File: HELP .TXT -- Size: 4K
- Comment? Note on Help Files
- -- CRC: 77 6E
- Comment: Note on Help Files
-
- B7>type crc.crc
-
- 1 File: COMPARE .HLP -- Size: 4K -- CRC: 9F 8E
- Comment: Help File for COMPARE and DIFF and CRC
- 2 File: HELP .TXT -- Size: 4K -- CRC: 77 6E
- Comment: Note on Help Files
-
- .fo Section 7 - File Copy Utility Page #
-
- 7.0 File Copy Utility
-
- 7.1 MCOPY Overview
-
- MCOP┘á i≤ ß filσ cop∙ prograφ designeΣ fo≥ usσ unde≥á ZCPR2« ì
- I⌠á support≤á man∙á feature≤ relateΣ specificall∙á t∩á thσá ZCPR▓ ì
- System and is very intimately tied into the ZCPR2 System.
-
- Thσá basiπá purposσá oµá MCOP┘ i≤ t∩á cop∙á file≤á froφá onσ ì
- director∙ (disk/use≥ area⌐ t∩ anothe≥ unde≥ ZCPR2«á I⌠á support≤ ì
- thσáá nameΣá director∙á form≤á oµá ZCPR2¼áá anΣá thσá sourcσá anΣ ì
- destinatioεá directorie≤á caεá bσ specifieΣá iεá term≤á o≥á nameΣ ì
- directories or DU: forms or both.
-
- MCOP┘á i≤ als∩ intendeΣ t∩ bσ useΣ fo≥ backu≡ purposes«á I⌠ ì
- ha≤á thσá abilit∙á t∩ repeatedl∙ cop∙ ß se⌠á oµá file≤á froφá onσ ì
- director∙á t∩ another¼á pausinτ betweeε successivσ cop∙ passe≤ t∩ ì
- allo≈á thσ use≥ t∩ changσ disks«á ┴ ke∙ t∩ thσ usσ oµá MCOP┘á iε ì
- genera∞á i≤ tha⌠ oncσ MCOP┘ ha≤ beguε operations¼á thσ use≥á neeΣ ì
- neve≥ concerε himselµ witΦ Warφ Bootinτ thσ systeφ afte≥ changinτ ì
- disks; MCOPY is doing that for him.
-
- Iεá copyinτá ßá filσ froφ onσ director∙á t∩á another¼á MCOP┘ ì
- performs the following steps:
-
- 1« I⌠ log≤ int∩ thσ sourcσ director∙ anΣ scan≤ fo≥ thσ ì
- files specified by the user
-
- 2«á I⌠ log≤ int∩ thσ destinatioε directory¼ determine≤ ì
- iµ ß cop∙ oµ thσ filσ exist≤ oε thσ destinatioε anΣ delete≤ i⌠ iµ ì
- it does
-
- 3«á MCOP┘ copie≤ thσ filσ iε thσ sourcσ director∙ int∩ ì
- the destination directory
-
- 4«á MCOP┘á set≤á thσá attribute≤ oµ thσá filσá iεá thσ ì
- destinatioεá director∙á t∩á bσ thσ samσ a≤ thosσá iεá thσá sourcσ ì
- directory
-
- 5«á MCOP┘ optionall∙ verifie≤ botΦ file≤ b∙ mean≤ oµ ß ì
- CRC Check
-
- MCOPY is invoked by one of the following forms:
-
- MCOPY // <-- Print Help
- MCOP┘ <-- Ente≥ Interactivσ Mode
- MCOPY files options <-- Immediately Copy
-
-
- Thσ "MCOP┘ file≤ optionsó forφ i≤ extremel∙ flexiblσ iεá it≤ ì
- capabilities«áá Wheεáá firs⌠á invoked¼áá MCOP┘á ha≤á ßáá defaul⌠ ì
- destinatioε director∙ defineΣ (b∙ GENINS)«á Thσ "filesó fielΣ i≤ ì
- ßá serie≤á oµá filσá assignmen⌠á specifications¼áá wherσá sucΦá ß ì
- specification is of the form:
-
- dir:=dir:filename.typ or dir:filename.typ
-
- Iµá thσá firs⌠ forφ i≤ encountered¼á thσ defaul⌠á destinatioεá i≤ ì
- temporaril∙á redefineΣ t∩ bσ thσ director∙ indicateΣ oε thσá lef⌠ ì
- oµá thσ "=ó character¼á anΣ al∞ file≤ referenceΣ thereafte≥ unti∞ ì
- the next "dir:=dir:filename.typ" form are copied to this default.
-
- To illustrate my point, note the following example:
-
- MCOPY FILE1.*,HELP:FILE2.HLP,TEMP:=TEST.TXT,HI.*
-
- Let'≤ assumσ tha⌠ thσ defaul⌠ defineΣ b∙ GENIN╙ i≤ thσá director∙ ì
- nameΣá BACKUP«á Iεá thi≤á case¼á file≤ matchinτ FILE1.¬á iεá thσ ì
- curren⌠á director∙ arσ copieΣ t∩ BACKUP¼á thσ filσá FILE2.HL╨á iε ì
- director∙á HEL╨á i≤ copieΣ t∩ BACKUP¼á thσ filσ TEST.TX╘á iεá thσ ì
- curren⌠ director∙ i≤ copieΣ t∩ TEMP¼á anΣ thσ file≤ matchinτ HI.¬ ì
- in the current directory are copied to TEMP.
-
- Oncσá ßá DIR:╜ i≤ encountered¼á thσ defaul⌠á destinatioεá i≤ ì
- redefined«á Encounterinτ ß differencσ source¼á however¼ doe≤ no⌠ ì
- change what the default source directory is.
-
-
-
- 7.2 MCOPY Command Line Options
-
- Thσá option≤ portioε oµ thσ "MCOP┘ file≤ optionsó commanΣ i≤ ì
- a set of none or more of the following characters:
-
- E -- Test for Existence of File on Destination and
- User Approves Copy before Copy is Done
-
- I -- User Approves Each File before Copy Begins
-
- M -- Multiple Copy (Repeat) Facility
-
- Q -- Quiet Operation (No Activity Displays)
-
- V -- Verify Facility
-
- GENIN╙ i≤ useΣ t∩ se⌠ thσ defaul⌠ setting≤ fo≥ eacΦ oµ thesσ ì
- option≤ (turninτ theφ oε o≥ off)¼ anΣ thσ optioε character≤ servσ ì
- to toggle the settings from the defaults.
-
-
- Thσá ┼á optioεá (Existencσ Test⌐ look≤á oεá thσá destinatioε ì
- director∙á t∩á seσá iµ thσ filσ i⌠ i≤ abou⌠ t∩á cop∙á i≤á alread∙ ì
- there« I⌠ theε tell≤ thσ use≥ oµ it≤ finding≤ anΣ ask≤ hiφ iµ hσ ì
- want≤ t∩ g∩ aheaΣ witΦ thσ copy«á Thσ use≥ ma∙ elec⌠ t∩ cop∙á o≥ ì
- no⌠ cop∙ a≤ hσ desires.
-
- Thσá ╔á optioε (Inspect⌐ display≤ al∞ file≤ whicΦ matcΦá thσ ì
- indicateΣ sourcσ file≤ t∩ thσ user¼á allowinτ hiφ t∩ selec⌠ whicΦ ì
- file≤á hσá want≤ t∩ copy«á I⌠ theε copie≤á thσá selecteΣá files« ì
- MCOP┘á perform≤á thi≤á operatioεá fo≥ eacΦ se⌠ oµá file≤á iεá thσ ì
- command line (separated by commas).
-
- Thσá ═á optioε (Multiplσ Copy⌐ pause≤á beforσá startinτá thσ ì
- copy¼á allowinτá thσ use≥ t∩ abor⌠ thσ procedurσ o≥ inser⌠ ß disδ ì
- int∩ thσ source¼á thσ destination¼á o≥ botΦ anΣ instruc⌠ MCOP┘ t∩ ì
- proceed«á Afte≥ copyinτ al∞ oµ thσ indicateΣ files¼á MCOP┘á theε ì
- pause≤á again¼á allowinτá thσ use≥ t∩ agaiε changσá disks«á Thi≤ ì
- continues until the user aborts the procedure.
-
- Thσá ╤ optioε (Quiet⌐ turn≤ ofµ thσ MCOP┘ activit∙á display« ì
- Iε norma∞ operation¼ MCOP┘ i≤ constantl∙ tellinτ thσ use≥ wha⌠ i⌠ ì
- i≤á doing«á ╔á fee∞á tha⌠ thi≤ i≤á bette≥á thaεá quietl∙á havinτ ì
- problems without the user knowing what is going on.
-
- Thσá ╓á optioε (Verify⌐ i≤ useΣ t∩ checδ thσ copieΣ filσá t∩ ì
- insurσ tha⌠ thσ cop∙ i≤ good«á WitΦ thi≤ optioεá engaged¼á MCOP┘ ì
- compute≤á ßá CR├ valuσ oµ thσ sourcσ filσ a≤ i⌠ read≤á it«á Wheε ì
- MCOP┘ ha≤ completeΣ thσ copy¼ i⌠ read≤ thσ destinatioε filσ back¼ ì
- computinτ it≤ CR├ value¼á and¼ wheε complete¼ i⌠ compare≤ thσ tw∩ ì
- CR├á values¼á tellinτ thσ use≥ iµ aε erro≥ iε thσá cop∙á occurreΣ ì
- (i.e., different CRC values resulted).
-
-
-
- 7.3 MCOPY Interactive Mode
-
- Iµáá thσá user'≤á commanΣá i≤á simpl∙á "MCOPY"¼áá theεáá thσ ì
- Interactivσ Modσ i≤ enabled«á Iε responsσ t∩ thi≤ command¼ MCOP┘ ì
- displays the following prompt:
-
- MCOPY Status: EIMQV -- MCOPY Command (? for Help)?
-
- wherσ an∙ oµ thσ character≤ iε "EIMQVó ma∙ bσ omitted« Thσ EIMQ╓ ì
- character≤á indicatσá thσá statu≤ oµ thσ variou≤á MCOP┘á options¼ ì
- namely:
-
- E indicates that File Existence Test is ON
- I indicates that Inspect Mode is ON
- M indicates that Multiple Copy is ON
- Q indicates that Quiet Mode is ON
- V indicates that MCOPY will Verify
-
-
- Thσ MCOP┘ commanΣ prompteΣ fo≥ i≤ ß singlσá character¼á casσ ì
- insignificant«á Yo⌡á caεá togglσá eacΦ onσ oµ thesσá option≤á b∙ ì
- simply striking the appropriate letter.
-
- Therσá arσ si° MCOP┘ Command≤ t∩ perforφ variou≤á functions« ì
- These commands are:
-
- C - Copy a File or Set of Files
- D - Directory Display
- F - Compute Amount of Free Space on Disk
- L - Log in New Directories
- S - Display MCOPY Status
- X or ^C - Exit
-
- Thσá ├á commanΣá (Copy⌐á allow≤ yo⌡á t∩á specif∙á ßá se⌠á oµ ì
- destinations¼ sources¼ anΣ file≤ a≤ yo⌡ coulΣ a⌠ thσ commanΣ linσ ì
- level«ááá EacΦááá se⌠ááá i≤áá separateΣáá b∙ááá comma≤ááá (like¼ ì
- "dir:=dir:f1.typ,f2.typ,dir:=dir:f3.typ").
-
- Thσ ─ commanΣ (Directory⌐ display≤ ß sorteΣ director∙ t∩ thσ ì
- use≥á oµá thσá defaul⌠ director∙ o≥ onσá oµá hi≤á choice«á NameΣ ì
- directorie≤ o≥ thσ DU║ forφ ma∙ bσ useΣ t∩ specif∙ thσ directory« ì
- Thσ defaul⌠ director∙ i≤ thσ las⌠ destinatioε director∙ copieΣ t∩ ì
- or selected by the L command.
-
- Thσá ╞á commanΣá compute≤ thσ amoun⌠ oµ freσ spacσá lef⌠á oε ì
- disk. The user may select the disk or ride with the default.
-
- Thσá ╠ commanΣ allow≤ thσ use≥ t∩ specif∙ ß ne≈á destinatioε ì
- or source directory.
-
- Thσáá ╙á commanΣá tell≤á thσá use≥á thσá Statu≤á oµáá MCOPY¼ ì
- particularl∙á wha⌠ thσ curren⌠ sourcσ anΣ destinatioε directorie≤ ì
- are.
-
- X or ^C exits MCOPY to ZCPR2.
-
-
-
- 7.4 Sample MCOPY Sessions
-
- B7>mcopy help:=mcopy.hlp
- MCOPY Version 2.8
- Copy B 7: MCOPY .HLP to A 16:
- No Original File MCOPY .HLP on Destination
- Reading 7K Writing 7K
-
- Copy Complete, Verify Phase --
- Reading 7K
- Verify Complete
- **** MCOPY Compete ****
- 1 File Copied 0 Copy Errors
-
-
- B7>mcopy 1:=*.hlp,*.txt i
- MCOPY Version 2.8
- Copy B 7: ????????.HLP to B 1:
- MCOPY .HLP -- Copy (Y/N/Q=Quit and Skip Rest/<CR>=Y)? Y
- No Original File MCOPY .HLP on Destination
- Reading 7K Writing 7K
-
- Copy Complete, Verify Phase --
- Reading 7K
- Verify Complete
- Copy B 7: ????????.TXT to B 1:
- HELP .TXT -- Copy (Y/N/Q=Quit and Skip Rest/<CR>=Y)? Y
- S100 .TXT -- Copy (Y/N/Q=Quit and Skip Rest/<CR>=Y)? N
- No Orginal File HELP .TXT on Destination
- Reading 1K Writing 1K
-
- Copy Complete, Verify Phase --
- Reading 1K
- Verify Complete
- **** MCOPY Complete ****
- 2 Files Copied 0 Copy Errors
-
- B7>mcopy
- MCOPY Version 2.8
- MCOPY Status: V -- MCOPY Command (? for Help)? ?
- MCOPY Status: E I M Q V
- These Status Characters have the following meanings:
- E - File Existence Test Mode is ON
- I - File Selection Inspect Mode is ON
- M - Muliple Copy Function Mode is ON
- Q - Quiet Mode is ON
- V - Verify Mode is ON
-
- The Status Characters, as commands, toggle their respective modes.
- Other valid MCOPY Commands are:
- C - Copy a File or Set of Files
- D - Directory Display
- F - Compute Amount of Free Space on Disk
- L - Log in New User/Disks
- S - Display MCOPY Status (Cur and Dest User/Disk)
- X or ^C - Exit MCOPY
-
- MCOPY Status: V -- MCOPY Command (? for Help)? d
- ** Directory Display **
- File Spec (<CR>=C 0:*.*)? b1:
- DEMO .COM 4K DEMO .MAC 4K DEMO .ZEX 4K GENINS .MAC 44K
- HELP .TXT 4K MCOPY .HLP 8K TEMPLATE.MAC 12K
- ** 80K Occupied by Displayed Files, 4048K Remaining on Disk B **
-
-
- MCOPY Status: V -- MCOPY Command (? for Help)? c
- File Spec (<CR>=Abort)? zcpr:=mcopy.hlp
- Copy B 7: MCOPY .HLP to A 11:
- No Original File MCOPY .HLP on Destination
- Reading 7K Writing 7K
-
- Copy Complete, Verify Phase --
- Reading 7K
- Verify Complete
- **** MCOPY Complete ****
- 1 File Copied 0 Copy Errors
-
- MCOPY Status: V -- MCOPY Command (? for Help)? f
- ** Free Space Data **
- Disk (<CR>=A)?
-
- 1328K Bytes Remaining on Disk A
- MCOPY Status: V -- MCOPY Command (? for Help)? f
- ** Free Space Data **
- Disk (<CR>=A)? B
-
- 4048K Bytes Remaining on Disk B
-
- MCOPY Status: V -- MCOPY Command (? for Help)? x
- ** MCOPY Exiting **
-