;
                                   MCAT.COM                                   

             Size (recs) CRC   Version    Author/Latest Issue      Disk
              13k (97)   0E2A  6.0g       Hal Bower 2/89           Z3COM6

  1- Syntax  2- Operation  3- Configuration  4- Notes  5- Examples of Use     

   MCAT and its companion program, XCAT, form a powerful system for cataloging
and accessing a data base of files and disks.   With the addition of  a single 
file name on a disk, the entire contents of the disk directory, and members of
Library files, may be captured for later retrieval.   MCAT builds and modifies 
the data base while XCAT permits customized queries of the contents.

Version 6 expands date support  to include  ZSDOS and CP/M Plus  type of Date/
Time stamps, as  well as  providing  automatic support  for  ZCPR3 environment 
features  such  as  screen  addressing  and  attributes,  and  named directory 
support.  No installation is necessary under any ZCPR version 3.0 or later.
:1


   Syntax   MCAT<cr>	        <-- Enter interactive mode
	    MCAT [options]      <-- Immediate execution

  Options   $[d]                <-- add dates[d]
	    <[d]                <-- catalog drive D:
	    >[d][u]             <-- MAST.CAT on DU:
:2

 MCAT Operation 

   MCAT can operate in either  an interactive mode for  repetitive operations,
or in a command line driven  mode for  a single catalog operation.   If errors 
are detected during execution, operation will  revert to  the interactive mode 
for correction and optional re-execution.  This "expert" mode is automatically
set if command line arguments are detected.   When executed  from either mode,  
the screen  will  be  cleared  if  running  under ZCPR3 and  a  header will be 
displayed  on  the upper few lines of  the  display.   If no ZCPR3  Termcap is 
detected, the  information will  be scrolled  up  the screen  from the present 
cursor position.  

   Following is  a sample of  the initial  screen information.   Note that the 
lines listed  on the screen  before the  prompt  line  concerning  alternately  
placing disks on the drive will only be shown if the drive being cataloged and
the drive declared as  holding the catalog are the same.   This will rarely be 
the case in multi-drive systems, but the  added warning and prompts  are handy 
when needed to reduce the chance of errors.

+------------------------------------------------------------------------------+
|MCAT Cataloger  V6.0f (ZSDOS/DateStamper)               05 Feb 1989  08:59:29 |
| ^Log MAST.CAT : C8                     ^Drive to Add : C                     |
| ^Format : Users Dates                  ^Remove Volume                        |
| ^Initialize Catalog                                                          |
| ^Z - Redraw Screen                                                           |
|==============================================================================|
|For Help, reboot then type: MCAT //                                           |
|  Scratch Disk Must Remain In Drive A:                                        |
|                                                                              |
|The DISK TO BE CATALOGED and the CATALOG SYSTEM DISK                          |
|will alternately be placed in Drive C:                                        |
|                                                                              |
|Catalog Drive C:  (NO = Exit)   Ready? (Y/N) : _                              |
|                                                                              |
|                                                                              |
+------------------------------------------------------------------------------+


   If no recognizable clock driver is found  (Plu*Perfect Systems' DateStamper 
(tm), ZSDOS or CP/M Plus),  you will  be prompted to enter  the current month, 
day and year.  When a catalog including Date information is updated with MCAT, 
the current date is then added to the pseudo file  '+++nnnk.FRE'  which  shows 
the number of free kilobytes on the  disk.   By examining  this  entry in  the 
Master Catalog,  the date  of  cataloging  is then  known.    With  XCAT, this 
current  date is presented  in printed  and file output listings.   As  a side 
effect, if  a disk is cataloged on different days with no intervening changes,
that one file is deleted, and one added in the second operation.
 Commands - 1/3 

Five commands are available at any point from the main prompt (the last one on
the screen shown above).  These commands are:

 ^D  (Control-D) - Define  the  disk  drive  to  catalog.   A  command  prompt 
     (beginning with '==>') is issued, and a single character is accepted with 
     no  carriage  return.   If  a space,  carriage  return,  or other control 
     character is entered, no change is made to the current drive.

 ^L  (Control-L) - Log  the  drive  and user  area  which  contains (or should 
     contain) the MAST.CAT Master Catalog file.   The expected  response i s a 
     letter followed by one or more numbers.  If only a letter is entered, the 
     user ares is unchanged.   If only a number is entered, then the currently 
     selected drive is retained, and the user area is changed.  The  entry  is 
     terminated when a non-numeric character is  detected.   NO EDITING of the 
     entry is supported  (e.g. backspace).   If the first character entered is 
     a space or carriage return, the current selection is unchanged.
 Commands - 2/3 

 ^I  (Control-I) - Initialize  a  MAST.CAT file on the currently selected disk 
     and user area.   To  avoid inadvertant  erasure  of  an  existing  Master 
     catalog, two levels of  protection  are provided;  First,  a confirmation 
     prompt is given,  and secondly,  MCAT renames  any  existing  MAST.CAT to 
     MAST.BAK.

 ^F  (Control-F) - Change the Format to be used for the MAST.CAT.  Two Command 
     prompts (beginning  with ==>)  are  given  which  expect  Yes or No (Y/N) 
     responses.   These define whether or not to include USER and DATE entries 
     in the Master Catalog.

 ^R  (Control-R) - Remove  references  to  a  specified  disk.   The  user  is 
     prompted to enter a disk name.  This should match the name of a disk (the 
     leading dash is shown in the prompt) to be deleted.   To insure that this 
     is OK, a confirmation prompt is issued  which expects  a 'Y/N'  response.  
     All MAST.CAT entries containing this  name as  a disk ID will be  removed 
     from the catalog.  Editing (backspace) is supported during name entry.
 Commands - 3/3 

 ^Z  (Control-Z) -  The terminal screen is  cleared  and  redrawn.  This is to 
     support programs that  may  be  activated  from  within  your  system and 
     destroy the screen.


   At any point in the program where  Yes  or  No  responses are expected, the
