;
                                 LOCNDO.COM                                   

             Size (recs) CRC   Version    Author/Latest Issue      Disk
LOCNDO.COM     4k (28)   006C  1.2        Greg Minor 7/89          Z3COM5
LOCNDO.IOM     4k (30)   0327  1.2        Greg Minor 7/89          Z3COM5
LOCNDO.80M     4k (28)   A711  1.2        Greg Minor 7/89          Z3COM5

  1- Syntax  2- Patching  3- Notes  4- Examples of Use  5- Patch File         


   LOCNDO, for LOCate aNd DO something with it, is useful mainly as part of an
alias script,  where  a specified operation is  to  be  performed on a file of 
unknown location.

   LOCNDO.COM is for external environment, loads and executes at 0100h.
   LOCNDO.8OM is for external environment, loads and executes at 8000h.
   LOCNDO.IOM is for internal environment, loads and executes at 0100h.
:1
    Syntax   LOCNDO filename.ext cmd $ cmdtail

   LOCNDO has  two  modes  of  operation.   First,  it acts  as  a simple file 
locator.  If a filename is passed to the program,  each drive and user will be 
searched in turn for the specified file.  Wild cards are accepted.  Each match
is reported to the Console.

   Second,  LOCNDO is designed to act on the first match of the specified file 
specification.   When the program finds the token "$" in  the command line, it 
places the command tail in the CL buffer in the form:

            CMD DU:FILENAME.EXT CMDTAIL

substituting the  drive/user  and  filename for  the $ token.   The  token may 
appear as many times as required on the command line; the substitution will be
made for each occurence.   Wildcards are  not recomended  when  the program is
used in this fashion as the first match is always the one acted upon.
 Special Options 

   A drive name may  be specified in the command line for the target file.  In
cases  where  the  specified  drive  conflicts  with  either  the  patch table 
(explained below) or  the  ENV/BYE  limits,  then the  later are  used: ie. no 
search is performed.

   If the Wheel byte is on,  then system files are included in the search.  If 
you are using LOCNDO under  a BBS environment as I am and want system files to 
be included in some cases, the wheel byte may be set/reset temporarily as part 
of the alias script.   This ensures that users absolutely cannot access system 
files unless you intend them to.   I chose  this route rather than including a 
switch to enable system file searches.  
:2
 Patching Instructions 

   A patch table exists near the beginning of the code.   The  byte  following 
"LOMDU>" should  be  set to  zero  if  you're not  concerned with  BYE and its 
associated  utilities   which  unfortunately  know  nothing  about   the  ZCPR 
ENVironment.  If set to Zero, LOCNDO will respect the drive/user limits at 3DH
and 3FH respecively.   Otherwise,  Z3ENV limits will be used when the wheel is 
off.   If a user is priviliged,  WHEEL ON, then LOCNDO always uses environment
limits.  In either case, the following takes precedence.

   The 16 bytes following the tag "DRIVES>" represent drives A to P.   Set the
appropriate bytes to zero or nonzero to  make LOCNDO skip the respective drive 
in its search.
:3
 LOCNDO Notes 

   a. Version 1.2 is up to 32 times faster,  depending  on the number  of user
      areas searched.  LOCNDO now searches the entire directory at once rather
      than by individual user areas

   b. Version 1.1 scans current directory first.  This will speed things up in 
      cases where the  requested file  exists in the current DU.   Patch  tags 
      have been added to the code and patch tables removed.  A drive table has
      been added so that specific drives may be excluded from the search.
:4
 Examples of Use 

   a. LOCNDO $1 KMD S $$   

      - locates a  file and  then initiates its transfer.   BBS users  who are 
        unaccustomed to  multiple directories need not bother with finding the
        file they  want,  changing directories and then  starting  up  KMD,  a 
        process which some find nearly impossible.  

   b. FILE=FIND LOCNDO $1

      -  simply locates matching files and reports their location to the user.
:5
                              LOCNDOPT.HEX 
                             
             Size (recs) CRC   Version    Author/Latest Issue      Disk
               1k (3)    8FB5  n/a        Bruce Morgen 8/91        Z3COM11
==============================================================================

   Patch to convert Type 2  LOCNDO.COM into  a Type 1 with  ZCPR3 drive vector
support.   If an  extended  environment is found,  its bit-mapped drive vector
is transferred to LOCNDO's valid-drive bytes.   The patch  also  makes  LOCNDO
honor a standard  "//"  ZCPR3  help  query  from the  user  and  tests for the
presence of a valid  ENV  before  letting  LOCNDO  run.   Simply  MLOAD/MYLOAD
LOCNDOPT.HEX to create a Type 1 COMfile. 
