[comp.os.cpm] Joe Loda's Questions

SAGE@LL.ARPA (10/21/87)

 
     The following is a reply to questions posed by Joe Loda several weeks
ago.  I am posting to the net for general interest.
 
     I don't know if anyone else stepped in to answer your queries about
ZCPR3.  I hope so, since I have been so busy the last several weeks that I
have not had time to answer mail.  I don't have much time now either, but I
will try to provide some very quick answers.  I have or will be covering
some of these things in my column in The Computer Journal.
 
 
  1).  Just what does an ECP do?  ARUNZ seems to be the choice, but I
       don't know why.  Is there any doc for ARUNZ floating about?
 
     The ECP (extended command processor) comes into play when the command
processor cannot process the command as a resident command in the CCP, FCP,
or RCP or as a transient command (COM file).  ZCPR3 then loads the
designated extended command processor file (typically CMDRUN.COM) and passes
the user's command to it as an argument.  Thus if you entered "DO SOMETHING"
and DO.COM could not be found, the command would run (almost) as if you had
entered "CMDRUN DO SOMETHING".
 
     You can rename any of a number of programs to CMDRUN.COM to serve as
the ECP.  Indeed, ARUNZ is the one of choice in my opinion.  More about that
later.  Other possibilities are:
 
    ZEX or SUBMIT       will automatically run a batch file entered as
                        a command name (as with SUB in CP/M3 systems)
 
    LX                  automatic extraction of the COM file from
                        COMMANDS.LBR
 
     ARUNZ is an alias generator.  There is a file ARUNZ.HLP on my remote
access system (617-965-7259, 24hrs, 300/1200/2400, PW=DDT), but few people
seem to have paid any attention to it (find it and other ARUNZ material with
the command "FF ARUNZ").  It is a little outdated at this point but should
serve as a guide.
 
     Basically, you create a text file called ALIAS.CMD with the alias
scripts you want to use.  Each line of the file is a separate script.  At
the very beginning of the line is the name (or names) for the script. 
Multiple names can be connected by '=', each name can have the wildcard
character '?' or a period.  Characters after the period do not have to be
present, but any characters that are present much match (see examples
below).
 
       A space or tab character separates the script name from the script
commands.  The script recognizes a wide range of parameters for performing
complex command generation.  Any command line token can be parsed into its
drive, user number, file name and file type components; system file names
can be substituted; memory and register contents can be read; the user can
be prompted for input.  The parameters are described in ARUNZ.HLP (though
there are a couple of new features not covered there).  Here is a sample
line:
 
        FINDF.ILE=FILE.FIND=WH.EREIS=WIS ff $*
 
This line will respond to any of the following user commands on the left,
translating them to the commands on the right:
 
        findf *.doc             ff *.doc
        where w*.*              ff w*.*
        wis arunz.hlp /e        ff arunz.hlp /e
 
The $* parameter in the script stands for the entire command tail.
 
 
  2).  Is there any documentation for the utilities?  I have ZCPR3, The
       Manual, but it doesn't talk about any of the new ones.  The .LBR
       files contain only update information (ARUNZ is a case in point).
 
     "ZCPR3, The Manual" is unfortunately quite out of date at this point. 
You can get some basic information about almost any ZCPR3 utility by
entering it with a tail of '//' (e.g., A0:BASE>PROGRAM //).  For more
detailed information, look for a DOC file with the distribution library or
read the beginning of the source code (even if you don't know assembly
language).  And don't forget to look around for a .HLP file.  The latter may
be in a separate HELP directory on many systems.
 
     Documentation is a real problem.  I don't have nearly enough time to
write all the code I can think of, so I tend not to spend the time required
on the documentation.  Several individuals who do not know how to write code
have volunteered to help with documentation.  Bob Frazier (I believe) wrote
the ARUNZ.HLP file.  I would love to have some additional volunteers!
 
 
  3).  Is there any summary of what all the various Z system utilities
       do.  As a novice to the Z world, I constantly see things like
       "a new version of ASDF has been released".  It would be nice to
       be able to look at a list and see a one line description of ASDF.
 
     If you call any one of the Z-Nodes and enter the FOR command, you will
get short descriptions of the files that have been uploaded to or placed on
the system.  Thus entering "FOR ASDF" might give you a quick description of
the program.  I am not aware of any compendium of such descriptions.  This
would be a very worthy project for someone who would like to contribute to
the Z community but perhaps cannot write code.
 
     Echelon at one time had an 8.5x11 card (front and back) with all the
commands, but I would guess that the card is rather out of date at this
point.
 
                                        Jay Sage