home *** CD-ROM | disk | FTP | other *** search
- ZCPR2 Feature-Specific Utilities
- Initialization Routines
- ZCPRQ Status Routine
- Multiple Command Line Pointer Routine
- Path-Oriented File Search Routine
- File Status Routine
- :Introduction
- Thi≤ modulσ contain≤ ß serie≤ oµ routine≤ whicΦ arσ designeΣ ì
- t∩á allo≈ thσ programme≥ t∩ takσ advantagσ oµ ke∙ ZCPR▓á Feature≤ ì
- withou⌠ doinτ ß lo⌠ oµ programminτ fo≥ himself«á Iεá particular¼ ì
- facilitie≤ sucΦ a≤ thσ followinτ arσ provided:
- « Initializatioε -- Settinτ thσ locatioε oµ the
- multiple command line buffer
- . Initialization -- Defining the location of a command
- search path
- . Initialization -- Setting the current DMA address
- . Initialization -- Setting the current disk/user
- character definition
- . Initialization -- Setting all ZCPR2-Specific buffers
- from the standard utility buffers
- . Utility -- Returning a pointer to the first byte
- of the next command
- . Utility -- Searching for a file along the command
- search path
- . Utility -- Determining the attributes of a file
- « Utilit∙ -- Returninτ ß Pointe≥ t∩ thi≤ Module'≤
- buffers
- :Initialization Routines
-
- Routine Name: ZINIMC
- Function║
- ZINIM├ define≤ thσ basσ addres≤ oµ thσ multiplσ commanΣ ì
- linσá buffe≥ fo≥ thσ ZCPR▓ system«á Thσ initializatioε performeΣ ì
- b∙á thi≤á routinσá i≤ useΣ b∙ thσ ZMCPT╥ routinσá t∩á returεá thσ ì
- pointer to the first character of the next command.
- Inputs: HL = base address of multiple command line buffer
- Outputs: None
- Registers Affected: None
- SYSLIB Routines Called: None
- Specia∞á Erro≥ Conditions║ None
- Note║á Iµá thi≤ routinσ i≤ no⌠ called¼á i⌠ i≤ assumeΣá tha⌠ ì
- multiple command lines are not supported.
-
-
- Routine Name: ZINIEXT
- Function║
- ZINIEX╘á define≤ thσ basσ addres≤ oµ ßá commanΣá searcΦ ì
- path«á Thσá ZPFIN─á routinσ use≤ thi≤ basσ addres≤ t∩ star⌠á it≤ ì
- searcΦ fo≥ ß file«á Notσ tha⌠ thi≤ provide≤ addeΣ flexibilit∙ iε ì
- tha⌠á thi≤ neeΣ no⌠ necessaril∙ bσ thσ basσ addres≤ oµ thσá ZCPR▓ ì
- Systeφ commanΣ searcΦ path¼ bu⌠ i⌠ ma∙ bσ thσ basσ addres≤ oµ an∙ ì
- path (such as a separate path to look for HLP files).
- Inputs: HL = base address of path
- Outputs: None
- Registers Affected: None
- SYSLIB Routines Called: None
- Specia∞á Erro≥ Conditions║ None
- Note║á Iµá thi≤á routinσ i≤ no⌠ called¼á thσ externa∞á patΦ ì
- default≤ t∩ aε empt∙ path¼á s∩ n∩ harφ i≤ donσ anΣ n∩ searcΦá caε ì
- bσ performed.
-
-
- Routine Name: ZINIDMA
- Function║
- ZINIDM┴ define≤ thσ DM┴ addres≤ t∩ bσ useΣ b∙ thσ ZCPR▓ ì
- routines. If this routine is not called, 80H is assumed.
- Inputs: HL = DMA Address
- Outputs: None
- Registers Affected: None
- SYSLIB Routines Called: None
- Specia∞á Erro≥ Conditions║ None
- Note║á Iµ thi≤ routinσ i≤ no⌠ called¼á DM┴ Addres≤ default≤ ì
- t∩ 80H.
-
-
- Routine Name: ZINICI
- Function║
- ZINIC╔á define≤á thσ curren⌠ user/disδ indicato≥ t∩á bσ ì
- useΣ b∙ thσ ZCPR▓ routines«á Iµ thi≤ routinσ i≤ no⌠ called¼á '$º ì
- i≤ assumed.
- Inputs: A = Indicator
- Outputs: None
- Registers Affected: None
- SYSLIB Routines Called: None
- Specia∞á Erro≥ Conditions║ None
- Note║á Iµá thi≤á routinσá i≤á no⌠á called¼á thi≤á indicato≥ ì
- defaults to the character '$'.
-
-
- Routine Name: ZGPINS
- Function║
- ZGPIN╙á initialize≤ thσ ZCPR2-Specifiπ Buffer≤ froφ thσ ì
- ZCPR▓á Utilit∙ StandarΣ General-Purposσ Installatioε Forma⌠á Buf-ì
- fers«á Thi≤ i≤ t∩ bσ useΣ b∙ ZCPR▓ Utilities¼á sucΦ a≤ XDIR3¼ t∩ ì
- completel∙ initializσ al∞ thσ necessar∙ buffers.
- Thσ buffer≤ iε thσ utilitie≤ arσ locateΣ a≤ indicateΣ iε thσ ì
- ZCPR▓ Utilitie≤ Manual.
-
- Inputs: None
- Outputs: None
- Registers Affected: None
- SYSLIB Routines Called: MOVEB, ZINIMC, ZINIEXT, ZINIDMA,
- ZINICI, ZFNINIT
- Specia∞á Erro≥ Conditions║ None
-
- :ZCPRQ Status Routine
-
- Routine Name: ZCPRQ
- Function║
- Thi≤ routinσ return≤ ß pointe≥ t∩ thσ firs⌠ bytσ oµ thσ ì
- firs⌠ ZCPR▓ module≤ interna∞ buffers«á Thesσ buffer≤ contaiε ke∙ ì
- informatioεá necessar∙á fo≥ thσ prope≥ operatioε oµ thi≤á se⌠á oµ ì
- ZCPR2 routines. The structure of this buffer area is:
- Byte 0: Multiple Command Flag; 0 says no multiple
- command line buffer is available (No
- command line is assumed)
- Bytes 1-2: Address of Multiple Command Line
- Buffer if it is available
- Bytes 3-4: Address of ZCPR2 External Path
- (Points to an empty path if not
- initialized)
- Byte 5: Current User/Disk Indicator ($ if not
- initialized)
- Bytes 6-7: DMA Address (80H assumed)
-
- Inputs: None
- Outputs: HL = Base Address of Internal Buffers
- Registers Affected: HL
- SYSLIB Routines Called: None
- Specia∞á Erro≥ Conditions║ None
-
- :Multiple Command Line Pointer Routine
-
- Routine Name: ZMCPTR
- Function║
- ZMCPT╥á return≤ ß pointe≥ t∩ thσ nex⌠ characte≥ iεá thσ ì
- multiplσ commanΣ linσ iµ multiplσ command≤ arσ enabled«á ┴á flaτ ì
- is returned which says if multiple commands are enabled or not.
- Inputs: None
- Outputs: HL pts to next char in line
- A=0 and Zero Flag Set (Z) if multiple commands
- are not available; NZ otherwise
- Registers Affected: HL, PSW
- SYSLIB Routines Called: None
- Specia∞á Erro≥ Conditions║ None
-
- :Path-Oriented File Search Routine
-
- Routine Name: ZPFIND
- Function║
- ZPFIN─á searche≤á fo≥ ß filσ alonτ thσá commanΣá searcΦ ì
- patΦá whosσá basσ addres≤ wa≤ defineΣ wheε thσ programme≥á calleΣ ì
- ZINIEXT«á I⌠á log≤ int∩ eacΦ disδ anΣ use≥ areß alonτ thσá path¼ ì
- lookinτ fo≥ thσ filσ whosσ FC┬ i≤ pteΣ t∩ b∙ DE¼á unti∞ i⌠ eithe≥ ì
- find≤á thσ filσ o≥ reache≤ thσ enΣ oµ thσ patΦ (filσ no⌠á found)« ì
- Iµ thσ filσ i≤ found¼á i⌠ return≤ thσ disδ anΣ use≥ areß iε whicΦ ì
- thσ filσ resides«á ZPFIN─ alway≤ return≤ thσ proces≤ t∩ thσ disδ ì
- and user area it is "currently" logged into.
-
- Inputs: DE pts to the FCB of the file to find
- B is a flag; if B <> 0, search the current disk and
- user area first; if B=0, do not search the
- current disk and user area first
-
-
- ZPFIND, Con't
-
- Outputs: Zero Flag Clear (NZ) and A=0FFH if file found
- B = Disk (B=0 if Disk A), C=User if file found
- Zero Flag Set (Z) and A=0 if file not found
-
- Registers Affected: BC, PSW
-
- SYSLIB Routines Called: BDOS
-
- Specia∞á Erro≥ Conditions║ None
-
- :File Status Routine
-
- Routine Name: ZFSTAT
- Function║
- ZFSTA╘á determine≤á thσ attribute≤ oµ thσ filσá iεá thσ ì
- curren⌠ disδ anΣ use≥ areß whosσ FC┬ i≤ pteΣ t∩ b∙ DE«á I⌠ tell≤ ì
- the programmer if the file is SYSTEM or not and READ/ONLY or not.
- Inputs: DE pts to FCB of file
- Outputs: B=0 means file is NOT System, B<>0 means file is
- C=0 means file is NOT R/O, C<>0 means file is
- Zer∩ Flaτ Se⌠ (Z⌐ anΣ A=░ iµ filσ founΣ anΣ BC
- valid, and Zero Flag Clear (NZ) if file not
- found
- Registers Affected: BC, PSW
- SYSLIB Routines Called: BDOS
- Specia∞á Erro≥ Conditions║ None
- Note: ZFSTAT does NOT do a search.
-
-
-