Redirectable I/O Under ZCPR2 and SYSIO Loading Redirectable I/O Drivers -- IOLOADER Displaying and Selecting Redirectable I/O Drivers -- DEVICE Controlling the Disk Output Facility -- RECORD Redirectable I/O and the ZCPR2 System :Redirectable I/O Under ZCPR2 Basically¬  thå  concepô  oæ redirectablå I/Ï  involveó  thå assignmenô  oæ physicaì deviceó tï logicaì  devices®  ZCPR²  anä CP/Í supporô fouò logicaì devices: CON: - Console - An I/O Device for User/System Commo LST: - Printer - An Output-Only Device for Printouts RDR: - Reader - An Input-Only Device PUN: - Punch - An Output-Only Device Undeò  CP/M¬  therå arå onlù fouò physicaì deviceó whicè maù bå  assigneä tï eacè oæ thå fouò logicaì devices®  Undeò  ZCPR2¬ therå  maù  bå aó manù physicaì deviceó aó desireä whicè  maù  bå assigned to each of the four logical devices. Á   "physicaì  device¢  iî  thå  traditionaì  senså   ió   á conventionaì I/Ï device¬  likå á CRÔ oò á Printer®  Iî thå senså oæ ZCPR2¬  iô ió á devicå driver¬  oò bodù oæ software¬  whicè ió communicateä witè viá thå BIOS®  Thió bodù oæ software¬ iî turn¬ may communicate with any device OR SET OF DEVICES that it wishes. SYSIÏ  ió á samplå seô oæ Redirectablå I/Ï Driveró  designeä tï bå useä witè ZCPR² oî mù system®  Undeò SYSIO¬  thå followinç "physical devices" are implemented: CON: Devices - TTY CRT CRT Input and CRT/Remote Computer Output CRT and Modem Input and CRT and Modem Output in Parallel CRT Input and CRT/Modem Output LST: Devices - TTY CRT Modem Remote Computer RDR: and PUN: Devices - Modem Clock Aó  yoõ  caî  see¬  thå "physicaì devices¢ undeò  ZCPR²  caî actuallù  bå combinationó oæ actuaì devices®  Thå CRÔ Inpuô  anä CRT/Remotå Computeò Outpuô device¬ foò instance¬ ió useä tï allo÷ a remote computer record screen displays which go to the CRT. Undeò ZCPR2¬  yoõ caî creatå aó manù sets¬  oò packages¬  oæ Redirectablå I/Ï Driveró aó yoõ wish® Eacè packagå caî bå seô uð tï givå thå useò differenô typeó oæ capabilities®  Foò instance¬ onå  packagå  caî  bå likå thå onå É  havå  defineä  abovå  whilå anotheò  packagå caî providå Disë Recordinç capability¬  sucè  aó CRT Input and CRT/Disk File Output. Thå  ZCPR²  Systeí  oæ  Programó  containó  threå  utilitieó designeä tï supporô thå Redirectablå I/Ï System® Theså utilitieó and their functions are: IOLOADER -- Load a Redirectable I/O Package DEVICE -- Display and Select Physical I/O Devices RECORD -- Turn on and off the Recording Facility Thió  HELР Filå discusseó theså utilitieó anä ho÷ theù  arå intended to be used. Chapteò  ·  oæ  thå "Conceptó Manuaì  foò  ZCPR2¢  discusseó redirectablå  I/Ï  aó  iô caî bå implementeä  undeò  ZCPR2®  Thå reader is invited to refer to this for much more detail. :Loading Redirectable I/O Drivers -- IOLOADER IOLOADEÒ  ió useä tï loaä aî indicateä oò implieä I/Ï driveò packagå  intï  youò redirectablå I/Ï buffeò  area®  IOLOADEÒ  ió invoked by one of the following forms: IOLOADER // <-- Print Help Message IOLOADER <-- Load SYSIO.IO IOLOADER filename <-- Load filename.IO IOLOADER filename.typ <-- Load filename.typ Notå  thaô  thå  DIRº  prefiø ió  NOÔ  supporteä  witè  thió program®  Iî alì caseó oæ loadinç files¬ IOLOADEÒ searcheó alonç thå ZCPR² patè foò thå indicateä oò implieä file® Oncå found¬ iô is loaded into your redirectable I/O buffer. GENINÓ  ió useä tï instalì IOLOADER¬  anä IOLOADEÒ neeä onlù kno÷ thå addresó oæ thå externaì path¬ thå symboì foò thå currenô useò anä disë indicatoò ("$¢ bù default)¬  anä thå addresó oæ thå redirectable I/O buffer. :Displaying and Selecting Redirectable I/O Drivers -- DEVICE DEVICE¬  oò  DEVICE²  (sï calleä becauså iô  ió  thå  seconä generatioî  oæ mù DEVICÅ program)¬  ió useä tï allo÷ thå useò  tï interactivelù displaù thå nameó oæ thå availablå physicaì deviceó (actually¬  devicå  drivers© whicè maù bå assigneä tï thå logicaì deviceó  anä tï allo÷ thå useò tï assigî á physicaì devicå  tï  á logical device by name. DEVICE is invoked by one of the following forms: DEVICE // <-- Print Help Info DEVICE <-- Enter Interactive Command Mode DEVICE cmd,cmd,... <-- Immediately Execute Commands Iî  alì cases¬  wheneveò yoõ arå givinç commandó tï  DEVICE¬ whetheò  iô  ió  froí thå commanä leveì oæ ZCPR² oò  froí  withiî ŠDEVICÅ itself¬  yoõ caî specifù á serieó oæ commandó separateä bù commas. The following commands can be given to DEVICE: DISPLAY ALL or CON or LST or RDR or PUN <-- Display Physical Device Driver Names which can be assigned to CON:, LST:, RDR:, or PUN: Logical Devices; also display the current assignment CON or LST or RDR or PUN = Device <-- Assign a Physical Device Driver to a Logical Device Iî alì cases¬ onlù thå firsô letteò oæ DISPLAÙ anä thå firsô letteò oæ á Logicaì Devicå oò thå worä "ALL¢ ió  necessary®  Alì otheò  letteró  arå ignored®  Thå completå namå oæ  thå  device¬ however, is necessary. Also¬   thå   spacå  anä  thå  characteò  "=¢  maù  bå  useä interchangably and case is not significant. The following are examples of DEVICE commands: D C,D L or D=C,D=L Display CON: and LST: Devices con:=crt,list=tty,reader=modeí oò c=crt,ì tty,r=modem Select the Physical Device Driver called CRT for the CON: Logical Device, select TTY for the LST: Logical Device, and select MODEM for the RDR: Thå  followinç terminaì sessioî furtheò illustrateó thå  uså oæ DEVICÅ witè mù particulaò seô oæ Redirectablå I/Ï Drivers® Mù comments are indicated by <<--. B7>device display console DEVICE2, Version 1.3 CON: Devices -- CRTMOD2 - Televideo 950 CRT Input and CRT/Modem Output CRTREM - Televideo 950 CRT Input and CRT/Remote Output CRTMOD - Televideo 950 CRT and Modem in Parallel CRT - Televideo 950 CRT TTY - Model 43 Printing Terminal Current Assignment: CRTMOD B7>device DEVICE2, Version 1.3 DEVICE2 Interactive Command System Type ? and Strike RETURN for Help DEVICE2 Command? d l,lst:=modem <<-- Multiple Commands in <<-- Free Format LST: Devices -- MODEM - DC Hayes Smartmodem REMOTE - Remote Computer CRT - Televideo 950 CRT TTY - Model 43 Printing Terminal Current Assignment: TTY DEVICE2 Command? display list LST: Devices -- MODEM - DC Hayes Smartmodem REMOTE - Remote Computer CRT - Televideo 950 CRT TTY - Model 43 Printing Terminal Current Assignment: MODEM DEVICE2 Command? l tty <<-- Assign Device DEVICE2 Command? l ttyx <<-- How DEVICE Handles Errors Invalid Name Assignment at -- TTYX DEVICE2 Command? d l LST: Devices -- MODEM - DC Hayes Smartmodem REMOTE - Remote Computer CRT - Televideo 950 CRT TTY - Model 43 Printing Terminal Current Assignment: TTY DEVICE2 Command? ? <<-- Built-In Help DEVICE2 Commands are of the form: Command,Command, ... <-- Issue Commands where "command" may take the following forms: DISPLAY=ALL <-- Display Names of All Devices DISPLAY=CON <-- Display Names of Consoles DISPLAY=LST <-- Display Names of Printers DISPLAY=RDR <-- Display Names of Readers DISPLAY=PUN <-- Display Names of Punches CON:=name <-- Select Console LST:=name <-- Select Printer RDR:=name <-- Select Reader PUN:=name <-- Select Punch A command line beginning with a semicolon (;) is a comment. The X Command Exits DEVICE2. DEVICE2 Command? x <<-- Exit :Controlling the Disk Output Facility -- RECORD RECORÄ  ió  useä tï controì thå Disë Outpuô Facilitù oæ  thå Redirectablå I/Ï Drivers®  Copieó oæ Consolå anä Printeò outputó caî bå createä iî disë fileó bù thå uså oæ thió facility¬  anä iô maù bå extendeä intï á numbeò oæ otheò applicationó aó well. RECORD is invoked by one of the following forms: RECORD or RECORD // <-- Get Help RECORD ON or OFF <-- Console Recording RECORD ON or OFF PRINTER <-- Printer Recording Foò RECORÄ tï perforí itó function¬  iô musô bå  implementeä iî thå Redirectablå I/Ï Drivers® Thió ió lefô aó aî exerciså foò thå  reader®  Thå  Redirectablå I/Ï Driveró supplieä witè  ZCPR² havå  simplå RETurî instructionó aó thå subroutineó  executeä  bù the RECORD functions. Fouò  routineó  arå accesseä iî thå Redirectablå I/Ï  Driveò package to control the RECORD function. They are: COPEN -- Open File for Recording Console Output LOPEN -- Open File for Recording List Output CCLOSE -- Close File for Recording Console Output LCLOSE -- Close File for Recording List Output Iî  thå caseó oæ COPEÎ anä LOPEN¬  theù arå passeä á pointeò tï  thå  firsô twelvå byteó oæ aî FC iî HL®  Theù arå  tï  copù theså  twelvå  byteó  intï theiò internaì FCBó anä  uså  theí  tï definå thå filå names®  Typically¬ thå outpuô fileó generateä bù thå  RECORÄ functioî arå placeä iî thå currenô  directory¬  althï thå  Redirectablå  I/Ï Driveró maù bå configureä  tï  placå  theí anywherå desired. Wheî  RECORÄ  ió  invokeä  tï  turî OΠ onå  oæ  thå  recorä functions¬ iô promptó thå useò foò thå namå oæ thå filå tï recorä into® RECORÄ theî calló thå appropriatå OPEÎ routine. Thå  RECORÄ  prograí knowó iæ disë filå outpuô  driveró  arå availablå thrõ thå Redirectablå I/Ï Packagå Statuó  Routine®  Iæ Registeò Á ió returneä witè thå high-ordeò biô set¬  sucè driveró arå available. RECORÄ  ió tieä intï thå Redirectablå I/Ï Packageó anä workó witè  them®  Thå readeò ió inviteä tï refeò tï thå  Installatioî Manuaì  anä  thå  Conceptó  Manuaì  foò  furtheò  detaiì  oî  thå organizatioî anä functioî oæ sucè packages. RECORÄ ió alsï indirectlù tieä intï DEVICE® Invokinç RECORÄ itselæ   doeó  noô  necessarilù  starô  thå   recordinç   procesó immediately®  Twï  functionó musô takå placå tï begiî  recordinç outpuô ontï disë files: 1) RECORD has to turn the appropriate Driver ON 2) DEVICE has to select the appropriate Driver Thió leadó tï interestinç possiblities®  Bù turninç  RECORÄ OFÆ  durinç  á recordinç session¬  thå outpuô filå ió closeä  anä availablå  foò otheò uses®  Iæ RECORÄ ió lateò  turneä  ON¬  thå outpuô  filå  maù  bå deleteä (iæ thå samå filå  ió  selecteä  tï recorä into)®  However¬ iæ á ne÷ devicå ió selecteä whilå RECORÄ ió  OΠ (say¬  DEVICÅ  CON:=CRÔ ió  issued)¬  theî  recordinç  ió SUSPENDEÄ (NOÔ turneä off© untiì thå recordinç devicå ió selecteä again®  Hence¬  iæ  iô  lookó likå thå recordinç sessioî ió  noô goinç well¬  recordinç caî bå suspended¬  thå probleí fixed¬  anä theî recordinç caî bå resumed. Thió  combineä systeí oæ DEVICÅ anä RECORÄ provideó  á  verù flexiblå  outpuô  recordinç  system®  Iî  addition¬  thå  outpuô recordinç  neeä noô necessarilù gï tï á disë file®  Iô coulä  bå seô uð tï senä CONº outpuô tï thå CRÔ and¬ say¬ á Remotå Computeò foò  processing®  Thå systeí caî bå configureä iî á largå numbeò oæ ways. :Redirectable I/O and the ZCPR2 System Thå  ZCPR² Systeí caî functioî witè oò withouô  Redirectablå I/Ï  aó implementeä bù thå Redirectablå I/Ï Driveò  Packageó  anä thå IOLOADER¬  DEVICE¬ anä RECORÄ programs® Obviously¬ thå ZCPR² System is made much more flexible by employing these facilities. DEVICÅ  anä RECORÄ arå tieä directlù tï thå Redirectable I/Ï Packageó themselves® Theù don'ô uså anù oæ thå otheò featureó oæ thå  ZCPR² Systeí tï speaë of¬  anä theù arå installeä bù  GENINÓ (theù neeä tï kno÷ wherå thå Redirectablå I/Ï Buffeò ió located)® IOLOADEÒ alsï needó tï bå tolä wherå thå Redirectablå I/Ï  Buffeò ió  locateä  bù GENINS¬  anä iô useó thå ZCPR² patè tï  finä  itó files. Thå  programó  controllinç thå Redirectablå I/Ï Driveró  arå tied together in this manner: IOLOADER loads the drivers DEVICE controls the drivers RECORD enables and disables the disk recording facilities of the drivers