rconn@brl.arpa (02/16/83)
From: Rick Conn <rconn@brl.arpa>
Someone recently complained to INFO-MICRO about being
told that ZCPR2 is available and not being told what it is. Evi-
dently he missed the previous messages, and, thinking that there
may be others like him, the following is provided as a brief in-
troduction as to what ZCPR2 is. If this perks your interest and
you want to keep posted on its status, you should subscribe to
INFO-CPM, since it is a better forum for this info than INFO-
MICRO. If you do not already subscribe and you want to, send a
request to INFO-CPM-REQUEST@BRL. For those who have seen the
previous messages, I apologize for repeating myself and offer
some relief in that this is a new document which (I think) does a
better job of explaining some of the ideas of ZCPR2.
Rick
---- Text Follows ----
BRIEF on ZCPR2
by Richard Conn
The Z80-based Command Processor Replacement Version 2
(ZCPR2) is a replacement for the CP/M Console Command Processor
(CCP) which creates an extremely capable and flexible environ-
ment, placing a totally new interface on the user's CP/M system.
The primary purpose of ZCPR2 is to improve the user's produc-
tivity by giving him an environment which is much more responsive
to his needs and configurable to his specific desires than CP/M
2.2 while still remaining CP/M 2.2 compatable and allowing him to
run most, if not all, of his CP/M software with little or no
modification.
ZCPR2 is a replacement for the CP/M 2.2 CCP, but it is only
a part of the ZCPR2 SYSTEM. The ZCPR2 SYSTEM is a collection of
programs consisting of ZCPR2 itself and a series of utilities
designed to augment the capabilities of ZCPR2. There is a lot to
be said in order to attempt to explain what the ZCPR2 SYSTEM is
and does, and I will attempt to summarize some of the key
features in this brief introduction.
ZCPR2 DIRECTORIES and FILES
A DIRECTORY under ZCPR2 is a user area on a disk, and it is
identified by the combination of the disk letter and the number
of the user area (like A10 or B7) or by a mnemonic name (like
JEFF or ROOT). If a user wishes to reference a directory, he may
use (in most cases) a DU (Disk/User) form or a DIR (mnemonic)
form. The ZCPR2-resident commands support the DU form
extensively but do not support the DIR form:
A>DIR C7:
A>ERA B22:MYFILE.TXT V
A>TYPE A31:TEMP.TXT
A>REN C12:FILE....TXT=FILE1.TXT
A>LIST A31:TEMP.TXT
A>DIR B4: A
In addition, you may use the DU form to log into a different
directory:
A>B7:
B7>12:
B12>A:
A12>B15:
B15>B0:
B>A:
A>
Naturally, commands may be prefixed with the DU form:
A>B7:RUNIT
A>31:MBASIC
A>B:MYPROG
Most of the ZCPR2-supplied utilities have been programmed to
recognize the DU form as well:
A>XDIR B7:
A>ERASE B4:*.TXT,C2:*.*
A>CRC 4:*.*,5:*.*
A>PROTECT B:*.* RS
The ZCPR2-supplied transient programs, as a general rule,
recognize the DIR form as well as the DU form:
A>XDIR ROOT:
A>MCOPY B22:=A31:*.*,ROOT:=BACKUP:*.COM
A>CRC JEFF:*.*
A>RENAME MYAREA:*.BAS=*.BAK
You can use the DU form to log into directories (as stated
above), or you may use the CD (Change Directory) utility to do
this. In using CD, password protection and automatic command
line execution can be employed each time a directory is logged
into. This does little good when the DU form is available as
well, but ZCPR2 can be configured in over 4,000,000 ways (yes, 6
zeroes), and you can disable the DU form, allowing only the DIR
form to be used and forcing the user to employ CD to log into
directories. With CD, if a directory is defined in a user area
beyond a certain limit, it is declared to be a system directory,
and a password is required to enter it. Also, once CD grants
access to a directory, it looks for and runs a program named
ST.COM (for STARTUP), which will run any initial sequence of
commands desired. Such a command sequence may be to invoke a
menu, automatically run Word Star, and other ZCPR2-specific
functions.
Thirty-one programs are provided as part of the ZCPR2
SYSTEM, and all of them are provided as COM files and in source
form. These utilities can be grouped as follows:
o I/O -- Control Redirectable I/O System
o Directory Display
o Disk Utilities (a new DU2 program)
o Library Utilities (augment LU)
o Menu Subsystem
o File Comparison Utilities
o File Copy Utility (MCOPY)
o Command Files (disk-based and memory-based)
o Named Directory Manipulation
o ZCPR2 Alternates (like ZCPR2 residents, but more)
o Help (customized for ZCPR2 use)
MULTIPLE COMMAND LINES
The Multiple Command Line Facility of ZCPR2 supports two
basic functions in the ZCPR2 Environment:
1) It allows the user to specify a series of
commands on one line --
A>B7:;ERA *.COM;DIR;A:;DIR
2) It allows one program to easily chain to
another or to a whole series of programs
PATHS
Fundamental to ZCPR2 is the PATH, which is a sequence of
directories to be searched for a file. For those familiar with
ZCPR (now called ZCPR1), you had a fixed, built-in path which
looked for your COM file in the current disk/current user, disk
A/current user, and disk A/user 0. Under ZCPR2, you can specify
the sequence the directories can be searched in, and the length
of the path is arbitrary. As a further extension, there may be
more than one path, and each utility may have its own or share
one or more common paths. Example:
$$ $0 A$ A0 -- path from Current Disk/Current User to
Current Disk/User 0 to Disk A/Current User to Disk A/User 0
COMMAND PROCESSING and EXTENDED COMMAND PROCESSORS
ZCPR2 is also different in the way it processes commands.
It can be configured in many different ways, and one of the
recommended ways is to enable the following sequence of events
when a command is issued:
1. Input and Parse Command Line from User or File
2. Determine if it is a ZCPR2-resident command and
run it if so
3. Search along the command search path for the COM
file
4. Invoke an extended command processor, passing the
command line to it
5. Issue an error message if 2, 3, and 4 fail
REDIRECTABLE I/O
The last major feature to be described here is the
redirectable I/O system under ZCPR2. This system allows the user
to define as many consoles, list devices, reader devices, and
punch devices as he desires (within reason, of course). In
particular, facilities can be set up to direct console output
and/or list device output to disk files as well as a CRT or
printer, and physical devices, such as your CRT and Modem, can be
combined.
Closing
This has been a very brief introduction to the ZCPR2 System.
It is in the public domain, and will be available thru SIG/M in a
few short weeks. There are three documents associated with the
ZCPR2 System, and the Concepts Manual (65 pages long) describes
the material briefed by this introduction in much more detail.