; The ZCPR3 VMENU Shell -- ZCPR3 Utilities -- 1 - VMENU 2 - VMENUCK -- Using VMENU -- -- Programming VMENU -- U - Using VMENU P - Programming *.VMN Files S - Summary of User Cmds C - *.VMN Internal Commands E - VMENU Error Messages M - Programming Cmd Summary Z - VMENU and ZCPR3 :1 Command: VMENU 1.0 Syntax: VMENU <-- run MENU.VMN on all files in dir or VMENU afn <-- run MENU.VMN on files selected by afn or VMENÕ afî ufî <-- ruî menõ (ufn© on selecteä files Function: VMENÕ  ió thå ZCPR³ menõ front-enä processor®  Iô ió á ZCPR³ Shelì whicè readó á *.VMÎ filå anä processeó  commandó froí it. Options: None Comments: VMENÕ  ió á truå ZCPR³ Shell®  Iô ió describeä iî thió HELÐ file. Selected Error Messages: "Nï Commanä Line¢ meanó thaô thå ZCPR³ Systeí doeó  noô supporô  aî externaì Commanä Linå Buffer®  VMENÕ musô  havå thió tï run. "Nï  Shelì Stack¢ meanó thaô thå ZCPR³ Systeí doeó  noô supporô á Shelì Stack® VMENÕ musô havå thió tï run. "Shelì  Stacë Full¢ meanó thaô thå Shelì Stacë ió  fulì anä VMENÕ cannoô pusè itselæ ontï thå stack. "Shelì  Stacë Size¢ meanó thaô thå Shelì Stacë elementó arå toï shorô foò VMENÕ tï storå itó parameters. "TPÁ  Full¢ meanó thaô therå ió noô enougè rooí iî  thå TPÁ tï loaä thå *.VMÎ file. Examples of Use: See this HELP file VMENÕ ió thå ZCPR³ Menu-Orienteä Commanä  Preprocessor® Iô  actó aó á front-enä tï ZCPR3¬  providinç á menu-orienteä useò interfacå tï ZCPR3® Itó functioî caî bå representeä bù thå followinç diagram: ------- ------- ------- ------- |V | |Z | |B | |P | User | M | | C | | D | | g | Menu ---->| E |--->| P |--->| O |--->| m | Command | N | | R | | S | | s | | U| | 3| | | | | ------- ------- ------- ------- Thå "Useò Menõ Command¢ ió á singlå characteò thaô  thå useò  strikeó  whicè instructó VMENÕ tï perforí á  function® Oncå  VMENÕ  beginó processinç thió function¬  iô  buildó  á commanä  linå  foò ZCPR3¬  optionallù askinç  thå  useò  foò furtheò  inpuô  (sucè aó á filå name)¬  anä theî passeó  thå commanä  linå tï ZCPR³ viá thå Commanä Linå  Buffer®  ZCPR³ theî runó thå commanä linå returnó tï VMENU. VMENÕ  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: Aó  aî example¬  á commanä builô bù VMENÕ tï  ruî  XDIÒ witè  useò inpuô foò á filå namå specification¬  coulä  looë likå thå following: XDIR Wheî VMENÕ ió executed¬  iô lookó foò thå filå MENU.VMÎ iî thå currenô directory®  Iæ iô findó one¬ iô loadó iô anä beginó  processing®  Iæ  iô doeó noô finä  one¬  iô  simplù exits®  Á  filå namå maù bå specifieä iî thå VMENÕ  commanä linå tï selecô á filå otheò thaî MENU.VMN. Thå  MENU.VMΠ filå caî contaiî uð tï 25µ menuó  tï  bå processeä bù VMENU®  Thå VMENÕ wilì begiî processinç aô thå firsô menõ iî MENU.VMN. VMENÕ  itselæ  ió á COÍ file¬  likå anù  otheò  prograí undeò  ZCPR3®  Unlikå  mosô  otheò  programs¬  however¬  iô generateó  commanä lineó tï bå executeä bù ZCPR³ anä  storeó itó  returî commanä iî thå Shelì Stack®  Iî thió waù á looð ió seô up: -->--+->- VMENU ->- ZCPR3 ->-+ ^ v | | +-<- Command Line -<----+ Onlù  VMENÕ  itselæ  oò á ZCPR³ tooì  likå  SHCTRÌ  caî terminatå thió loop® Iæ thå VMENÕ programmeò wishes¬ hå caî seô  uð  thå MENU.VMÎ 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ä lateò iî thå sectioî oî programminç MENU.VMÎ files. Á  MENU.VMΠ filå caî bå seô uð tï  executå  anù  ZCPR³ commanä oò sequencå oæ commands® Thå MENU.VMÎ filå caî alsï bå seô uð tï noô allo÷ thå useò tï leavå VMENU¬ tï allo÷ hií tï leavå VMENÕ aô will¬  oò tï allo÷ hií tï leavå VMENÕ onlù iæ hå knowó á password. Thió  HELÐ filå ió divideä intï twï basiã  parts®  Thå infï  sectionó  oî  "Usinç  VMENU¢  anä  "Summarù  oæ  VMENÕ Commands¢ arå designeä tï bå reaä bù á persoî wantinç tï uså VMENÕ  buô  noô wantinç tï learî ho÷ VMENÕ workó oò  ho÷  tï prograí  it®  Theså sectionó describå ho÷ tï movå froí  onå menõ  tï another¬  ho÷ tï issuå VMENÕ commands¬  anä ho÷  tï leavå VMENÕ iæ thå optioî ió presenteä tï him. Thå  otheò  sectionó  oæ thió HELР filå  describå  thå programminç  aspectó oæ VMENÕ anä arå intendeä tï bå useä aó aî  onlinå referencå foò thå VMENÕ  programmer®  Thå  VMENÕ commanä  programminç summarù ió especiallù usefuì iî thaô iô provideó   á  summarù  oæ  thå  commandó  whicè  thå   VMENÕ programmeò maù issuå tï VMENÕ withiî á *.VMÎ file. :U Wheî VMENÕ ió firsô invoked¬  iô wilì bå installeä aó á Shell¬   anä  controì  wilì  returî  tï  thå  ZCPR³  commanä processoò  foò  thå  nexô commanä iî  thå  line®  Wheî  thå commanä  linå ió exhausted¬  ZCPR³ wilì realizå thaô á shelì has been installed and invoke VMENU as a shell. VMENÕ wilì theî comå up¬ loaä thå nameó oæ thå fileó iî thå currenô disë directory¬  loaä thå menõ file¬ anä displaù uð  tï sixteeî fileó anä thå firsô menõ iî thå menõ filå  tï the user. The user will then be prompted for a command. Iæ  aô anù timå á Menõ Displaù ió garbled¬  jusô strikå thå ^Ò key® ^Ò refresheó thå menõ aô alì times. Thå  prompô  whicè appearó aô thå bottoí  oæ  thå  Menõ displaù haó thå followinç generaì form: Command (=Menu,^C=Z3,*=1st Menu,<=Prev Menu,>=Next Menu) - Therå  caî  bå uð tï 25µ menuó iî onå  VMENU.VMΠ file® Thå  VMENÕ  commanä  prompô varieó  tï  reflecô  this®  Foò instance¬  iæ  onlù  onå Menõ waó presenô anä thå optioî  tï aborô ouô oæ VMENÕ tï ZCPR³ waó noô available¬ theî thå Menõ Commanä prompô woulä takå itó simplesô form¬ lookinç like: Command (=Menu) - Strikå  ^Ò aô thió timå tï refresè thå Menõ Displaù  oò strikå thå characteò oæ á Menõ Option®  Theså arå thå  onlù choices¬  anä  strikinç á characteò whicè ió noô thå  RETURÎ keù oò á menõ optioî resultó iî thå belì sounding. Iæ  thå  thå optioî tï exiô tï ZCPR³ waó availablå  anä therå  ió  onlù  onå Menõ iî thå  MENU.VMΠ file¬  theî  thå commanä linå wilì looë likå this: Command (=Menu,^C=Z3) - Thå  optioî oæ abortinç tï ZCPR³ bù strikinç  Control-à (holä  dowî  oî thå Control¬  oò CTRL¬  keù anä  strikå  thå letteò C© ió no÷ available®  Thió wilì returî tï ZCPR³  anä exiô VMENU. 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ù strikinç aî upper- oò lower-caså A. Iæ  therå ió morå thaî onå menõ iî thå *.VMÎ file¬  thå commanä linå optionó becomå slightlù morå complex¬  buô theù arå stilì quitå easù tï follow. Iî  thå followinç examples¬  assumå thaô thå optioî  tï exiô tï ZCPR³ ió off¬ sï thå "^C=Z3¢ optioî wilì NOÔ appear. Froí thå firsô menõ iî thå file¬  thå commanä linå wilì looë likå thå following: Command (=Menu,>=Next Menu) - Tï advancå tï thå nexô menu¬  strikå thå ">¢ oò thå ".¢ character®  Oî mosô keyboards¬ ">¢ ió thå shifô oæ thå "."¬ sï VMENÕ permitó easù movemenô withouô havinç tï worrù abouô shiftinç thå keyboarä alì thå time. Iæ aô thå lasô menõ iî thå file¬  thå commanä linå wilì looë likå thå following: Command (=Menu,*=1st Menu,<=Prev Menu) - Thió  allowó  thå useò tï strikå thå "*¢  characteò  tï jumð  bacë tï thå firsô menõ iî hió *.VMÎ file®  Iæ "<¢  oò ",¢  ió strucë ("<¢ ió usuallù thå shifô oæ thå  ",")¬  theî thå  useò wilì bacë uð onå menõ tï thå previouó menõ iî  thå file. Iæ thå useò ió somewherå iî thå middlå oæ thå  MENU.VMÎ file¬ hió commanä linå wilì looë likå this: Command (=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®  Strikinç thå RETURÎ keù wilì refresè  thå menõ display. Iî  summary¬  movinç abouô withiî VMENÕ ió quitå  easy® "*¢  moveó thå useò tï thå firsô menu¬  "<¢ tï thå  previouó menu¬ ">¢ tï thå nexô menu. :S The full Menu Command Line looks like the following: Command (=Menu,^C=Z3,*=1st Menu,<=Prev Menu,>=Last Menu) - The Menu Commands are: Command Function ^R Refresh Menu Display (RETURN Key) ^C Exit to ZCPR3 (Control-C) * Jump to the First Menu < or , Jump to the Previous Menu > or . Jump to the Next Menu other Menu Option or Invalid Command; letters are automatically capitalized, so a=A :P Programming *.VMN Files Thå  *.VMΠ filå  ió simplù á texô filå  whicè  maù  bå createä  witè  anù  conventionaì  CP/Í   editor¬   includinç WordStar®  VMENÕ  ignoreó  thå Mosô Significanô Biô oæ  alì bytes¬ sï editoró likå WordStar¬ whicè occasionallù seô thió bit¬ caî bå used. Alì *.VMÎ 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: -option Afteò thå globaì optioî line¬  iæ any¬  comeó thå firsô menu® Eacè menõ ió structureä aó follows: #option # menu commands The following are two sample Menu File structures: -option #option #option # # commands commands ## #option # commands ## Therå ió onå optioî character®  Iî usinç it¬  caså  ió noô significant®  Thió optioî characteò ió "X"¬ whicè telló VMENÕ tï allo÷ thå useò tï exiô tï ZCPR3. Thå  Ø  optioî enableó thå facilitù whicè  permitó  thå useò tï typå ^à anä returî tï ZCPR3. Wheî VMENÕ firsô comeó up¬  thå Ø optioî ió turneä off® Thå useò cannoô exiô tï ZCPR3. Thå  globaì optionó line¬  which¬  iæ present¬  ió  thå firsô linå oæ thå file¬  turnó oî thió optioî foò thå courså oæ  thå sessioî iî general®  Thaô is¬  iæ á globaì  optionó linå like -x ió useä (caså ió insignificant)¬ theî thå abilitù tï exiô tï ZCPR3 is enabled for all menus. Thå  globaì optionó linå turnó oî thå Ø optioî foò  alì menuó iî general® However¬ thå Ø optioî maù bå presenteä oî thå  firsô  linå  oæ eacè menõ  immediatelù  afteò  thå  "#¢ characteò  tï  temporarilù complemenô thå settinç foò thå  Ø optioî foò onlù thaô menu. Iæ  thå Ø optioî ió NOÔ includeä iî thå globaì  optionó line¬  iô  ió  turneä OFÆ foò alì  menuó  iî  general®  Thå defaulô  selecteä  bù  usinç  thå  globaì  optionó  linå  ió overriddeî oî á per-menõ basió bù thå locaì menõ options. Example: -x #x No exit to ZCPR3 is permitted # commands #x No exit to ZCPR3. # commands # Thå useò maù exit to ZCPR3. # commands ## :C *.VMN Commands Thió   sectioî  describeó  thå  techniquå  anä  optionó availablå  foò creatinç commanä lineó iî *.VMΠ files®  Thå informatioî  hereiî ió organizeä intï thå followinç  subjecô areas: o Syntax of the command line o :nn Option o ! Option o "text" prompts and input o Variables ($D, $U, $Fn, $Nn, $Tn, $Pp, $$) o Highlighting (^A, ^B) Syntax Thå commandó iî á *.VMÎ filå follo÷ á simplå structure® Eacè 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] 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 VMENU wait when the command is finished command is an optional ZCPR3 command; note that if the option is ":nn", then a command here makes no sense :nn Opt Thå  ":nn¢  optioî telló VMENÕ tï movå tï  á  differenô menõ  iî  thå  *.VMÎ file®  Thå firsô  menõ  ió  numbeò  1® Example: -x # 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 ## :nn Opt 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ï ZCPR3 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 ZCPR3 In the third menu, the user may strike: "2" or "<" or "," to goto Menu 2 "*" to goto Menu 1 ! Opt Thå  "!¢ optioî causeó VMENÕ tï pauså anä asë thå  useò tï "Strikå Anù Key¢ beforå continuinç afteò thå commanä linå haó  beeî processed®  Iî thió way¬  iæ á commanä  generateó informatioî  tï bå reaä bù thå useò beforå VMENÕ clearó  hió screen¬  thå "!¢ optioî maù bå useä tï givå thå useò alì thå timå hå wantó tï reaä thió display. "prompt" Embeddeä  withiî  anù commanä linå maù bå á prompô  foò useò input® Thió prompô takeó thå forí of "prompt to user" Wheî  encountered¬  VMENÕ wilì advancå tï thå nexô linå  anä prinô thå texô containeä withiî thå quotes® VMENÕ wilì theî waiô foò thå useò tï inpuô anù texô hå desireó followeä bù á RETURN®   Aô  thió  point¬  thå  texô  thå  useò  inpuô  ió capitalizeä anä placeä intï thå commanä linå aô thå poinô oæ thå prompt. Iæ  thå  prompô appearó aô thå enä oæ á  VMENÕ  commanä line¬  thå trailinç quotå ió noô required®  Aó manù promptó aó   desireä  maù  appeaò  withiî  á  VMENÕ  commanä   line® Examples: "prompt" -x # A - Run XDIR without Pause or Input B - Run XDIR and Pause before Returning to VMENU C - Run XDIR, Allow User Input, and Pause before Returning to VMENU M - Run MCOPY, Allow User Input of Dest Dir, Allow User Input of Source Dir and File, and Pause before returning to VMENU Z - Run Any ZCPR3 Command and Pause before Returning to VMENU # m!mcopy "Destination Dir? "="Source DIR:AFN? " z!"Enter Command Line -- axdir b!xdir c!xdir "Enter Ambiguous File Name -- ## "prompt" Notå  thå Spacå righô beforå thå "Prompô forí iî thå  Ã command®  Thió spacå ió significanô tï keeð thå commanä anä useò  inpuô froí runninç together®  Thió "ruî together¢  ió desireä  foò thå Ú command®  Alsï notå thå duaì prompô  foò thå Í command. Witè thå Í command¬  thå followinç promptó wilì  appeaò (anä samplå input): Destination Dir? BACKUP: Source DIR:AFN? *.TXT anä thå followinç commanä linå ió built: MCOPY BACKUP:=*.TXT Variables Thå  commanä  texô  whicè  ió specifieä  iî  thå  VMENÕ commanä linå caî contaiî embeddeä variableó whicè VMENÕ wilì expanä wheî thå commanä linå ió processed® Theså variables¬ whicè  arå denoteä bù á dollaò sigî ($© followeä bù  onå  oò twï characters¬ arå defineä aó follows: Variable Expands as -------- ---------- $D Current Disk $U Current User Area $Fn FILENAME.TYP for ZCPR3 System File n $Nn FILENAME for ZCPR3 System File n $Tn TYP for ZCPR3 System File n $Pp Name of File being Pointed to $$ Place a single $ in command line Theså  variableó  caî alsï bå useä iî thå menõ  displaù itself¬  anä  theiò  valueó  wilì bå  substituteä  wheî  thå displaù ió generated® Example: Variables -x # Menu to Run M80 Assembler Current File: $F1 Directory: $D$U F - Define File E - Edit $F1 P - Page $F1 A - Assemble $F1 # fsetfile 1 "Filename? " eedit $f1 azex m80 $n1 ppage $f1 ## Variables Notes: 1® Thå ZCPR³ utilitù SETFILÅ ió useä tï definå thå namå oæ  á  ZCPR³  Systeí File®  Therå  arå  fouò  Systeí  Fileó available¬  anä theù caî bå referenceä bù $F± tï $F4¬ $N± tï $N4¬ anä $T± tï $T4. 2®  Thå Á commanä showó thå executioî oæ ZEX® VMENÕ ió á truå ZCPR³ Shell¬ and¬ aó such¬ ZEØ commandó caî bå issueä froí  iô anä wilì ruî oî toð oæ it®  Thå prompô foò thå ZEØ commanä lineó wilì bå "Menu>". 3®  Assuminç thaô "MYFILE.MAC¢ ió assigneä tï thå ZCPR³ Systeí Filå ± anä thå useò ió loggeä intï disë  useò 1¬ thå followinç  screeî  showó ho÷ thå displaù anä  thå  resultinç commanä lineó wilì bå expandeä wheî executioî occurs: Variables Display Menu to Run M80 Assembler Current File: MYFILE.MAC Directory: B1 F - Define File E - Edit MYFILE.MAC P - Page MYFILE.MAC A - Assemble MYFILE.MAC Command Lines Menu Command Expansion fsetfile 1 "Filename? " SETFILE 1 "Filename? " eedit $f1 EDIT MYFILE.MAC azex m80 $n1 ZEX M80 MYFILE ppage $f1 PAGE MYFILE.MAC Highlighting Jusô  likå thå HELÐ utilitù caî takå advantagå  oæ  thå highlightinç facilitù provideä iî thå Z3TCAP¬  sï caî VMENU® Foò  thoså  ZCPR³  Systemó witè á  properly-installeä  TCAP¬ VMENÕ  wilì  uså  thå cleaò screeî commanä  tï  refresè  thå user'ó  screeî anä highlightinç caî bå enableä anä  disableä bù  embeddinç ^Á (tï turî oî highlighting© anä ^  (tï  turî ofæ highlighting© intï thå *.VMÎ file. Iô  ió recommendeä thaô wheî highlightinç ió turneä on¬ iô  shoulä  bå turneä ofæ iî thå samå linå  foò  consistencù sakå anä appearance. Example: Highlighting # ^AThis is highlighted^B and this is not # wilì appeaò witè "Thió ió highlighted¢ iî á highlighteä modå likå this: This is highlighted and this is not Variables Thå  $Pð  variablå ió alsï availablå tï thå useò  undeò VMENU®  $Pð returnó informatioî oî thå filå currentlù beinç pointeä tï bù thå useò oî thå screen® Thió variablå haó thå following forms: Form Expands Into $PF FILENAME.TYP of the pointed-to file $PN FILENAME of the pointed-to file $PT TYP of the pointed-to file Foò instance¬ iæ thå filå currentlù beinç pointeä tï ió named MYFILE.TXT, then the command line: ECHO FILENAME.TYP=$PF FILENAME=$PN TYP=$PT will output: FILENAME.TYP=MYFILE.TXT FILENAME=MYFILE TYP=TXT Variables Example: -x # Menu to Run M80 Assembler Directory: $D$U Å - Ediô Pointed-tï Filå Ð - Pagå Pointed-tï File A - Assemble Pointed-to File # eedit $pf azex m80 $pn ppage $pf ## Variables Notes: 1® Thå Å anä Ð commandó builä commanä lineó containinç the full file name and type of the file being pointed to. 2®  Thå Á commanä showó thå executioî oæ ZEX® VMENÕ ió á truå ZCPR³ Shell¬ and¬ aó such¬ ZEØ commandó caî bå issueä froí  iô anä wilì ruî oî toð oæ it®  Thå prompô foò thå ZEØ commanä lineó wilì bå "VMenu>". 3® Assuminç thaô MYFILE.MAà ió beinç pointeä tï bù thå user¬ thå followinç showó thå expansioî oæ thå commanä lineó for this example: Menu Command Expansion eedit $pf EDIT MYFILE.MAC azex m80 $pn ZEX M80 MYFILE ppage $pf PAGE MYFILE.MAC Variables Thå  firsô entrù iî anù VMENÕ filå displaù ió nameä "Nï File"¬  anä  thió  entry¬  wheî pointeä tï bù thå  useò  anä expandeä intï thå commanä line¬  ió translateä intï á prompô foò thå useò tï inpuô thå namå oæ á file®  Thió featurå  ió provideä  aó á conveniencå tï thå useò sï thaô hå wilì  havå thå  abilitù  tï easilù specifù ne÷ fileó whicè dï  noô  yeô exisô  tï thå VMENÕ commandó (sucè aó foò aî editoò  commanä in which the user wants to create a new file). Iæ  thå  pointeò ió aô "Nï File¢ anä thå  commanä  linå useó  severaì  referenceó  tï thå pointeò (aó  iî  thå  ECHÏ commanä examplå above)¬  theî thå useò ió prompteä onlù oncå foò  thå  namå oæ thå file¬  anä eacè referencå deriveó  itó information from this name. Closing Closing Notes Aó  manù commandó aó thå printablå ASCIÉ characteò  seô (withouô   lower-caså   letteró   anä  thå   VMENÕ   commanä characters©  wilì allo÷ arå permitteä bù VMENU®  Thå  text¬ however¬  foò eacè menõ musô bå ablå tï fiô oî á screeî witè thå filå directorù displaù aô thå toð anä thå commanä prompô aô  thå bottom®  Thió meanó thaô thå texô cannoô exceeä  1¶ lines. VMENÕ  fitó iî nicelù tï thå ZCPR³ Systeí oæ  programs® Thå  informatioî  sectioî oî "VMENU'ó  Relationshið  tï  thå ZCPR³  System¢  explainó  ho÷  VMENÕ  anä  thå  otheò  ZCPR³ programó worë together. Thå  followinç  ASCIÉ  characteró maù NOÔ  bå  useä  aó commandó sincå theù arå useä elsewhere: # % , . < > * :M VMENU Programming Command Summary Eacè  VMENÕ 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] 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 VMENU wait when the command is finished command is an optional ZCPR3 command; note that if the option is ":nn", then a command here makes no sense The VMENU 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 The VMENU variables are: Variable Expands to $D Current Disk $U Current User $Fn FILENAME.TYP for System File n $Nn FILENAME for System File n $Tn TYP for System File n $PF FILENAME.TYP for Pointed-to File $PN FILENAME for Pointed-to File $PT TYP for Pointed-to File $$ $ Noteº Systeí Fileó caî bå defineä bù thå SETFILÅ command. The Highlighting Embedded Characters are: ^A Turn ON Highlighting ^B Turn OFF Highlighting Noteº  Iô ió recommendeä thaô iæ highlightinç ió turneä  on¬ it should be turned off in the same line. Thå  followinç ASCIÉ characteró maù NOÔ bå useä aó  commandó sincå theù arå useä elsewhere: # % , . < > * :Z VMENU's Relationship to the ZCPR3 System VMENU¬ likå mosô oæ thå ZCPR³ utilities¬ interactó witè thå systeí aó á wholå anä cannoô bå useä witè systemó  otheò thaî  ZCPR3®   Iî  particular¬  VMENÕ  requireó  thå  ZCPR³ Multiplå  Commanä Linå Buffeò anä Shelì Stacë facilitieó  tï bå  availablå  tï  iô anä cannoô ruî  withouô  them®  VMENÕ invokeó  commanä  lineó  viá thå  Commanä  Linå  Buffeò  anä returnó  tï itselæ thrõ thå Shelì Stack®  Iô alsï useó  thå ZCPR³  Systeí Fileó foò somå oæ itó variableó anä thå Z3TCAÐ facilitù foò itó screeî manipulatioî (highlighting). VMENU is installed by Z3INS. Also¬ CÄ (Changå Directory© anä STARTUÐ (or¬ SÔ foò CD© caî  comå intï plaù witè VMENU®  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å Commanä Linå Buffeò witè  á  commanä linå anä theî terminate. Froí thå poinô oæ vie÷ oæ VMENU¬  thå commanä loadeä bù SÔ  coulä bå VMENU®  Thå effecô oæ thió ió tï automaticallù enteò  VMENÕ  wheî  thå useò employó CÄ  tï  enteò  á  giveî 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. No÷  thaô VMENÕ ió runninç foò thå directory¬  á  VMENÕ commanä  coulä  bå anotheò CÄ tï anotheò directory®  Oò  iô coulä simplù bå á DUº form® Example: # 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:®  VMENÕ ió thå nexô commanä iî botè caseó (invokeä aó á Shell)¬ sï VMENÕ automaticallù reinvokeó anä lookó foò MENU.VMN®  Iæ iô findó it¬  wå arå iî anotheò VMENÕ  system¬  and¬  iæ iô doesn't¬  wå arå bacë  tï  ZCPR³ commanä level. Undeò thå Á option¬ iæ CÄ findó ST.COM¬ SÔ wilì executå itó functioî and¬  unlesó thió functioî popó thå Shelì Stacë (SHCTRÌ  POР command)¬  VMENÕ  wilì reinvokå  afteò  iô  ió complete. Undeò  thå  option¬  wå wilì ruî VMENÕ nexô anä simplù exiô iæ á MENU.VMÎ filå ió noô found. VMENÕ  interactó  heavilù witè thå ZCPR³  Systeí  Fileó whicè  arå  defineä  aó  á parô  oæ  thå  ZCPR³  Environmenô Descriptor®  Therå arå fouò Systeí Files¬ anä threå oæ theí are used by VMENU for various purposes: File Purpose 2 Name of Current File 3 Name of Menu File 4 Name (containing wild cards) used to Select Files for VMENU File Display Systeí  Filå  ² containó thå namå oæ thå currenô  VMENÕ file®  Bù  changinç thió name¬  á transienô caî  causå  thå pointeò  oæ VMENÕ tï poinô tï somå otheò filå wheî VMENÕ  ió reinvoked. Systeí  Filå ³ containó thå namå oæ thå menõ filå whicè VMENÕ ió usinç tï derivå menõ displayó anä commanä from® Bù changinç thió entry¬  á transienô caî selecô differenô  menõ files dynamically. Systeí  Filå ´ ió useä tï indicatå whicè fileó (sucè aó *.TXÔ  oò *.*© arå selecteä foò displaù bù VMENÕ wheî iô  ió invoked®  Bù  changinç thió entry¬  thå naturå oæ thå  filå display can be changed dynamically. :E VMENU Error Messages Iî ordeò tï makå VMENÕ aó smalì aó possible¬  thå erroò messageó havå beeî reduceä tï á minimum®  VMENÕ provideó  á minimuí indicatioî thaô somethinç ió wronç anä aborts. Thå  prograí  VMENUCË  ió  designeä tï  telì  yoõ  morå specificallù  whaô  ió wrong®  VMENUCË ió  á  *.VMΠ Syntaø Checker¬ anä iô lookó foò alì sortó oæ erroò conditionó thaô caî occuò iî á *.VMÎ file. VMENÕ provideó thå followinç minimaì erroò messages: Message Meaning No Shell Stack Shell Stack Not Available No Command Line Command Line Buffer Not Avail Shell Stack Full Shell Stack is Full Shell Stack Size Shell Stack Entries are too short for VMENU cmd line File x.typ Not Found Menu File Not Found TPA Full Memory is Full User Command is in Error Structure Error *.VMN File Structure Error :2 Command: VMENUCK 1.0 Syntax: VMENUCK dir:ufn <-- default file type is VMN Function: VMENUCË ió useä tï checë thå syntaø oæ á *.VMÎ filå foò thå  ZCPR³ Menõ Shell¬  VMENU®  VMENÕ ió optimizeä foò sizå anä speed¬  and¬  iî deepinç iô small¬  built-iî diagnosticó werå reduceä tï thå minimum® VMENUCË ió intendeä tï bå useä tï  analyzå *.VMÎ fileó anä providå informativå  diagnosticó oî anù syntacticaì erroró witè them. Options: None Comments: VMENUCË checkó tï seå iæ thå sizå oæ thå *.VMÎ filå  ió toï largå foò thå TPÁ availablå tï thå VMENÕ command®  Thió ió aî additionaì checë beyonä thå normaì syntaø check. VMENUCË  identifieó  thå  locatioî oæ  erroró  bù  linå number® Thå firsô linå iî thå filå ió linå numbeò 1. Selected Error Messages: Self-Explanatory. Examples of Use: VMENUCK MYMENU -- perform check on MYMENU.VMN