home *** CD-ROM | disk | FTP | other *** search
/ CP/M / CPM_CDROM.iso / jsage / zsus / z3help / l.lbr / LUSH.HZP / LUSH.HLP
Encoding:
Text File  |  1991-11-18  |  7.6 KB  |  169 lines

  1. ;
  2.                                    LUSH.COM                                   
  3.  
  4.              Size (recs) CRC   Version    Author/Latest Issue      Disk
  5. LUSH.COM       4k (26)   1150  1.2        Bruce Morgen 7/91        Z3COM11
  6. LUSH.4OM       4k (31)   75F8  1.2        Bruce Morgen 7/91        Z3COM11
  7.  
  8.   1- Syntax  2- Commands  3- Ext Programs  4- Renaming  5- BYE  6- Notes      
  9.  
  10.  
  11.    LUSH  is  a  minimal ZCPR  shell which  takes advantage of the extended CCP 
  12. services of ZCPR 3.3+.  This allows both reduced program  size (making  for  a
  13. faster shell) and  enhanced security.  Since ZCPR itself, and not LUSH, parses
  14. DU  and  directory specifications  used  by  the  program, LUSH  automatically 
  15. adjusts  to whatever security levels  are present  in the current ZCPR system.
  16. This  means  that  the same program can  be used  by  both secure  and private
  17. systems without installation.
  18.  
  19.    Vs 1.0 (12/1/87) by Carson Wilson.
  20. :1
  21.     Syntax   LUSH [dir: or du:]ufn[.LBR]
  22.  
  23.  
  24.    LUSH requires a shell stack with entries of at least 32 bytes  each  (stan-
  25. dard size), and an external FCB.  If any of these conditions are not met, LUSH
  26. aborts with the appropriate error message. 
  27. :2
  28.  Internal Commands 
  29.  
  30.  
  31. >HELP or ?                 <-- display help screen
  32.    
  33. >DIR [afn]                 <-- display this library's directory
  34.  
  35. >LUSH [du:|dir:]ufn[.LBR]  <-- attach to another library file
  36.  External Commands 
  37.  
  38.    External commands begin with a leading space and instruct LUSH to send the
  39. command verbatim to ZCPR. 
  40.  
  41.  
  42. > command [parameters]     <-- command [parameters]
  43.  
  44.  
  45.    When ZCPR has completed processing the command, ZCPR reloads LUSH using the
  46. program  name, ZCPR  directory, and  library name LUSH  was originally invoked
  47. with.
  48.  Parsed Commands 
  49.  
  50.    Parsed commands  begin without  a  leading  space.  LUSH parses  the drive,
  51. user,  and name  of the current directory file  as the first parameter  of any
  52. ZCPR command line.  This allows LUSH to  work as a 'front end' for the various
  53. library  utilities  which  accept  the  first  command  line  parameter  as  a 
  54. designation  of  the library file  on  which  to operate.  Thus, if  LUSH were
  55. attached to LUSH10.LBR at directory B0:,
  56.  
  57. >command [parameters]     <-- command B0:LUSH10.LBR [parameters]
  58.  
  59.    Again, when  ZCPR  has completed processing  the command, ZCPR reloads LUSH
  60. using the  program name, ZCPR directory,  and library name LUSH was originally
  61. invoked with.
  62.  Hybrid Commands 
  63.  
  64.    If the  KMD  or XMODEM commands  are  given  without  a leading space, LUSH
  65. parses them as follows:
  66.  
  67. >KMD|XMODEM S[K] ufn       <-- send a member of this library
  68.  
  69.    If LUSH were attached  to LUSH10.LBR  at directory B0:, and the command was 
  70. 'KMD SK THIS.FIL", LUSH would send the command 'KMD LK B0:LUSH10.LBR THIS.FIL'
  71. to ZCPR.
  72.  
  73.    KMD  and XMODEM  are  external  commands  in  the  sense  that  no  command 
  74. processing is done by LUSH - it merely sends a command line to ZCPR.  But they
  75. are  internal commands  in  the sense that they  are dedicated commands.  Only
  76. the commands 'KMD'  and 'XMODEM' will  be  parsed with L or LK  as  the  first
  77. parameter, and  only 'KMD' or 'XMODEM' will  be  sent  as  the command name to 
  78. ZCPR.  Therefore, for  use  with RCP/M systems, a  program with the exact name
  79. XMODEM or KMD must be available for sending files.
  80. :3
  81.  External programs - 1/2 
  82.  
  83.    Like ZLUX, ZLBR, and LUSH Version 1.0, LUSH Version 1.2 depends on external
  84. utility programs for most of its  functionality.   The only internal  commands
  85. are LUSH  (the LUSH reattachment command,  which takes on the actual EFCB name
  86. given to LUSH.COM),  HELP (also runnable via "?"),  and,  if  implemented  via
  87. conditional assembly, DIR.   For a fully functional LUSH,  the following prog-
  88. rams must be available on-path  (because of the extremely  flexible  way  LUSH
  89. passes command lines to external programs,  almost any LBR tool  (CL, LREPAIR,
  90. LLF, NULU, etc.) can be part of the LUSH  command  set  --  the following list
  91. refers only to programs needed for commands listed on the LUSH help screen):
  92.  External Programs - 2/2 
  93.  
  94. Program Name                  What it actually is
  95. ------------                  -------------------
  96. LDIR.COM*                     Usually LDIRB Version 1.2 or later
  97.  
  98. TYPE.COM                      Usually ZLT Version 1.1 or later
  99.  
  100. UNARC.COM                     Usually UNARCZ Version 1.3 or later
  101.  
  102. ZD.COM                        Usually ZDIR Version 1.2 or later
  103.  
  104. ZTYPE.COM                     Usually ZTYPE Version 1.1 or later
  105.  
  106. LHVW.COM                      LHVW Version 1.1, with provided
  107.                               patch (LHVWZ3PT.HEX) installed
  108.  
  109. KMD.COM**                     KMD or ZMD, any version(?)
  110.  
  111.  
  112. Notes:   *   not required if LUSH is assembled with internal DIR command
  113.         **   normally required for RAS-RCP/M applications only
  114. :4
  115.  Renaming LUSH12 
  116.  
  117.    LUSH12 may be renamed to preference as long  as the  chosen  name  does not
  118. exceed four characters  (excluding  the ".COM,"  of course).   The chosen name
  119. will then become the LUSH  reattachment  command and will appear on the HELP/?
  120. command screen; e.g. LUSH, LUX, LBR, ZLUX, and ZLBR are OK, LIBRARY, LBRSHELL,
  121. and LSHELL are not.   If this limitation  proves bothersome, it can be removed
  122. rather easily, but I will do so  "officially"  only  if  there  is  widespread
  123. kvetching.
  124. :5
  125.  LUSH12 and BYE 
  126.  
  127.    SYSOPS:   Please note that there is  apparently a  problem  when  a  Type 4
  128. linkage of LUSH12 is used under BYE --  external programs that warm boot (like
  129. ZTYPE and LHVW) tend to lock up the system when they  attempt to  exit back to
  130. LUSH.  Use a Type 3 linkage to avoid  BYE-related  problems  until  some alert
  131. soul discovers the gremlin!
  132. :6
  133.  LUSH Notes - 1/2 
  134.  
  135.    a. LUSH does not test for a shell stack, etc., as these are a required part
  136.       of all Z33 systems.
  137.  
  138.    b. LUSH flushes pending commands from the  MCL,  and will not run under ZEX
  139.       or SUBMIT.   Since I cannot think of an instance where this will cause a
  140.       problem, ZEX/SUBMIT/MCL testing as outlined in  Z33PNOTE.002 by Jay Sage
  141.       has been omitted.
  142.  
  143.    c. The structure and  much  of  the  code  of  LUSH  are derived from Terry
  144.       Carroll's  ZLBR.COM,  which in  turn  is  derived  from  John  Poplett's
  145.       ZLUX.COM.
  146.  
  147.    d. Vs 1.2 updates (6/18/91, Bruce Morgen):
  148.       - Added LZH support via patched LHVW v1.1.  Patch is LHVWZ3PT.Z80.
  149.  LUSH Notes - 2/2 
  150.  
  151.    e. Vs 1.1 updates (5/14/91, Bruce Morgen):
  152.       - Major code crunching and the new  LIBs  result in  a new  LUSH that is
  153.         smaller than the original, but with far greater functionality.
  154.       - Removed dependency on  the  ZCPR 3.3+ CCP  parser  (conditional on the
  155.         "z33only" equate).   LUSH will now run under BGii, NZCOM, Z3PLUS, Z34,
  156.         and (as a Type 3) Z33.  
  157.       - As a Type 4, LUSH allocates LBR directory buffer space dynamically, so
  158.         no more crash worries!
  159.       - Added "ZMD" as the new "KMD" synonym, replacing obsolete "XMODEM."
  160.       - LUSH can now be renamed  LUX  (or any  other  name  up to 4 letters in
  161.         length) and its command table and  HELP/?  command  text  will reflect
  162.         the selected name.  
  163.       - Now handles ARC/ARK (via UNARC.COM) and ZIP (via ZD.COM, ZTYPE.COM).
  164.       - The  "intdir"  conditional  allows  use  of  LDIR.COM in  lieu  of the
  165.         internal LUSH directory routine, a size-for-speed tradeoff.
  166.       - LUSH does not have a Type 3 safety header,  and it is recommended that
  167.         Type 3 versions be  ORGed at  100H,  if only to reduce the (very slim)
  168.         chance of TPA overflow with the internal DIR command.
  169.