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.