home *** CD-ROM | disk | FTP | other *** search
/ ftp.barnyard.co.uk / 2015.02.ftp.barnyard.co.uk.tar / ftp.barnyard.co.uk / cpm / walnut-creek-CDROM / DEMON / ZCCP0293.ARC / ZCCP.TXT < prev    next >
Text File  |  1993-02-07  |  14KB  |  308 lines

  1. The following is used by permission and remains copyright Randy Winchester.
  2. ===========================================================================
  3.  
  4. ZCCP Documentation, Version 1.0
  5. by Randy Winchester <randy@mit.edu>
  6.  
  7. ZCCP Features
  8.  
  9. This documentation is provided to assist the user in getting a 
  10. ZCCP system up and running.  It is not an exhaustive course on Z- 
  11. System or ZCPR.  The following list details which ZCPR features 
  12. are provided with ZCCP, and which ones aren't.
  13.  
  14. * ZCPR 3.3 compatibility.  ZCCP can run a wide range of utilities 
  15.   an applications created for ZCPR 3.3 and ZCPR 3.4.
  16.  
  17. * TCAP.  A Z3T termcap file describing terminal characteristics 
  18.   can be loaded into the system.  Z-System programs make use of the 
  19.   TCAP for output to the screen - a big improvement over the old 
  20.   method of patching individual programs with terminal control 
  21.   codes.  TCAP files are loaded by the ZCCP LOADSEG command.
  22.  
  23. * Named directories.  Up to 12 user areas can be assigned names.
  24.   Named Directory Registers (*.NDR files) are loaded by the ZCCP
  25.   LOADSEG command.
  26.  
  27. * Command Search Path.  ZCCP will search for commands along a 
  28.   user defined search path.  Up to six path elements 
  29.   (directories) can be defined.
  30.  
  31. * Environment block.  Contains TCAP, Named Directory, and Path 
  32.   information.  Also includes a map of active disk drives and 
  33.   other system information.  The environment block can be viewed 
  34.   with the Z-System SHOW utility.
  35.  
  36. * Flow control.  Conditional processing for batch files.  Relies 
  37.   on Z-System IF.COM for setting the flow state.  Other flow 
  38.   control commands (FI, ELSE, XIF, OR, AND) are resident.
  39.  
  40. * Multiple commands can be entered on the command line.  The 
  41.   command line buffer will hold up to 225 characters.  Commands 
  42.   should be separated by semicolons.
  43.  
  44. * Extended Command Processor.  If a command is not a built-in 
  45.   flow command, resident command, or located on disk along the 
  46.   search path, the command line is passed to an extended command 
  47.   processor.  A typical extended command processor is ARUNZ, a 
  48.   sophisticated batch file executor with alias features.  To use 
  49.   a program as an extended command processor, rename it to 
  50.   CMDRUN.COM and place it in the ROOT directory of your boot disk.
  51.  
  52. * Error handler.  In the event that the extended command 
  53.   processor can't handle a command, control is passed to an error 
  54.   handler.  Error handlers give information about the error 
  55.   (instead of the useless CP/M "?" message) and allow the command 
  56.   line to be edited and reused.
  57.  
  58. * Resident commands.  The following commands are built in:
  59.     CLS  - clears the screen
  60.     NOTE - text following the NOTE command is treated as a 
  61.            comment.
  62.     FI   - Flow control:  terminate the current IF level
  63.     ELSE - Flow control:  toggle the flow state
  64.     XIF  - Flow control:  exit all pending IF levels
  65.     OR   - Flow control:  OR IF tests to set flow state
  66.     AND  - Flow control:  AND IF tests to set flow state
  67.  
  68. * Shell stack.  Up to four shell levels can be defined.  Z-System
  69.   provides a choice of several different shells.  Applications such 
  70.   as terminal programs and word processors can also be assigned 
  71.   shell status.
  72.  
  73. * ZCCP uses the LOADSEG command for direct loading of RSX files 
  74.   that have not been GENCOMed.  Example: LOADSEG SAVE.RSX loads 
  75.   SAVE.RSX.
  76.  
  77. There are some things that Z3Plus will do that ZCCP won't do.  
  78.  
  79. - ZCCP does not support a Flow Command Package (FCP).  It relies 
  80.   on the transient IF command.  Other flow commands (FI, ELSE, XIF, 
  81.   OR, AND) are resident in ZCCP.
  82.  
  83. - A Resident Command Package (RCP) is not implemented.  CLS and 
  84.   NOTE are resident in ZCCP.  All other commands must be loaded 
  85.   from disk.  This isn't as much of a handicap as it might sound 
  86.   if you have a fast RAM drive to store frequently used commands.
  87.  
  88. - ZCCP can not load type 4 programs (used with ZCPR 3.4).  It 
  89.   loads standard COM files at 100H, and type 3 programs that load 
  90.   in high memory.  Most type 4 programs have type 3 or COM 
  91.   equivalents, so this should not be a problem.
  92.  
  93. - ZCCP can not reexecute loaded programs.  This trick is usually 
  94.   performed on Z-Systems with a GO command that jumps to 100H.  
  95.   Since ZCCP also loads at 100H, a GO command would only restart 
  96.   ZCCP.
  97.  
  98. ZCCP Files
  99.  
  100. Three files are included in ZCCP.ARK:
  101.  
  102.  File name      Size  Description
  103.  ============   ====  ==========================================
  104.  CCP     .COM   3k    ZCCP replacement for CCP.COM
  105.  LOADSEG .COM   3k    Loader for named directories and termcaps
  106.  ZINSTAL .ZPM   1k    Segment containing environment information
  107.  
  108. Getting Started - Preparing a Boot Disk
  109.  
  110. Format a system boot disk using the same proceedure that you normally
  111. would.
  112.  
  113. Copy the files from ZCCP.ARK to user area 0 of the newly 
  114. formatted disk.
  115.  
  116. Copy CPM+.SYS (some systems may use a slightly different name for this
  117. file) to user 0 of the boot disk.  The CPM+.SYS must include the BDOS
  118. segments from ZPM3.  Use the ZPM3 MAKEDOS utility to overlay your
  119. system file with ZPM3.  (Commodore 128 users must generate a new
  120. system using the ZPM3 BDOS segments.  The MAKEDOS utility does not
  121. work properly on a C128.)
  122.  
  123. Locate a copy of a Z-System alias utility.  A good one is 
  124. SALIAS16, although others should work also.  Copy it to user 0 of 
  125. the boot disk.
  126.  
  127. At this point, reboot the system with the new system disk.  After the
  128. system boots, you won't be able to do much with it.  The only resident
  129. commands are CLS and NOTE, and ZCCP can only locate commands if they
  130. are prefixed with the drive and user number.
  131.  
  132. The next step is to create a startup alias.  When ZCCP boots, it 
  133. looks for a file named STARTZPM.COM and executes commands from 
  134. it.  STARTZPM.COM is created with a ZCPR alias utility.  Here is 
  135. a listing of a STARTZPM.COM created with SALIAS:
  136.  
  137.      =============================================================
  138.  
  139.      A0>SALIAS STARTZPM
  140.  
  141.      15:                ; Logs the ROOT directory (A15) on the 
  142.                         ; current drive.
  143.  
  144.      LOADSEG NAMES.NDR TCAP.Z3T
  145.                         ; LOADSEG loads the Named Directory Register
  146.                         ; and TCAP.
  147.                         ; Directories can now be referred to by 
  148.                         ; name, as in the next command:
  149.  
  150.      SETPTH10 /C COMMANDS RAM2 WORK $$$$ $$0 ROOT
  151.                         ; SETPTH sets the command search path.  
  152.                         ; The /c option first clears any existing path.
  153.                         ; Directories are then listed in the 
  154.                         ; order searched.  In this case, COMMANDS 
  155.                         ; is a 64K ramdisk (drive/user F0) where
  156.                         ; frequently used commands are stored.  RAM2 is 
  157.                         ; an additional RAM disk. (drive/user M0).
  158.             ; WORK is a standard 3.5" floppy disk
  159.                         ; drive, (drive/user C15) where some 700K 
  160.                         ; of utilities and applications are 
  161.                         ; located.  $$$$ refers to the currently 
  162.                         ; logged drive and user area.  $$0 refers 
  163.                         ; to user area 0 of the current drive.  
  164.                         ; The ROOT directory is on drive A, user 
  165.                         ; 15, where startup utilities and system 
  166.                         ; files can be found.
  167.  
  168.      AUTOTOG ON         ; Turns on keyboard control of ZPM3 Auto 
  169.                         ; Command Prompting.  Auto Command 
  170.                         ; Prompting is toggled by entering CTRL-Q.
  171.  
  172.      COMMANDS:          ; Logs the commands directory.
  173.  
  174.      IF ~EXIST CP.*     ; Test to see if commands are loaded.  
  175.                         ; This line reads:  "If the CP command 
  176.                         ; does not exist . . ." and sets the flow 
  177.                         ; state to true if the file doesn't exist.
  178.         C1:CP C1:*.* F0:
  179.                         ; ". . . copy all of the commands in 
  180.                         ; drive/user C1 to the commands (F0) 
  181.                         ; directory . . ."
  182.      FI                 ; ". . . end if."
  183.  
  184.      ROOT:              ; Log the root directory (A15).
  185.  
  186.      CP C:ZF*.* M0:     ; Copy ZFILER.COM and ZFILER.CMD to the 
  187.                         ; REU2 directory (M0).
  188.  
  189.      VERROR             ; Install VERROR error handler.
  190.  
  191.      DATE S             ; Set the system time and date.
  192.  
  193.      ZF                 ; Invoke ZFILER as a shell.
  194.  
  195.      =============================================================
  196.  
  197. Of course, your STARTZPM alias will vary depending on the 
  198. hardware you need to support, your software preferences, and your 
  199. work habits.  This alias is close to the upward size limit that 
  200. ZCCP can handle based on the capacity of the multiple command 
  201. buffer.  At the very least, I recommend an alias that will set up 
  202. a search path and load a TCAP.
  203.  
  204. Actually, I put the cart before the horse in this example.  If 
  205. you try to reboot your system with the LOADSEG command as listed, 
  206. you'll notice that you don't have a NAMES.NDR file.  There isn't 
  207. one distributed with ZCCP either.  Z-System utilities won't let 
  208. you edit the NDR either, since the buffer for it hasn't been 
  209. created yet.  This turned out to be a nasty chicken/egg 
  210. situation, hopefully solved by the inclusion of a sample 
  211. NAMES.NDR file containing simply A0:SYSTEM and A15:ROOT.
  212.  
  213. At this point, you should have a mostly functioning ZCCP system disk.
  214. Reboot the system with the new disk.  You might want to correct any
  215. problems with it or tweak it to perfection before moving on.
  216.  
  217. List of Z-System Utilities for ZCCP
  218.  
  219. Some of the following utilities are essential, others are nice to
  220. have.  The version numbers listed are the latest known versions at the
  221. time that this documentation was written.  Utilities can be found on
  222. ZNode BBSs, and some of them are available on Internet anonymous ftp
  223. sites (Simtel20 or its mirror sites).
  224.  
  225. SALIAS16  - already mentioned in the example above.  SALIAS (or 
  226. one of the other ZCPR alias utilities) are essential.
  227.  
  228. SD138B    - excellent DIRectory utility.  SD offers many 
  229. different types of sorts, list formats, etc., displays date 
  230. stamps, and supports output to a file.
  231.  
  232. MKDIR32   - utility for manipulating directory names and Named 
  233. Directory Register (*.NDR) files. 
  234.  
  235. ERASE57   - erases files.
  236.  
  237. ZFILER10  - a file management shell that can launch applications.  
  238. It is programmable in that it can execute user defined macros 
  239. from a file.  Multiple files can be "tagged" and operated on by 
  240. other programs.  ZFILER is an excellent program, sort of a GUI 
  241. desktop without the slow graphics.
  242.  
  243. SETPTH10  - used to set the command search path.  Essential!
  244.  
  245. VERROR17  - error handler that displays the command line for 
  246. reediting.  VERROR17 is the only error handler that I found that 
  247. works with ZCCP.
  248.  
  249. ZEX50     - Z-System EXecutive is a powerful batch file processor 
  250. that replaces the CP/M SUBMIT command.
  251.  
  252. LBRHLP22  - Z-System Help utility displays help files.  Help 
  253. files can be crunched (*.HZP), and/or loaded from a HELP.LBR 
  254. library.
  255.  
  256. ARUNZ09   - runs an alias script from a text file.  ARUNZ is 
  257. frequently used as an extended command processor.  To use ARUNZ 
  258. (or any other executable utility) as an extended command 
  259. processor, rename it to CMDRUN.COM.
  260.  
  261. VLU102    - Video Library Utility views or extracts files from 
  262. libraries.  Versions of VLU above 1.02 do not work reliably with 
  263. ZPM3/ZCCP.
  264.  
  265. Z33IF16   - is the IF.COM discussed in the section on flow control.
  266.  
  267. SHOW14    - displays an immense amount of information about your 
  268. Z-System.  SHOW also includes a memory patching function.
  269.  
  270. ZCNFG24   - configures Z-System program options.  Most Z-System 
  271. programs are distributed with a configuration (*.CFG) file that 
  272. produces a menu of configuration options when run with ZCNFG.
  273.  
  274. ZP17      - Z-System Patch utility edits files, disk sectors, or 
  275. memory, and includes a built-in RPN calculator and number base 
  276. converter.
  277.  
  278. ZMAN-NEW  - This is a manual describing Z-System features in 
  279. depth.  It is based on earlier versions of Z-System, and is a 
  280. little dated, but otherwise contains information that you won't 
  281. find anywhere else.  Not everything in the manual applies to 
  282. operation of ZPM3/ZCCP, but with the documentation presented 
  283. here, you should be able to get a good idea of what works and 
  284. what doesn't.
  285.  
  286. A TCAP termcap file for your system - This file is essential if you
  287. want to use any ZCPR programs that need a TCAP.
  288.  
  289. ZCCP Technical Notes
  290.  
  291. ZCCP is a replacement CCP that implements ZCPR 3.3.  It loads at 
  292. 100H and is stored in the bank 0 CCP buffer for fast reloading as 
  293. does the standard CCP.  By contrast, Z3Plus loads into high 
  294. memory and can be overwritten by transient commands, requiring 
  295. reloading Z3Plus from disk.  Because ZCCP replaces the CCP, a 
  296. ZCCP system has more TPA (transient program area) than a Z3Plus 
  297. system.  A ZCCP system on the C128 has more than 57K of TPA, 
  298. almost the same amount as a standard C128 CP/M system.
  299.  
  300. This should be enough information to get started with ZPM3/ZCCP.  
  301. Set up a boot disk, experiment with some Z-System utilities, read 
  302. ZMAN-NEW, and get some applications running.  You'll agree that 
  303. ZPM3/ZCCP breaths new life into CP/M.
  304.  
  305. *******************************************************************************
  306. *  Randy Winchester  *  randy@mit.edu  *  PO Box 1074, Cambridge, MA  02142   *
  307. *******************************************************************************
  308.