;
                                 SETPATH.COM                                  

             Size (recs) CRC   Version    Author/Latest Issue      Disk
SETPATH.COM    4k (27)   D71E  1.1        Bruce Morgen 6/91        Z3COM19
SETPATH.4OM    4k (32)   94E9  1.1        Bruce Morgen 6/91        Z3COM19

  1- Syntax  2- Usage  3- Notes  4- Examples of Use                           

   SETPATH is a highly enhanced derivative of the ZCPR3 utility  PATH.COM.  It
allows the new path to  be  defined  on  the  basis of  the  existing  path --
elements can be  added or  deleted from either end of the path, along with the
standard  PATH.COM  functions of  displaying  or  replacing  the  entire  path
expression.  

   SETPATH was written by R.I. Demrow (3/8/87) and is  derived from ZCPR3 PATH
vs 3.1 (4/12/84) and ZCPR2 PATH 1.0 (1/12/83) by Richard Conn.  While probably
too elaborate for the needs of many users, it is a far more flexible tool than
PATH.
:1
   Syntax   [option element-list] ... [option element-list]

  Options   /C    <-- clear path and put in new element list

            /P    <-- prefix list of elements to the beginning of the 
                      current path

            /A    <-- append list of elements to the end of the 
                      current path

            /D    <-- delete listed elements from the path starting
                      from the beginning of the current path

            /R    <-- remove listed elements from the path starting
                      from the end of the current path
:2
 Usage - 1/2 

   SETPATH performs each operation independently.  Consequently, the command:

                         SETPATH /P A1 /A B1

      is equivalent to   SETPATH /P B1 A1

               and NOT   SETPATH /P A1 B1


   The temporary prefix and temporary append buffers  are each limited in size
to the size of the sytem's symbolic path buffer.
 Usage - 2/2 

   SETPATH sets the program error flag in the  ZCPR3 message buffer to reflect
the result of the  command  operation.  If all  succeeded,  the  error flag is
cleared to a value of zero.  Otherwise it is set to one of the following 
values to show the type of error that occurred:

      1.   there is no external path buffer
      2.   the wheel byte is not set
      3.   an illegal option was specified
      4.   the final path is empty
      5.   too many elements for the temporary path buffer
      6.   too many elements in final symbolic path
      7.   too many elements in the temporary prefix buffer
      8.   too many elements in the temporary append buffer
      9.   bad path expression (e.g., nonexistent directory name)
:3
 SETPATH Notes 

   a. Version 1.1 updates (6/6/91, Bruce Morgen):
      - Added command line quiet option.
      - Code revised to  bring  the  Type 4  SETPATH  below  4k  (32 records).
        Although it's  algorithmically excellent,  the coding style of SETPATH
        1.0 was both 8080-bound and  sometimes  downright  inefficient.   This
        version requires Z80  compatibility,  and many (surely not all) of the
        inefficiencies have been remedied.   When linked as a Type 4,  SETPATH
        1.1 allocates buffer space below the  program,  while  Type 3 linkages
        will continue to  allocate  from  $memry  on  up,  as in  Version 1.0.
      - Help message now  shows  the program's invocation name, type, and load
        address, as well has a line of text  about  the  new  quiet  option (a
        trailing "Q" or "/Q").  
      - A Type 3 safety  header  has  NOT  been  added,  and  it  is  strongly
        recommended that Type 3 executables be linked at 100h.
:4
 Examples of Use 

   The following examples assume an initial path of 'A0 $$ A0'.

   a. SETPATH /A A15             <--  resulting path  A0 $$ A0 A15

   b. SETPATH /P A1 B1           <--  resulting path  A1 B1 A0 $$ A0

   c. SETPATH /D A0              <--  resulting path  $$ A0

   d. SETPATH /R A0              <--  resulting path A0 $$

   e. SETPATH /P A1 /R A0 /A A$  <--  resulting path A1 A0 $$ A$
