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 / BEEHIVE / ZSUS / Z3HELP-5.LBR / V.LBR / VLU.HZP / VLU.HLP
Text File  |  2000-06-30  |  20KB  |  401 lines

  1. ;
  2.                           Video Library Utility
  3.  
  4.       A-  Overview                   D-  Option Menu                  
  5.       B-  Help Display               E-  Cursor Motion                
  6.       C-  Invoking VLU               F-  Jump Command                 
  7.  
  8.             Disk Operations                   Library Operations
  9.       G-  Changing directories       O-  Changing libraries           
  10.       H-  Tagging files              P-  Extracting and Uncompressing 
  11.       I-  Crunching disk files       Q-  Building libraries           
  12.       J-  File size report           R-  Adding Files to a library         
  13.       K-  Deleting disk files                            
  14.       L-  Renaming disk files                 Miscellaneous               
  15.       M-  Group Operations           S-  Configuration                
  16.       N-  Viewing disk files         T-  Security                     
  17.            (and lbr members)         U-  Contributors/Programmer Note 
  18. :A
  19.  VLU107                                                                       
  20.  Copyright 1987, 1988 Esoteric Software                   Michal Carson 11/88 
  21.  
  22. A ZSIG release.
  23.  
  24.  
  25. VLU is a ZCPR3-specific library utility with crunch,  uncrunch,  and unsqueeze
  26. capabilities.  It will allow the user to view,  uncompress, or extract library 
  27. members or  to view,  uncompress (unsqueeze or uncrunch,  VLU will decide), or 
  28. crunch disk files.   VLU will build libraries  from disk files,  crunching the 
  29. files as they are added.  Date and time stamping is supported.
  30.  
  31. The utility will  display  a list  of disk files on  the screen  along with  a 
  32. cursor and other information.   Placing the cursor next  to the name of a file 
  33. with the extension .LBR and pressing 'O' for Open will display the contents of 
  34. the library and shift the cursor into that directory.
  35. :B
  36.  The Help display 
  37.  
  38.  
  39. Pressing "/" or "?" will evoke a display summarizing the commands available to
  40. the user.   These commands  change  according  to  Wheel status  and directory
  41. choice (e.g., Delete is not available in the library and is never available to
  42. non-wheels).   Pressing either  of these  keys  a second time  will  clear the
  43. display.
  44.  
  45. :C
  46.  Invoking VLU 
  47.  
  48.  
  49. Use VLU as an extension to a ZCPR3 shell,  such as ZFiler,  invoked  through a 
  50. macro.  To install it,  one need  only open  the ZFILER.CMD file  with  a word 
  51. processor and  enter  a line  of the  form "1 vlu".   Thereafter,  positioning 
  52. ZFiler's cursor beside  a library file  and pressing "1" (possibly preceded by 
  53. [esc]) will bring  up VLU with  the library already open.  A better thought is
  54. to assign this macro to  the "O" key--"O $d1$u1:;vlu"  in ZFILER.CMD--so  that
  55. [esc]"O" will open the indicated library.
  56.  
  57. Some aspects of VLU  were designed  to make  it  an  extension of  tools  like 
  58. ZFiler.   Most of these tools  use the ZCPR system  files to store the name of 
  59. the  current file  (the file the cursor was pointing to on exit).   VLU checks 
  60. these filenames and interprets the current file (sys file 2) as a library.  On
  61. starting up,  VLU will try to open  a library file of this name in the current 
  62. directory.  
  63.  
  64. This  allows the user to invoke VLU from the "Z" prompt of ZFiler or through a 
  65. macro, pass no parameters,  yet open the  current file if it  is a library (or 
  66. shares the same  name as  a library though it may have a different extension).
  67. If a different library is opened  before returning to ZFiler,  VLU will modify 
  68. the  filename  in system  file 2  (and thus  cause  ZFiler to  believe it  was 
  69. pointing to this library when it exited).
  70.  
  71. As  a command file,  VLU can,  of course,  be invoked  from the system command 
  72. prompt.  If a library name is entered on the command line, that name will take
  73. priority over any  name currently in system file 2  and  the library  will  be 
  74. opened if it exists.   Even from  ZFiler's "Z" prompt,  with  the  pointer  on 
  75. ABC.LBR,  entering the command "VLU DEF" will open DEF.LBR and place that name 
  76. into system file 2.
  77.  
  78. If the invocation is followed by  a DU: specification or by the name of a ZCPR
  79. named directory (DIR:),  VLU  will display  the filenames  in  that  directory
  80. instead of  the  default  directory.  That is,  "VLU TOOLS:" will  display the
  81. contents of the TOOLS: directory.
  82.  
  83. VLU can be re-entered with the GO command.
  84. :O
  85.  Changing libraries 
  86.  
  87.  
  88. When  a library  is opened,  when VLU  is invoked  with  a library name in the 
  89. command line,  or when  a new directory is logged in with a library open,  the 
  90. VLU cursor will point into the library directory.  Pressing the [esc] key will 
  91. shift the cursor back into the disk directory.  Opening a different library is
  92. as simple as positioning the cursor in front of the name and pressing "O".  
  93.  
  94. :E
  95.  Cursor motion 
  96.  
  97.  
  98. Moving  the  cursor (pointer) in VLU  is effected  using  the  WordStar cursor 
  99. motion controls.   Ctrl-E moves the cursor up one line,  ctrl-X moves it down.
  100. Ctrl-S moves the cursor left one file, ctrl-D moves it right.  Ctrl-F brings a
  101. new directory onscreen  if there  are  more files in the directory  (as if the 
  102. display were  moving  right  by  a  directory),  ctrl-A moves  back toward the 
  103. beginning of the file list.   Ctrl-F will wrap around from the final directory
  104. to the original.
  105.  
  106. The arrow keys  will also function  if they  are properly defined in the users 
  107. Environment descriptor.   The symbols "+" and "-"  (and "=",  the  usual  non-
  108. shifted counterpart of "+")  have the same effect on the directories as ctrl-F
  109. and ctrl-A, respectively.
  110.  
  111. The [esc] key shifts directories:  from the library to the disk, from the disk
  112. to library.  In most instances the cursor will "remember" where it was when it
  113. last pointed into that directory.
  114.  
  115. :F
  116.  Jump command 
  117.  
  118.  
  119. Typing a "J" will bring  a prompt for a filename to which the cursor will jump
  120. when the user hits return.  The name need not be exact (entering "v" will jump
  121. to the first filename which begins with "v") and it need not be on the current
  122. display.   It is  only necessary that the targeted  file  come  alphabetically 
  123. after the current file.
  124.  
  125. :P
  126.  Extracting and Uncompressing library members 
  127.  
  128.  
  129. Positioning  the cursor beside the name of a member file within  a library and
  130. pressing "E"  for Extract will cause the file to be copied from the library to 
  131. the disk with no change in form.   If  it  is crunched  or squeezed within the 
  132. library, it will be crunched or squeezed on the disk.  
  133.  
  134. Pressing "U" for Uncompress will cause a crunched  file to  be uncrunched onto
  135. the disk,  a squeezed file  to be unsqueezed onto the disk, or an uncompressed
  136. file to be extracted sic.  
  137.  
  138. :G
  139.  Changing directories 
  140.  
  141.  
  142. Library members may be extracted to a disk and/or user area other than the one
  143. which contains  the library.   Open  the library  first,  then  use  the Login 
  144. command  to move to the destination  directory  and perform  the extraction or 
  145. decompression.   The  move is  accomplished  by pressing "L"  (cursor position 
  146. makes no difference with this command)  and answering  the prompt "Directory".  
  147. The user may enter a DU: specification  (e.g., A0:, B14:, F:) or the name of a
  148. ZCPR3  named  directory to  be found in  the  current  system  (e.g.,  MODEM:, 
  149. DUNGEON:).  The colon is not necessary in any case and an invalid directory or
  150. denied access will relog the current area.   No entry  at all  will also relog 
  151. the current area to facilitate disk changes.
  152.  
  153. :H
  154.  Tagging files 
  155.  
  156.  
  157. The "T" command will tag an untagged file and the "Y" command  will remove the 
  158. tag from  a tagged file.   The tag appears as a hash (#) immediately following 
  159. the filename.   After a group operation (actually, during the group operation) 
  160. hard tags represented by the hash are replaced by soft tags which appear as an
  161. apostrophe (').  Soft tags may be transformed back into hard tags by the retag
  162. command: "*".
  163.  
  164. Wildcard tagging is accomplished by pressing "W" and providing a wildcard file
  165. specification in response to the prompt.  All files in the directory, starting
  166. from the beginning, which match the file spec will be tagged.
  167.  
  168. Group Tag ("GT") is equivalent to a *.* wildcard tag.
  169.  
  170. It may be convenient at times to untag all files.  This can be accomplished by
  171. relogging the directory with the Login command.  Certain file operations which
  172. affect the disk directory  (anything that adds or deletes files) will also end 
  173. by  relogging  the directory and  any  remaining  tags will  be erased.  Group 
  174. operations obviously prevent this relogging until all files have been operated
  175. upon.
  176.  
  177. :M
  178.  Group operations 
  179.  
  180.  
  181. "G" will  evoke  the  Group prompt.  From  this prompt,  several  commands are 
  182. available to  wheels.  Only the View command is available to non-wheels and it
  183. will be executed immediately.   If the wheel byte is not zero, the prompt will
  184. indicate  by the  first letter of  each command that  View,  Tag,  Uncompress, 
  185. crunch,  and either Extract or Delete and Build are available.   Any selection
  186. is carried out on all tagged files.   The Group manager will  check for ctrl-C 
  187. between each file and abort if it is seen.
  188.  
  189. :N
  190.  Viewing files and library members 
  191.  
  192.  
  193. Crunched,  squeezed,  and uncompressed files  may be viewed by pressing "V" at 
  194. the VLU prompt.  The screen will clear, the file's name will appear at the top
  195. of the  screen.  Just below the filename, the  file's datestamps,  if present, 
  196. will be shown.  These will be taken from the disk in the case of ordinary text
  197. files,  from  the library  directory  if the  file is  a  member,  or from the 
  198. internal  datestamp of  a compressed file.   The  display will stop  with  the 
  199. prompt  "[strike any key]" after,  in general,  22 lines.  The number of lines 
  200. (the size of a screen page) is taken  from  the  ZCPR3 Environment descriptor.  
  201. The number provided there,  by convention,  is two lines less  than the screen 
  202. height.   This should give the viewer two lines of overlap with each page.  If 
  203. this is unsatisfactory, the user's Environment descriptor can be adjusted.
  204.  
  205. At  any time during  the  viewing,  pressing  ctrl-S  will  pause the display.  
  206. Pressing ctrl-C  will  abort the operation.   Under Group control, ctrl-C will 
  207. abort the entire operation and  no more files will be presented; the user will 
  208. be  returned  to  the file directory display.   Unscreened  files  will remain 
  209. tagged.  Ctrl-X may be used to skip to the next file under Group execution; it
  210. has the same effect  as ctrl-C  if only one  file is  being viewed, id est, we 
  211. abort.
  212.  
  213. Ctrl-Z will suppress the "[strike any key]" prompt and the file will scroll by
  214. continuously.   The viewer is  then left  with ctrl-S to stop the display (and 
  215. any  key except  ctrl-X  and  ctrl-C  will restart it).   Another  Ctrl-Z will 
  216. restore the paging mode  and  stop the  screen immediately.  This is handy for 
  217. long files when the interesting text is near the end.
  218.  
  219. Certain file extensions are  proscripted (e.g.,  COM, LBR, ARK, SYS, RCP, REL, 
  220. PRL, etc.) and VLU will  give the message "may not type" followed  by the file 
  221. name.   Crunched files of proscripted types  may have a "stamp" of interest to 
  222. the user.   If a proscripted file has a "Z" in the extension  (e.g., CZM, RZL, 
  223. etc.) VLU will give the  filename  as it appears  and attempt  to  extract the 
  224. original filename and  any stamp contained  in the  first record of  the file.
  225. Thus,  the datestamps of  COM and  REL files  may  be inspected using the VIEW
  226. command.
  227.  
  228. :I
  229.  Crunching disk files 
  230.  
  231.  
  232. The crunching faculty  of VLU is incidental.  Because of the Group operations,
  233. it is quite useful but, ab ovo,  crunching files on disk has been secondary to 
  234. the project of crunching files into libraries.   Selecting  "K" at the command 
  235. prompt will cause VLU to crunch the file pointed to by its cursor.
  236.  
  237. VLU  will first prompt for a "stamp."  By convention,  this is a message of up 
  238. to 40 characters enclosed in square brackets.   The message is imbedded in the 
  239. first record  of the  crunched file  to be  displayed when  the file is either 
  240. uncrunched or viewed.   Often,  the message reports the date of the crunching, 
  241. the author or origin of the file, or its expanded size.
  242.  
  243. VLU will allow the entry of up to 38 characters.   Two characters are reserved 
  244. so that VLU can insert the square brackets if the user omits one or both.  VLU
  245. will remove  any trailing  spaces  from  the message;  if the user  wishes the 
  246. spaces to appear, the user must enter at least the final closing bracket.
  247.  
  248. VLU will also imbed the current datestamp of the file, if present, in the form
  249. established  by CRUNCH23D.  To use  the datestamp in  place  of  a text  stamp 
  250. simply type a return at the "Enter stamp" prompt.
  251.  
  252. The crunching operation will  be aborted  if the file  is  already  compressed 
  253. (either crunched or squeezed) or  is  of a proscripted filetype.   Proscripted 
  254. filetypes are LBR, ARC, ARK, BAD,  and, if the target is a library,  FOR, INF, 
  255. and CIM (vide infra).
  256.  
  257. VLU will allow the  user to crunch  a member out of a library  onto  the disk.  
  258. There seems no harm in such an operation (and as little use).
  259.  
  260. :J
  261.  File size report 
  262.  
  263.  
  264. The size of  a file in  kilobytes  and sectors (records) is reported  when the 
  265. user presses either "F" or carriage return.   If the file is a library member,
  266. size is reported to the nearest higher 1k.   If the file is  on disk,  size is
  267. reported according to the blocking factor of the disk.
  268.  
  269. :L
  270.  Renaming disk files 
  271.  
  272.  
  273. To rename a  library member or disk file,  position the cursor beside the file
  274. and press "R".  Enter the new name at the prompt.
  275. :K
  276.  Deleting files 
  277.  
  278.  
  279. To delete a library member or a disk file, position the cursor beside the file
  280. and press "D".   The user  will be prompted  to confirm that the file is to be 
  281. deleted.   Under Group Delete,  the first prompt  applies to all tagged files.
  282. Answering Yes  to this prompt will delete  all files with  no further prompts.
  283. Answering No will abort the operation entirely (no files deleted).   Answering
  284. Verify will cause a prompt to appear for each file in the group.
  285. :Q
  286.  Building libraries 
  287.  
  288.  
  289. In order for VLU to build a library, all files to be  included must be located 
  290. in the same directory.  The library may,  if necessary,  be built in a foreign 
  291. directory.
  292.  
  293. As  distributed,  VLU will crunch  all files  as they are added to the library 
  294. (unless  the  extension  is  unacceptable  as  previously  stated).   See  the 
  295. configuration section for possible attenuation of this practice.
  296.  
  297. VLU does have limits  governing the  maximum size library it may build or deal
  298. with.   Those limits will vary with the  size of the current TPA.   Most users
  299. will never approach VLU's limits,  but for curiosity's  sake,  a TPA of 58k is
  300. sufficient to manipulate a library of over 1200 members.
  301.  
  302. To initiate the construction,  tag the files which are to be included and then 
  303. type "GB" for Group and Build.   VLU will prompt for the name and directory of 
  304. the  "new library" and  the number of entries  to allow.  A carriage return at 
  305. the "entries"  prompt will build  a library with  the minimum  directory size, 
  306. only large enough  to accomodate the  currently tagged files.   If you specify 
  307. the number of members (say, 40), VLU will build a library large enough to hold
  308. at least  this many  members and will  report  the actual  number  of possible 
  309. entries ("Initializing 43 entries").
  310.  
  311. Rather than count the number of members you have tagged and add to that number
  312. of members you expect to add in the future, you may simply enter "+40" to have
  313. VLU make the calculation.   VLU will build  a library large enough to hold the
  314. presently  tagged files  and 40 more.   If no files are currently tagged,  VLU 
  315. will build an empty library large enough to hold at least 40 members.
  316.  
  317. VLU will  then initialize  the  library  directory  area.   The directory list 
  318. (onscreen)  will be reset the first screen;  the cursor will move to the first
  319. tagged file and  a message  will display that  the file  is  being crunched or 
  320. added  as appropriate.   If any files  are to be crunched,  the "stamp" prompt 
  321. will appear and  the  stamp thus  entered  will  be  in  effect  for all files 
  322. crunched into the library.
  323.  
  324. Under this operation,  as under the Wildcard,  and other Group operations, the 
  325. directory list onscreen will shift through all files searching for tags.  This 
  326. will  be  more  noticeable in larger directories  (which require more than one
  327. display) and during the Building  of libraries  (because of the pause to close 
  328. the library).
  329.  
  330. :R
  331. Adding Files to a Library
  332.  
  333.  
  334. Adding files to  an existing library is  as simple as constructing the library
  335. in  the first  place and  the files  will be compressed according  to the same
  336. rules.  Date/time  stamps will  be preserved.   The current  date/time will be
  337. written   into  the  library   directory  to   indicate  the  library's   last 
  338. modification.
  339.  
  340. Files may be added individually or tagged and added in a Group operation.  The 
  341. library to  which they  will  be  added  must  be  open and  must  have unused 
  342. directory entries (deleted entries will not be overwritten). 
  343. :S
  344.  Configuration 
  345.  
  346.  
  347. Several configuration bytes are located in the first sector of the VLU command
  348. file where they may be easily patched.   For the  exact  location and function
  349. of these bytes, see the accompanying file, VLUxxxC.Z80.
  350. :D
  351. Option menu
  352.  
  353.  
  354. The Option menu,  accessed by typing "M"  at the  command prompt,  will toggle
  355. many of  the configuration bytes.  This  allows  temporary  assignment  of the
  356. options.
  357. :T
  358. Security
  359.  
  360.  
  361. The Login command of  VLU will  use the Z33 parser when it is available,  thus
  362. behaving exactly  as  the  operating  system would  in allowing  admittance to
  363. directory areas.  When Z33 is  not available,  VLU  allows immediate  entry to
  364. any du: or dir: within the MAXDSK and MAXUSR limits of the environment.   Dir:
  365. forms outside these  limits  are  also accepted;  passwords,  if present,  are
  366. enforced.
  367.  
  368. Commands Delete  and Rename  and any commands that  would create new files are
  369. available only while the wheel byte is set.
  370. :U
  371.  Contributors 
  372.  
  373.  
  374. VLU directly incorporates the work of many  "better makers."  My thanks to all 
  375. of them as much and more for the opportunity to read and learn from their code
  376. as well as for their library releases.  Among them, the following:
  377.  
  378. Richard Conn,  Howard Goldstein,  Jay Sage, et al. for SYSLIB, Z3LIB, Z33LIB04 
  379. and VLIB--and ZCPR, itself.
  380.  
  381. C.B. Falconer and Steven Greenberg for USQREL, UNCREL, CRN, and BUFFERS.
  382.  
  383. Steven Cohen for M24.   Carson Wilson for DATEHL and Z80DOS.  Bridger Mitchell 
  384. for FRESET and CRUNCH23D.
  385.  
  386. Martin Murray for NULU, the standard for these efforts.   And Gary Novosielski 
  387. for the library format.
  388.  
  389.  Note from the programmer 
  390.  
  391.  
  392. VLU,  its source code,  and its  documentation  are  copyright  1987, 1988  by
  393. Esoteric Software.   VLU is  distributed  for  non-commericial use  only;  any
  394. commerical use  or  any  re-distribution  in  association  with  a commericial
  395. product or package requires the prior written permission of the author.
  396.  
  397. I may be reached on Z-nodes 2  and 3--Al Hawley's Ladera and Jay Sage's Newton 
  398. Centre;  both  are   available  via   PC-Pursuit.   I  log  into  these  nodes 
  399. approximately  weekly.   If it is important to reach me sooner, my home Z-node 
  400. is #58, operated by Kent Mason in Oklahoma City (405/943-8638).  
  401.