following conventions apply:

   NO  = 'N', 'n', Control-C, or Control-X.
   YES = 'Y', 'y', Carriage Return  (Control-M),  Space,  all other characters
	           not covered by NO.


   To exit MCAT,  simply respond with  a NO answer to  the main command prompt
that asks if the disk to  be cataloged is installed in the  correct drive.   A 
warm boot will then be performed back to CP/M.
 Interactive Mode 

   Interactive mode is  initiated  by  adding  arguments  to the command line.
Each option is  preceeded with  a special character.   Any or all of the three
parameters may be added in any order.  These parameters are:

  < - indicates that the following character  designates the  disk drive to be
      be cataloged.  Can be followed by an optional colon for clarity.

  > - indicates that the following parameters  designate  the driver/user area
      where the desired MAST.CAT file is to be found.   A letter indicating  a 
      drive, a number in the range of 0-31, or both may follow this symbol.

  $ - specifies the format of the MAST.CAT entries.   When detected, both USER
      and DATE capabilities  are  turned  off,  and  must be explicitly reset.  
      Follow this symbol with a "D" for Dates to be included, and "U" for user
      areas to be included.  Either one or both characters are accepted.

   If any of  these  parameters  are missing  from  the  command line, default 
parameters are assumed.  These defaults can be changed using ZCNFG. 
:3
 Configuration 

   MCAT is  configured  using  ZCNFG  vs 1.3  or later.   Options  and default 
settings are  contained in  MCAT6.CFG.   Configuration  should  be  relatively 
self-explanatory for each program, and Help is available for each program from 
within ZCNFG.  

   For those who  desire  a  graphics  string  to  generate  a horizontal line 
instead of a single character,  a method of defining a character string  of up 
to 16 characters by using  the file CAT6GPH.Z80.   This  file  defines  a flag 
value and the user-supplied string at the needed address in the header section 
of both MCAT6 and XCAT6.   It should  be assembled to a HEX file and overlayed 
on the programs with MLOAD or a debugger such as DDT.
:4
 MCAT Notes - 1/3 

   a. Version 6 updates: 
      - cataloging of date-stamped disks by DateStamper(tm), CP/M Plus, or any
        flavor of ZSDOS.
      - addition of Library (file type LBR) members to the catalog.
      - ability to retrieve files based on Date specifications with XCAT.
      - operation under CP/M 2.x, ZRDOS 1.x, ZSDOS and CP/M Plus.
      - automatic screen installation under ZCPR 3.x.
      - named directory support under ZCPR 3.x.
      - retention of original Catalog Creation Date if stamping used.
      - backward  compatability   with  Version  5  catalogs   with  automatic
        conversions as necessary.
      - enhanced user feedback, particularly under ZCPR 3.
 MCAT Notes - 2/3 

   b. To indicate that a file in the data base is contained in  a library, the 
      Most Significant Bit is set in the last character of the File Type,  and 
      the Disk Name field of  the record  entry (normally blank)  contains the 
      name of the  parent LBR file.   If user data is included in the catalog, 
      it will be set to that of the parent library file.   If date information 
      is included,  it will  be extracted from the library, or  set  to a null 
      field if no dates are present.  

   c. Previous MCAT versions used a fixed size for the subject disk directory, 
      and permitted up to 2048 directory entries on  larger systems.   Since a 
      priori knowledge of the exact size cannot be known with library files, a 
      dynamic scheme was developed which should permit slightly more than 2100 
      names to exist for a single disk with a system size in excess of 53k.  A 
      warning is issued if all files cannot be added,  and users are given the 
      option of cataloging just the primary files, or aborting the operation.
 MCAT Notes - 3/3 

   d. Some deficiencies in previous versions have been corrected in Version 6.
      The  most significant include the  possibility for Catalog corruption by 
      commas in  file  names,  and  the  failure  to properly  add valid files 
      beginning with a dash  to the data base.   Neither  of  these weaknesses 
      exist in Version 6.
:5

 Examples of Use 

   a. MCAT6 <A >B10 $U   <-- Catalog the 'A' drive, Look for MAST.CAT on drive
      MCAT6 <A: $U >B10:     'B' User area 10,  Catalog  only  file  names and 
                             User areas.

   b. MCAT6 <C $DU       <-- Catalog the 'C' drive,  Look for MAST.CAT  on the
      MCAT6 <C $UD           default drive  in  default  area,  Catalog  names 
      MCAT6 $DU <C:          w/Date and User areas

   c. MCAT6 $            <-- Catalog default drive,  Look for MAST.CAT  on the
                             default drive in default area, Catalog only Names