home *** CD-ROM | disk | FTP | other *** search
/ CP/M / CPM_CDROM.iso / beehive / myz80 / z-for-at.ark / Z-FOR-AT.ART next >
Encoding:
Text File  |  1992-08-22  |  25.5 KB  |  663 lines

  1.  
  2.           Z AT Last! Z AT Last! Thank Cran And Others! Z AT Last!
  3.   (A Primer On Using Z-System Software On AT-Class Machines Under MYZ80)
  4.  
  5.                      Copyright (C) 1992 By Lee Bradley
  6.  
  7.                           0. In The Beginning ..
  8.  
  9.      On August 1, 1992, Simeon Cran brought forth MYZ80100.ZIP, a 58k 
  10. package which lets AT-class machines run Z80-class software. Not only does 
  11. Cran's emulator run CP/M programs, but it also runs Z-System programs. As 
  12. CP/M machines die and IBM machines get produced, this development comes as 
  13. exciting news to those who have remained active in the 8-bit community.
  14.  
  15.      Few AT-class machine owners are aware of the advancements that have 
  16. taken place in 8-bit operating systems over the last ten years. Now that 
  17. these advancements are available to them, I think a short article which 
  18. talks about how to get the software and how to use it, has a place.
  19.  
  20.                     1. What You Need And How To Get It
  21.  
  22.      As of this writing (August 21, 1992,) the first thing you need is the 
  23. file MYZ80100.ZIP. You may send for it directly by writing the author. 
  24. MYZ80 is user-supported software and Simeon Cran will send you the latest 
  25. version of his emulator and listen to your questions. The registration fee 
  26. is $30 Australian ($23.50 US) and the address is:
  27.  
  28.                   MYZ80 Registration, Software by Simeon
  29.                       2 Maytone Ave, Killara N.S.W.
  30.                               AUSTRALIA 2071
  31.  
  32.      MYZ80100.ZIP is available for download from electronic bulletin 
  33. boards. I run such a board in Connecticut, Z-Node #12, (203) 665-1100. If 
  34. you don't care or are not equipped to download, a 720k 3.5" disk with 
  35. MYZ80100.ZIP *plus* the 20 or so files discussed below may be obtained by 
  36. sending a $10 check to:
  37.  
  38.     Small Computer Support, 24 East Cedar Street, Newington, CT 06111
  39.  
  40. I strongly encourage you to register your copy with the author.
  41.  
  42.      The second thing you need is the NZCOM package, an automatic, dynamic, 
  43. universal Z-System, a CP/M 2.2 compatible operating system. To order it, 
  44. send a check for $49 plus $3 S&H to:
  45.  
  46.  Sage Microsystems East, 1435 Centre Street, Newton Centre, MA 02159-2469
  47.  
  48.                        2. Getting Started With MYZ80
  49.  
  50.      Since MYZ80 is provided in .ZIP form, you'll need to unZIP it. For 
  51. this you'll need PKUNZIP.EXE. Place the disk with MYZ80100.ZIP in your 
  52. drive and copy it to a subdirectory of your hard disk. Say you've created a 
  53. subdirectory via
  54.  
  55.      C:\> md myz80
  56.  
  57. Then, copy the .ZIP file to this subdirectory via
  58.  
  59.      C:\> copy a:myz80100.zip \myz80
  60.  
  61. Next, change directories and unZIP the file via
  62.  
  63.      C:\> cd myz80
  64.      C:\MYZ80> pkunzip myz80100
  65.  
  66. At this point, you should have 6 or so files in the subdirectory. One of 
  67. them is CPM.EXE. Run it via
  68.  
  69.      C:\MYZ80> cpm
  70.  
  71. If you are running an unregistered copy of the software, you will be 
  72. presented with several screens of information. By hitting return you will 
  73. eventually get the "A prompt."
  74.  
  75.      A0>
  76.  
  77. Type DIR at this prompt to get a directory of the files on the "A disk."
  78.  
  79.      A0> dir
  80.  
  81. Among the files, the following will appear: DOSDIR.COM, EXPORT.COM, 
  82. IMPORT.COM and QUIT.COM. There will be others, but the four listed above 
  83. are the most important ones. DOSDIR lets you get a directory of the 
  84. subdirectory from which you invoked the emulator.
  85.  
  86.      A0> dosdir
  87.  
  88. should show you something like the following:
  89.  
  90.      myz80100.zip|cpm.exe     |a.dsk       |boot.cpm
  91.      myz80.doc   |read.1st    |            |
  92.  
  93. IMPORT lets you copy files from the hard disk to your "A disk." EXPORT goes 
  94. the other way. QUIT gets you out of the emulator and back to MSDOS (or 
  95. DRDOS etc.) The file named A.DSK holds the files you see when you issue the 
  96. CP/M DIR command. As you IMPORT, this file grows in size.
  97.  
  98.      MYZ80 supports three 8 megabyte "partitions," "drives A, B and C," and 
  99. a RAM disk, "drive D." You log into these drives as follows:
  100.  
  101.      A0> b:
  102.      B0> c:
  103.      C0>
  104.  
  105. You may also log into drive A, "user area 1," via the CP/M USER resident 
  106. command:
  107.  
  108.      C0> user 1
  109.      C1> a:
  110.      A1>
  111.  
  112. Simeon put files in user area 0 and user area 1 of drive A.
  113.  
  114.      A1> dir
  115.  
  116. should show you a few files. One of them is MYZ80.Z3T. This file is a 
  117. "terminal capabilities" segment and will be used to provide hilighting, 
  118. clear screen, cursor positioning etc. functions when we bring up Z-System.
  119.  
  120.                      3. Getting Started With Z-System
  121.  
  122.      The key files you need to get Z-System going are MKZCM.COM, NZCOM.LBR 
  123. and NZCOM.COM. These files of course are part of the NZCOM package 
  124. mentioned above. NZCOM (ie. Z-System for CP/M 2.2 computers) may be 
  125. purchased from Sage Microsystems East (address above.)
  126.  
  127.      Copy these files from your distribution disk to the MYZ80 
  128. subdirectory. If you are running the emulator, leave it and get back to 
  129. MSDOS (DRDOS etc.) via
  130.  
  131.      A0> quit
  132.      C:\MYZ80>
  133.  
  134. Now, do the copy.
  135.  
  136.      C:\MYZ80> copy a:mkzcm.com
  137.      C:\MYZ80> copy a:nzcom.lbr
  138.      C:\MYZ80> copy a:nzcom.com
  139.  
  140. Next, run the emulator and bring these files into your "A disk" with 
  141. IMPORT.
  142.  
  143.      C:\MYZ80> cpm
  144.      A0> import mkzcm.com
  145.      A0> import nzcom.lbr
  146.      A0> import nzcom.com
  147.  
  148. Next, run MKZCM, which allows you to define which "system segments" you 
  149. want and how big they are going to be.
  150.  
  151.      A0> mkzcm
  152.  
  153. The "system segment" called the "resident command processor" defaults to 
  154. one which is 16 records (2k) big. Since the stock "resident command 
  155. processor" in NZCOM.LBR is 18 records long, select option 5 from the MKZCM 
  156. menu and then enter 18 for the new size. To save the results, type S and 
  157. when asked what name to use for the "environment" files which will get 
  158. created, type NZCOM. Do not be concerned at this point about exactly what 
  159. is going on. MKZCM provides many choices. Our objective here is to get you 
  160. up and running, not to explain the details and possibilities.
  161.  
  162.      Run NZCOM (the Z-System segment loader) by typing:
  163.  
  164.      A0> nzcom
  165.  
  166. You will see a series of messages as NZCOM accesses NZCOM.LBR and loads 
  167. segments into the Z-System environment. The last thing you should see is 
  168. actually an error message, namely
  169.  
  170.      STARTZCM?
  171.  
  172. followed by a new "A prompt"
  173.  
  174.      A0:COMMANDS>
  175.  
  176.                    4. Bringing Up The Key Z-System Tools
  177.  
  178.      To take full advantage of this new operating system environment, 
  179. you'll need some basic tools. As we discuss each recommended tool, the 
  180. power and flexibility of Z-System will become apparent. The files that come 
  181. to mind *first* are:
  182.  
  183.      1. MYZ80.Z3T     - a terminal capabilities file
  184.      2. SALIAS.COM    - a screen-oriented "real" alias editor
  185.      3. ARUNZ.COM     - an extended command processor
  186.      4. ZDE.COM       - a full screen text editor
  187.      5. ALIAS.CMD     - ARUNZ alias definition file
  188.      6. EDITNDR.COM   - a named directory segment editor
  189.      7. SAVENDR.COM   - a named directory segment saver
  190.      8. PATH.COM      - a command search path utility
  191.      9. NZBLITZ.COM   - a Z-System image saver
  192.     10. IF.COM        - a powerful conditional command processor
  193.     11. ZFILER.COM    - a point and shoot file manager
  194.     12. ZFILER.CMD    - ZFILER macro definition file
  195.     13. SDZ.COM       - a sorted directory utility
  196.     14. HELP.COM      - a help utility
  197.     15. CRLZH.COM     - a compression tool
  198.     16. UCRLZH.COM    - a decompression tool
  199.     17. LPUT.COM      - a library building tool
  200.     18. LBREXT.COM    - a library extraction tool
  201.     19. LT.COM        - a library member typing tool
  202.     20. Z-FOR-AT.ART  - this file
  203.  
  204. To re-iterate, to make it easy for you to get started, both MYZ80100.ZIP 
  205. and the 20 files listed above are available on a 720k 3.5" disk for $10 
  206. from
  207.  
  208.      Small Computer Support, 24 East Cedar Street, Newington, CT 06111
  209.  
  210. Z-System itself is of course not included and may be purchased from Sage 
  211. Microsystems East at the address given above for $49 plus $3 S&H. Again, 
  212. you are strongly encouraged to register your copy of MYZ80 by sending 
  213. Simeon Cran $23.50 US at the address given above.
  214.  
  215.      The remainder of this document is a tutorial on the files listed above 
  216. and on how they illustrate Z-System capabilities. If you know nothing about 
  217. CP/M or Z-System, you should read what follows. If you are familiar with 
  218. both, you might just want to skim the rest. Who knows, after reading all 
  219. this, you may never want to use Microsoft Works or Microsoft Windows again! 
  220. Personally, I'd reformat my 40 meg hard disk, bring up MYZ80, then Z-System 
  221. and be up an running ... Why waste that valuable hard disk space on 16-bit 
  222. software  ; >
  223.  
  224.                4.1 MYZ80.Z3T - A Terminal Capabilities File
  225.  
  226.      In "user area" 1 of "drive A" we find the terminal capabilities 
  227. segment file MYZ80.Z3T. To activate this file, load it into the Z-System 
  228. environment via
  229.  
  230.      A0:COMMANDS> nzcom 1:myz80.z3t
  231.  
  232. [Note: I am putting a space between the prompt and the command to make this 
  233. more readable. You should *not* use a space in front of your commands when 
  234. you issue them. Doing so has a special meaning under Z-System and in the 
  235. examples discussed here, we do not want this special meaning to be active.  
  236. End of note.]
  237.  
  238. To see one of the effects that this has, it's probably a good idea to bring 
  239. the files mentioned above into the "A disk" by IMPORTing them. Do this now.
  240.  
  241.      A0:COMMANDS> import salias.com
  242.      A0:COMMANDS> import arunz.com
  243.  
  244.      etc.
  245.  
  246.      A0:COMMANDS> import lbrext.com
  247.      A0:COMMANDS> import lt.com
  248.  
  249. [Note: You of course must have copied these files from your distribution 
  250. disk to the MYZ80 subdirectory on your hard disk first. End of note.]
  251.  
  252. If you now run the SDZ program, you should see certain areas of the display 
  253. *hilighted*. Similary, ZFILER will show hilighting.
  254.  
  255.      A0:COMMANDS> sdz
  256.      A0:COMMANDS> zfiler
  257.  
  258.           4.2 SALIAS.COM - A Screen-oriented "real" alias editor
  259.  
  260.      The error message
  261.  
  262.      STARTZCM?
  263.  
  264. mentioned above can be fixed by creating what's called (a "real") "alias" 
  265. named STARTZCM.COM. Do this with SALIAS (pronounced "S-ALIAS".)
  266.  
  267.      A0:COMMANDS> salias startzcm
  268.  
  269. Type in the following script:
  270.  
  271.      echo s%>ystem loaded.
  272.  
  273. Exit "edit mode" by pressing ESC and save the result by pressing S. Quit 
  274. SALIAS by typing X.
  275.  
  276.      When you brought up Z-System (by typing NZCOM,) several files got 
  277. created. One of them is named NZCPM.COM. This is what you use to leave Z- 
  278. System and return to CP/M. To see the effect of the existence of 
  279. STARTZCM.COM, leave Z-System and then re-enter Z-System.
  280.  
  281.      A0:COMMAND> nzcpm
  282.      A0> nzcom
  283.  
  284. The message "System loaded." followed by the A0:COMMANDS> prompt should 
  285. appear at the end of the load sequence now.
  286.  
  287.      SALIAS may be used to define any "alias" you want. Another simple 
  288. example of an alias will be presented when we discuss IF.COM below.
  289.  
  290.      NZCOM is "hard-coded" to run the command STARTZCM after it does its 
  291. segment loading. STARTZCM may be anything you want. We chose to define a 
  292. simple "real" alias that emits a brief message.
  293.  
  294.      If you run SDZ at this point, the nice hilighting will no longer 
  295. occur (because the "terminal capabilities segment" no longer contains the 
  296. "fancy stuff" held in MYZ80.Z3T.) To further automate things, we could beef 
  297. up the STARTZCM alias by adding a line to it. Re-execute SALIAS on 
  298. STARTZCM, press ctrl-N to insert a line in front of the echo etc. etc. line 
  299. and enter:
  300.  
  301.      nzcom 1:myz80.z3t
  302.      echo s%>ystem loaded.
  303.  
  304. Now, when you bring up Z-System from CP/M (by typing NZCOM,) you should get 
  305. hilighting with SDZ, ZFILER etc.
  306.  
  307.                 4.3 ARUNZ.COM - An Extended Command Processor
  308.  
  309.      The first thing you should do with this file is rename it to 
  310. CMDRUN.COM. CP/M, you may recall, has 6 built-in (resident) commands. They 
  311. are DIR, ERA, REN, SAVE, USER and TYPE. If you try:
  312.  
  313.      A0:COMMANDS> ren cmdrun.com=arunz.com
  314.  
  315. it will fail, because REN is not a resident command under Z-System (to list 
  316. the resident commands available, type H (help) at the A0:COMMANDS prompt.) 
  317. The "stock" resident command processor has ERA and TYPE and several others, 
  318. but no REN. There are two ways to get around this problem. One way would be 
  319. to leave Z-System and return to CP/M and use its REN command.
  320.  
  321.      A0:COMMANDS> nzcpm
  322.      A0> ren cmdrun.com=arunz.com
  323.  
  324. and then return to Z-System:
  325.  
  326.      A0> nzcom
  327.  
  328. The other way is to run ZFILER, press the space bar til the file pointer is 
  329. on ARUNZ.COM, then press R (to rename) and type in CMDRUN.COM. Exit ZFILER 
  330. by pressing X.
  331.  
  332.      ARUNZ is what is known as an "extended command processor." A well- 
  333. defined series of steps are taken by the command processor segment of Z- 
  334. System as it tries to figure out how to resolve any command it's given at 
  335. the "A prompt." If the command you enter is not one of the "resident" ones, 
  336. or a "transient" one (a .COM file,) your command is fed to an "extended 
  337. command processor" named CMDRUN.COM. In ARUNZ's case, the command is 
  338. resolved by searching for it in a text file named ALIAS.CMD.
  339.  
  340.      Here is a simple illustration of an ARUNZ type "alias." Use the full- 
  341. screen text editor ZDE to create the file ALIAS.CMD.
  342.  
  343.      A0:COMMANDS> zde alias.cmd
  344.  
  345. Enter the following definition for the alias DIR.
  346.  
  347.      DIR sdz $*
  348.  
  349. Save the file (ESC S) and quit the editor (ESC Q.)
  350.  
  351. If you had typed
  352.  
  353.      A0:COMMANDS> dir
  354.  
  355. before renaming ARUNZ.COM to CMDRUN.COM and running ZDE and creating the 
  356. ALIAS.CMD file, Z-System would come back with the error
  357.  
  358.      DIR?
  359.  
  360. Why? Because, the "stock" resident command processor doesn't include a DIR 
  361. and there is no "transient" DIR.COM.
  362.  
  363.      But now that we have an extended command processor and a definition 
  364. for an alias DIR, the effect of the command
  365.  
  366.      A0:COMMANDS> dir
  367.  
  368. is the same as the effect of 
  369.  
  370.      A0:COMMANDS> sdz
  371.  
  372. The $* in the definition for the DIR alias means "the command tail," so 
  373.  
  374.      A0:COMMANDS> dir *.com
  375.  
  376. would resolve to
  377.  
  378.      A0:COMMANDS> sdz *.com
  379.  
  380. ARUNZ is a mature command processor, supporting many powerful parameters.  
  381. As this document is only a primer, only one other parameter ($1) will be 
  382. discussed (when we talk about IF.COM.) Full documentation on ARUNZ is 
  383. provided when you purchase Z-System.
  384.  
  385.                     4.4 ZDE - A Full-screen Text Editor
  386.  
  387.      ZDE (Z-System Display Editor) is the most popular full-screen text 
  388. editor for CP/M. Its use has already been mentioned briefly above when we 
  389. updated the file ALIAS.CMD. ZDE is very similar to WordStar. You may use 
  390. the "WordStar diamond" to move the cursor around (ctrl-s, -d, -e, -x.) 
  391. Online help is available via ESC H. It is good for under 40k files. Full 
  392. documentation is available.
  393.  
  394.                 4.5 ALIAS.CMD - ARUNZ Alias Definition File
  395.  
  396.      We have touched on the role this text file plays already. More 
  397. information on ARUNZ and example ALIAS.CMD scripts are provided when you 
  398. buy Z-System.
  399.  
  400.             4.6 EDITNDR.COM - A Named Directory Segment Editor
  401.  
  402.      When you bring up Z-System, two "drive/user areas" are automatically 
  403. given suggestive *names*. Drive A user 0 is named COMMANDS and drive B user 
  404. 0 is named WORK. To change directories, you may type the drive letter, then 
  405. the user area number, then a colon (:) and finally the enter (return) key. 
  406. Alternatively, if a name has been given to a drive/user area, you may type 
  407. the name, the colon and the return key.
  408.  
  409.      A0:COMMANDS> WORK:
  410.      B0:WORK>
  411.  
  412. EDITNDR is a named directory segment editor. You may add, delete etc. named 
  413. directories with it. For example, you might want to name Simeon's drive A 
  414. user area 1, the one with MYZ80.Z3T in it. Although only one file has to do 
  415. with terminal capabilities, let's name it TCAP.
  416.  
  417.      A0:COMMANDS> editndr
  418.  
  419. At EDITNDR's prompt, enter
  420.  
  421.      A1:TCAP
  422.  
  423. and then leave EDITNDR by typing X. If you now type
  424.      
  425.      A0:COMMANDS> tcap:
  426.  
  427. you'll see
  428.  
  429.      A1:TCAP>
  430.  
  431. To make this association permanent, you could use the utility SAVENDR to 
  432. create the file SAVED.NDR and then add one more line to the STARTZCM alias 
  433. described above.
  434.  
  435.      A0:COMMANDS> savendr
  436.      A0:COMMANDS> salias startzcm
  437.  
  438. Enter the new line shown below
  439.  
  440.      nzcom saved.ndr
  441.      nzcom 1:myz80.z3t
  442.      echo s%>ystem loaded.
  443.  
  444. Named directories are a good idea because you no longer have to remember 
  445. the drive/user they correspond to. Just the meaningful name *you* choose. 
  446. You might for example want to call C0 PROJECTS and C1 DATABASE.
  447.  
  448.              4.7 SAVENDR.COM - A Named Directory Segment Saver
  449.  
  450.      This program simply saves the currently defined named directory 
  451. segment names into a file named SAVED.NDR. It may be loaded into memory 
  452. with NZCOM. I envision A.DSK files created by one person and distributed to 
  453. others. These .DSK files will have a *logical* structure which an included 
  454. SAVED.NDR file will help reveal.
  455.  
  456.                4.8 PATH.COM - A Command Search Path Utility
  457.  
  458.      Stock Z-System comes with a command search path of A0 $$ A0. $$ means 
  459. "currently logged drive, currently logged user area." This path is searched 
  460. to find .COM files. Say you are logged into drive B, user 2, and you type
  461.  
  462.      B2> zfiler
  463.  
  464. Since ZFILER.COM is in drive A, user 0, the command will work. If 
  465. ZFILER.COM had for some reason been moved to drive B user 0, the command 
  466. above would fail. You may use the PATH utility to establish the search path 
  467. you want. For example
  468.  
  469.      A0:COMMANDS> path c0 b0 $$ a0
  470.  
  471. If this path were active, and ZFILER.COM were in B0, the ZFILER command 
  472. above would work.
  473.  
  474.                  4.9 NZBLITZ.COM - A Z-System Image Saver
  475.  
  476.      This utility will help speed up the transition from CP/M to Z-System. 
  477. Instead of running NZCOM and waiting while all the segments get loaded, you 
  478. may use NZBLITZ to save a complete image of a loaded Z-System into a .COM 
  479. file. For example:
  480.  
  481.      A0:COMMANDS> nzblitz image
  482.  
  483. A file named IMAGE.COM will get created. It will contain the named 
  484. directory names, the terminal capabilites segment, the command search path 
  485. etc. etc. If you leave Z-System and return to CP/M (or to MSDOS/DRDOS etc.,) 
  486. you may quickly re-generate this Z-System environment via
  487.  
  488.      C:\MYZ80> cpm
  489.      A0> image
  490.  
  491. It might be noted that with this approach, no longer will the STARTZCM 
  492. command be automatically run (this only happens when you go from CP/M to Z- 
  493. System with NZCOM.) What our STARTZCM did is not needed anymore anyway 
  494. since the segments this "real" alias loaded are saved in and reloaded by 
  495. IMAGE.COM! NZBLITZ does have a nice feature you may want to use, however.  
  496. If you invoke NZBLITZ as follows
  497.  
  498.      A0:COMMANDS> nzblitz image;echo s%>ystem created 08/21/92
  499.  
  500. then, when you go from CP/M to Z-System, via
  501.  
  502.      A0> image
  503.  
  504. the message
  505.      
  506.      System created 08/21/92
  507.  
  508. will be displayed.
  509.  
  510.           4.10 IF.COM - A Powerful Conditional Command Processor
  511.  
  512.      Z-System supports both a "resident command processor" and a "flow 
  513. control command processor." Typical flow control commands are IF, ELSE and 
  514. FI. These commands are typically used in aliases to support conditional 
  515. command invocation. Here's a simple example. Say you defined the following 
  516. ARUNZ (or "real") alias and called it MYTYPE:
  517.  
  518.      if exist $1;type $1;else;echo $1 %>doesn't exist;fi
  519.  
  520. Z-System uses semi-colons (;'s) to separate commands in a multiple command 
  521. line. Say the file MYZ80.DOC were in A0 and you were logged into A0 and you 
  522. issued the command
  523.  
  524.      A0:COMMANDS> mytype myz80.doc
  525.  
  526. The "stock" flow control processor supports an IF which only supports a few 
  527. testable conditions (ERROR and NULL.) EXIST is not an included testable 
  528. condition. The transient IF.COM, if available, will automatically load if 
  529. the resident IF is insufficient. IF.COM supports a host of conditions, 
  530. including EXIST. The command above would result in the typing out of 
  531. MYZ80.DOC. Notice the role of the $1 argument. It gets replaced everywhere 
  532. it occurs by the first argument in the command tail.  
  533.  
  534.      To see the testable conditions IF.COM supports, you may invoke IF.COM 
  535. directly and use the standard Z-System help tail, //, to request syntax and 
  536. usage.
  537.  
  538.      A0:COMMANDS> if //
  539.  
  540.                     4.11 ZFILER.COM And 4.12 ZFILER.CMD
  541.        A Point And Shoot File Manager and its macro definition file
  542.  
  543.      ZFILER is a powerful "point and shoot" file manager. With it, you may 
  544. view, rename, delete, copy, etc. files. It has online help which may be 
  545. seen by typing / in response to ZFILER's prompt. Typing / again will bring 
  546. you back to the file name display.
  547.  
  548.      ZFILER is our first example of what is known as a "shell." What this 
  549. means is that while using ZFILER, you may issue the command Z to 
  550. temporarily suspend ZFILER and, at the new prompt ZFILER itself provides, 
  551. issue *any* Z-System command. For example, you might want to run the ZDE 
  552. editor on the file MYZ80.HLP. Just type Z, and at the new prompt, type ZDE 
  553. MYZ80.HLP. After you have finished your edit session and quit the editor, 
  554. you will see the message "Strike any key." Upon hitting any key, ZFILER 
  555. will automatically get re-invoked and its file name display will appear.  
  556. Thus, "shells" are programs that act as "front ends" to the user, allowing 
  557. the user to temporarily leave, do something else, and then be brought back 
  558. automatically.
  559.  
  560.      ZFILER has one more powerful feature worth briefly mentioning at this 
  561. point. If a file named ZFILER.CMD is available, and it contains the 
  562. following:
  563.  
  564.      1! zde $p
  565.      2! echo 08/21/92
  566.      #
  567.         1. edit currently pointed at file
  568.         2. show version date
  569.  
  570. then, if the file pointer is on the file MYZ80.HLP and you press the 1 key, 
  571. the ZDE editor will automatically get run and you will be editing the file 
  572. MYZ80.HLP! The structure and meaning of ZFILER.CMD files will not be 
  573. discussed further here. Again, this information is well covered with the 
  574. manual you get when you purchase Z-System.
  575.  
  576.                 4.13 SDZ.COM - A Sorted Directory Utility
  577.  
  578.      This is a sorted directory program. It has been mentioned above as 
  579. something that could be used to make the command
  580.  
  581.      A0:COMMANDS> dir
  582.  
  583. do something useful (via an ARUNZ alias.) SDZ has many options. Type SDZ // 
  584. to see what they are. 
  585.  
  586.      A0:COMMANDS> sdz *.hlp /da
  587.  
  588. would display the names of all .HLP files on all drives and in all user areas.
  589.  
  590.                       4.14 HELP.COM - A Help Utility
  591.  
  592.      One of the nicest things about Z-System is the extensive help 
  593. available. Help comes in many forms. We've mentioned using the // as a 
  594. command tail several times now. This shows you syntax and usage. This 
  595. information is hard-coded in the executable (.COM) file. Another form of 
  596. help is found in external .HLP files. These files are most effectively 
  597. browsed with the HELP utility, HELP.COM. An extremely simple .HLP file 
  598. follows. Say the file Z-FOR-AT.HLP contained:
  599.  
  600. Introduction
  601. What You Need And How To Get It
  602. : Introduction
  603.  
  604.      On August 1, 1992, ...
  605.      blah blah blah
  606.  
  607. : What You Need And How To Get It
  608.  
  609.      As of this writing ...
  610.      blah blah blah
  611.  
  612.      At the prompt, type
  613.  
  614.      A0:COMMANDS> help z-for-at
  615.  
  616. What you would see on your screen would be
  617.  
  618.     A. Introduction
  619.     B. What You Need And How To Get It
  620.  
  621.  
  622.  
  623.     Selection:  
  624.  
  625. If you pressed A, the text starting with : Introduction would get 
  626. displayed. If you pressed B, the text starting with : What You Need And How 
  627. To Get It would get displayed. .HLP files can be much more complex (they 
  628. may have a tree-like structure.) 
  629.  
  630.                     4.15 CRLZH.COM And 4.16 UCRLZH.COM
  631.                   A Compression And A Decompression Tool
  632.  
  633.      To save disk space, these two programs are used to compress and 
  634. uncompress files. When a file is LZH-compressed, a much smaller file with 
  635. the same first name and a file type with a Y replacing the middle letter of 
  636. the file's filetype is created. Other compression and packaging tools are 
  637. available, but the tendency for CP/M material seems to be leaning toward 
  638. LZH-compression followed by library packaging. See below for library tools.
  639.  
  640.              4.17 LPUT.COM And 4.18 LBREXT.COM And 4.19 LT.COM
  641.     A Library Building, A Library Extracting And A Library Typing Tool
  642.  
  643.      LPUT (Library PUT) is used to create and add members to library files 
  644. (.LBR files.) NZCOM.LBR is a library file. Other packaging techniques are 
  645. popular (.ZIP, .ARC etc.) but .LBR's are the most common CP/M packaging 
  646. method. LBREXT is used to extract files from libraries. It supports options 
  647. to "inspect" (ie. say yes or no to the extraction) and "decompress," and 
  648. all popular compression methods, including the latest, LZH, are supported.  
  649. Finally, LT, Library Typer, lets you view (type out) a member of a library, 
  650. compressed or not.
  651.  
  652.      This concludes this Primer. I strongly encourage you to take advantage 
  653. of both Cran's revolutionary new product (MYZ80) and the Z-System it lets 
  654. you use on your AT-class (80286, 80386, 80486 etc.) computer. It is so 
  655. exciting to me that CP/M, where "it" all started, has come full circle and 
  656. is now usable in a much more powerful version (Z-System) on a much bigger 
  657. and faster machine. Preliminary runs of benchmark programs show that 
  658. programs run from slightly slower to much faster (depending on what AT- 
  659. class computer you use.) There is a wealth of software available for Z80- 
  660. based machines and with the MYZ80 breakthru, I predict development of new 
  661. applications will increase.
  662.  
  663.