home *** CD-ROM | disk | FTP | other *** search
/ CP/M / CPM_CDROM.iso / mbug / mbug041.arc / NSWP.DOC < prev    next >
Text File  |  1979-12-31  |  29KB  |  693 lines

  1. .op
  2. .po 7
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.         NSWP - A disk maintenance utility.
  10.  
  11.  
  12.         Dave Rand
  13.         10232 - 160 Street
  14.         Edmonton, Alberta
  15.         Canada
  16.         T5P 3E9
  17. .he NSWP - A disk maintenance utility
  18. .paè.fo NSWP.DOC                                                   page #
  19.  
  20.  
  21.  
  22.             I N D E X
  23.             *********
  24.  
  25.  
  26.                                       Page
  27.  
  28. Introduction ........................  3
  29.      Overview of NSWP ...............  4
  30.      Invoking NSWP ..................  5
  31. Single file commands ................  6
  32.      Help ...........................  7
  33.      Moving Forward and Backward ....  7
  34.      Exiting ........................  8
  35.      Finding a file .................  8
  36.      Viewing and Printing ...........  8
  37.      Deleting a file ................  8
  38.      Copying ........................  9
  39.      Renaming .......................  9
  40.      The Space command .............. 11
  41.      The Log command ................ 11
  42. Introduction to Multifile Commands .. 12
  43.      The Tag command ................ 12
  44.      Wildcard tagging ............... 13
  45.      The Untag command .............. 13
  46.      The Mass copy command .......... 13
  47.      After the mass (Again) ......... 14
  48.      Erasing files .................. 14
  49.      Squeezing and Unsqueezing files. 14
  50.      Setting file status ............ 15
  51. Notes on NSWP 204 ................... 16
  52. Notes on NSWP 205 ................... 16
  53. Epilogue ............................ 17
  54. Credits ............................. 17
  55. Contributions ....................... 17
  56. .paè            Introduction
  57.  
  58. NSW╨  i≤  ne≈  disδ  utilit∙ thaε caε replacσ man∙ oµ  thσ   morσ  commoε 
  59. utilities that are used,  such as STAT, PIP, USQ, SQ, TYPE, PRINT, SWEEP, 
  60. DISK7, PROT, and others. In only 12K of disk space, it replaces over 100K 
  61. of utilities!
  62.  
  63. NSWP is written entirely in assembly language,   and will run on any CP/M 
  64. 2.x,  3.x or MP/M based system with no changes. Since it is coded in 8080 
  65. assembler,   any 8080,  8085 or Z80 compatible processor will serve. Note 
  66. that this program WILL NOT run on CP/M 1.4.
  67.  
  68. When NSWP was conceived,   the dominant file utility was SWEEP,  and thus 
  69. NSWP  is syntax compatible with SWEEP,   but with many  extensions.  This 
  70. allows you to directly rename NSWP to SWEEP,  if you so desire,  with  no 
  71. retraining period.
  72.  
  73. I  hope that you enjoy this program,  and use it well.  Any problems,  or 
  74. suggestions  may be directed to myself at the address on the first  page, 
  75. or on one of the following RCP/Ms:
  76.  
  77. Edmonton RCP/M - (403) 454-6093 (300 or 1200 baud)
  78. Stadium  RCP/M - (403) 479-3450 (300 baud only)
  79.  
  80. or voice at:     (403) 484-4114
  81.  
  82.             Disclaimer and warning
  83.  
  84. While  this  program  has been tested on many systems,  I  will  have  no 
  85. liability or responsibilty to the user or any other person or entity with 
  86. respect to any liability, loss or damage caused, or alledged to be caused 
  87. directly or indirectly by this program,  including,  but not limited  to, 
  88. any  interruption of service,  loss of business,  anticipatory profits or 
  89. consequential damages resulting from the use of this program.
  90.  
  91. Furthermore,  although  this  program  has been placed  into  the  public 
  92. domain, I retain all copyrights to this program, both in the U.S.A and in 
  93. Canada,  and pursuant to this,  this program MAY NOT BE SOLD BY ANY PARTY 
  94. unless  specifically authorized by the author,  Dave  Rand,  in  writing, 
  95. previous to the first copy being sold.  As well,  this program MAY NOT BE 
  96. INCLUDED IN ANY OTHER PACKAGE FOR SALE, even if this program is indicated 
  97. as  being  'in the public domain'.  All of the above applies to both  the 
  98. original  as well as derived,  or modified copies of  the  original.  Any 
  99. modified  copies  of  this  program MUST NOT have  the  copyright  notice 
  100. violated, changed or altered.
  101.  
  102. Please report any copyright violations to the author, at one of the above 
  103. telephone numbers. Thank you.
  104. .paè        NSWP 2 -  A disk maintenance utility
  105.  
  106.  
  107.             NSWP Overview
  108.  
  109. NSWP is a directory and file manipulation program. With it, you can copy, 
  110. delete,  rename, unsqueeze and squeeze files. The documentation following 
  111. is split into two major sections: A tutorial for the inexperienced, and a 
  112. reference  section.  The reference normally will be used  in  conjunction 
  113. with  the  program  to  answer specific  questions  regarding  NSWP.  The 
  114. tutorial is a broad coverage of all of the functions,  and should be read 
  115. through at least once.
  116.  
  117. The most important thing to remember when using NSWP is that it  provides 
  118. a list of your files in ALPHABETICAL order. Moving around in this list is 
  119. quite easy, and will soon become second nature.
  120.  
  121. In this documentation,  all user input is underlined.  As well,  when the 
  122. "current"  file  is referenced in this documentation,  it means the  file 
  123. just to the left of your input.  This "current" file is often referred to 
  124. as the file you are "on".
  125. .paèInvoking NSWP
  126.  
  127. To  make  effective  use  of NSWP,  you must  know  the  various  options 
  128. available to you when you invoke NSWP. Here are some of the options:
  129.  
  130. A>NSWP
  131. This format simply loads NSWP,  and scans the default drive and user  for 
  132. filenames.  Once inside NSWP,  you may change to a different drive and/or 
  133. user,  but  when you exit you will be returned to the drive/user that you 
  134. called NSWP from.
  135.  
  136. A>NSWP *.COM
  137. This  format  loads  NSWP and scans the current drive and  user  for  all 
  138. filenames with the extension '.COM'. Note that NSWP can find system files 
  139. as well, so no additional information need be given.
  140.  
  141. A>NSWP B:*.COM *
  142. The  presence of the second asterisk indicates to NSWP that you  wish  to 
  143. scan all user areas of the indicated disk drive.  In this case, all '.COM 
  144. files on all user areas on drive B.
  145.  
  146. Combinations  of  the above are acceptable,  and you may even log to  all 
  147. user areas, and find all files with the specification '*.* *'.
  148.  
  149. Once  inside NSWP you are presented with a menu,  then a report of  which 
  150. drive  and user you are logged to,  how much space is taken by the  files 
  151. you have specified,  how many files have been found with the  specificat-
  152. ions given, and how much space is left on the disk. A sample follows:
  153.  
  154. Drive A0: 596K in 36 files. 735K free.
  155.  
  156. A special format of this line shows that you are logged to all user areas:
  157.  
  158. Drive B*: 950K in 234 files. 2956K free.
  159.  
  160. From this point, you may execute any of the menu options.
  161.  
  162. A special display occurs if no files are found with the specification you 
  163. have given, or if there are no files in the given drive/user area(s):
  164.  
  165. No files.
  166.  
  167. This  display  may also occur if you delete all the files out of a  given 
  168. specification.  When this occurs,  your menu choices are limited to  ONLY 
  169. 'S', 'L' or 'X'. This allows you to see the free Space on a drive, to Log 
  170. to another drive/user,  or to eXit.  No other choices are valid, nor will 
  171. they be accepted.
  172. .paèSingle file commands
  173.  
  174. There  are two primary types of commands in NSWP:  those that act on  one 
  175. file  and  those that act on many files.  We will go through  them  both. 
  176. Before doing that though, let's try moving around in NSWP first.
  177.  
  178. To  move  in  NSWP,  you  must first understand that the  files  on  your 
  179. selected  drive/user  will be presented to you in a  sorted  manner.  The 
  180. files are sorted in this order: Filename, File extension, user area:
  181.  
  182.   1. B0: -WORK   .001   0K :
  183.   2. B0: ARCADD  .COM   4K :
  184.   3. B0: ARCCOPY .COM   2K :
  185.  
  186. As you can see,  the files are numbered for your convenience. You may not 
  187. directly use these numbers.  As you can see,  the file size is also shown 
  188. (rounded to the nearest block size).
  189.  
  190. Note  that if you have enabled the reverse video sequence  (see  Epilog), 
  191. you may see some of the letters in the filename printed in reverse video. 
  192. The chart below shows how to decode this information.
  193.  
  194.      FFFFFFFF RSA
  195.      12345678 /YR
  196.      |||||||| OSC
  197.  
  198.   4. B0: ARCDEL  .COM   2K : 
  199.  
  200. As you can see, this looks confusing. Really, though, it is not. The tags 
  201. F1-F8  normally are not used,  but NSWP allows you set F1-F4 for your own 
  202. use. The R/O tag means that the file may be read, but not written to. The 
  203. SYS tag means that the file does not appear in normal DIR  listings,  and 
  204. in  CP/M 3,  MPM and CP/M 86 also means that this file is avaiable to all 
  205. user areas.  The ARC tag means that,  if set, the file has been backed up 
  206. since it was last accessed.
  207.  
  208. Now  that  you understand how files are presented,  we can go  through  a 
  209. sample session. Remember, user input is underlined.
  210. .paèA>NSWP B:
  211.  
  212. NSWEEP  -  Version 2.00   02/11/1984
  213.            (c) Dave Rand, 1984
  214.            Edmonton, Alberta
  215.  
  216. Drive B0:  850K in  64 files.  118K free.
  217.  
  218.   1. B0: -WORK   .001   0K : <SP>
  219.   2. B0: ARCADD  .COM   4K : <SP>
  220.   3. B0: ARCCOPY .COM   2K : <CR>
  221.   4. B0: ARCDEL  .COM   2K : <CR>
  222.   5. B0: ARCDIR  .COM   2K : B
  223.   4. B0: ARCDEL  .COM   2K : B
  224.   3. B0: ARCCOPY .COM   2K : B
  225.   2. B0: ARCADD  .COM   4K : B
  226.   1. B0: -WORK   .001   0K : X
  227. A>
  228.  
  229.  
  230. Help
  231.      At any point, you may request the main help menu by pressing '?'.
  232.  
  233.   1. B0: -WORK  .001  0K : ?
  234.  
  235. NSWEEP  -  Version 2.00   02/11/1984
  236.            (c) Dave Rand, 1984
  237.            Edmonton, Alberta
  238.  
  239. A - Retag files        | Q - Squeeze/Unsqeeze tagged files
  240. B - Back one file      | R - Rename file(s)
  241. C - Copy file          | S - Check remaining space
  242. D - Delete file        | T - Tag file for transfer
  243. E - Erase T/U files    | U - Untag file
  244. F - Find file          | V - View file
  245. L - Log new disk/user  | W - Wildcard tag of files
  246. M - Mass file copy     | Y - Set file status.
  247. P - Print file         | ? - Display this help
  248. X - Exit to CP/M       | cr, sp - Forward one file
  249.  
  250.  
  251. Moving forward and backward
  252.  
  253. As you can see,  the two most common commands will be moving forward  and 
  254. backwards  through  the directory.  Either the SPACE bar (<SP>),  or  the 
  255. RETURN key (<CR>) may be used to move forward.  To move backwards, simply 
  256. use the 'B' key. Note that all commands in NSWP can be either in upper or 
  257. lowercase.  Internally,  lowercase will be converted to uppercase. If you 
  258. reach the end of the directory with either command,  you will be "wrapped 
  259. around" to the other end automatically.
  260. .paèExiting
  261.  
  262. To exit, just use the 'X' command as shown above. This will return you to 
  263. the  same drive and user area that you invoked NSWP from,  regardless  of 
  264. anything you may have done in NSWP.
  265.  
  266. Finding a file
  267.  
  268. Since you may have many hundreds of files selected,  you may wish to move 
  269. rapidly  to a particular file.  You may do this through the 'F',  or FIND 
  270. command.
  271.  
  272.   1. B0: -WORK   .001   0K : F Which file? BASCOM
  273.  
  274.   8. B0: BASCOM  .COM  32K : 
  275.  
  276. The Find command always starts looking from entry number one. You may use 
  277. the  standard  CP/M syntax for wildcarding (eg:  to find the  first  .HEX 
  278. file,  you may use *.HEX),  and also note that the Find command will fill 
  279. all  blank  spaces with question marks.  This makes  the  search  strings 
  280. 'B*.*',  'B',  and 'B??????.' all find the first file beginning with 'B'. 
  281. As you experiment, you will find other interesting uses for this command.
  282.  
  283. At this point, you now know how to move through your directory, both rap-
  284. idly and one step at a time. Let's move on to some more useful commands.
  285.  
  286. Viewing and Printing a file
  287.  
  288. The View command, invoked with a 'V', will type the current file onto the 
  289. screen, unsqueezing the file if required. Note that this command will NOT 
  290. prevent  you  from listing ANY type of file,  so you must  use  your  own 
  291. judgement  on what can and cannot be listed.  At the end of each page  on 
  292. the screen,  view will stop, and allow you to abort the viewing with a ^C 
  293. or a ^X.  To get one more line from the file,  hit the space bar.  To get 
  294. another page, hit the <CR> or RETURN key.
  295.  
  296. The Print command,  invoked with a 'P',  will send the current file, with 
  297. no modifications or paging, to the current LST: device. You may abort the 
  298. print with a ^C or ^X. All other features of the View command apply.
  299.  
  300. Deleting a file
  301.  
  302. You  can  delete  the current file just by hitting the  'D'  key.  Before 
  303. deletion occurs, you will be prompted.
  304.  
  305.  12. B0: CDP1    .     40K : D Delete file? Y
  306.  12. B0: DEAD    .DAT 100K :
  307.  
  308.  
  309. If any reply other than 'y' or 'Y' is given the file is not  deleted.  If 
  310. the  file  is deleted,  it is removed from the list and the next file  is 
  311. given the current file's number. 
  312. .paèIf the file is a Read Only file, you will be prompted again:
  313.  
  314.  12. B0: CDP1    .     40K : D Delete file? Y R/O. Delete? Y
  315.  12. B0: DEAD    .DAT 100K :
  316.  
  317.  
  318. Copying a file
  319.  
  320.      While on any file, you may copy that file to:
  321.  
  322. A) Another name, on the same drive/user
  323. B) Another name, on a different drive/user
  324. C) The same name, on a different drive/user
  325.  
  326. NSWP will prevent you from copying a file to the same drive/user that the 
  327. source  file resides on.  Other than that,  there are no restrictions  on 
  328. where  you wish the file to be.  If a file exists on the same  drive/user 
  329. that you wish to place the destination file, the existing file is deleted 
  330. automatically,  even if it is Read Only. When NSWP copies a file, all the 
  331. attributes  of the original file are passed on to the  destination  file. 
  332. Thus,  if a file is a SYS, R/O file, NSWP will cause the destination file 
  333. to be SYS, R/O after the file copy has taken place.
  334.  
  335.  12. B0: CDP1    .     40K : C Copy to (filespec)? C9:BACK.CDP
  336.  
  337. If  you  wish to preserve the name of the file,  you may just  enter  the 
  338. destination  drive/user part of the filespec (eg.  C9:  in the  preceding 
  339. example would have copied the file to drive C user 9,  retaining the name 
  340. CDP1). Just entering the drive part of the filespec causes NSWP to retain 
  341. the user number of the source file.
  342.  
  343. If  the  filename is followed by a space,  then a 'V',  the file will  be 
  344. verify read after it is written.  NSWP maintains a CRC of the file as  it 
  345. is writing the file, and verifies this CRC.
  346.  
  347.  
  348. Renaming files
  349.  
  350.      The Rename command ('R') may be used to:
  351.  
  352. A) Change the name of one file
  353. B) Change the names of many files
  354. C) Change the user number of one file
  355. D) Change the user number of many files
  356.  
  357.      To just change the name of one file, the syntax is simple:
  358.  
  359.  12. B0: CDP1    .     40K : R New name, or *? CDP2
  360.  12. B0: CDP2    .     40K :
  361. .paè     You may also change the user number of the file, as follows:
  362.  
  363.  12. B0: CDP1    .     40K : R New name, or *? B1:CDP2
  364.  12. B1: CDP1    .     40K :
  365.  
  366. Note  that if all user areas are not specified in the logon of NSWP,  the 
  367. file may not be shown on your list when renaming to another user area.
  368.  
  369. To  change a group of files from one name to another,  you may enter  the 
  370. following command at any file:
  371.  
  372.   9. B0: BASIC   .COM  24K : R New name, or *? *
  373.  
  374. Old name? *.HEX
  375. New name? *.BAK
  376.  
  377. At  this point all files with the extension .HEX will be renamed  to  the 
  378. same filename but with the extension .BAK. You will see a running display 
  379. on the screen as each file is renamed.  Any valid wildcard may be used to 
  380. select  the  source  files,  and  the destination  files  will  take  one 
  381. character from the source for each '?' in the name. An asterisk qualifies 
  382. as  filling the remainder of the field with '?'.  If the destination file 
  383. exists, the rename is not made.
  384.  
  385. You  may  also choose to rename a group of files to  another  user  area, 
  386. optionally changing their names as well:
  387.  
  388.   9. B0: BASIC   .COM  24K : R New name, or *? *
  389.  
  390. Old name?    *.HEX
  391. New name? B1:*.BAK
  392.  
  393.  
  394. This  command  will rename all .HEX files on drive B user 0 to  the  same 
  395. filename,  but  with the extension .BAK,  and place the resultant file in 
  396. user 1.  You may want to try this command a few times to get the hang  of 
  397. it, but it is extremely powerful.
  398. .paèThe Space command
  399.  
  400. The Space command ('S') simply asks you for a drive code,  then tells you 
  401. the  remaining  space on the drive you specify.  Before doing  the  space 
  402. check, a drive reset is performed, so feel free to change disks.
  403.  
  404.  
  405. The Log Command
  406.  
  407. The  Log  command  ('L') allows you to change your directory  to  another 
  408. drive  or user.  Additionally,  it allows you to re-specify the  wildcard 
  409. mask just like entering the NSWP program from CP/M.  As well,  the  drive 
  410. system  is  reset,  so again you should be able to change to a  different 
  411. diskette at this point or to another part of the same diskette.  When the 
  412. Log command is used, the instructions are reprinted for review.
  413.  
  414.  16. B0: DD      .COM   4K : L New drive/user/mask? A14:*.HEX
  415.  
  416.  
  417. NSWEEP  -  Version 2.00   02/11/1984
  418.            (c) Dave Rand, 1984
  419.            Edmonton, Alberta
  420.  
  421. Drive A14:  44K in  2 files. 1118K free.
  422.  
  423.   1. A14:NSWP    .HEX  22K:
  424. .paè        Introduction to Multifile commands
  425.  
  426. Now  that all the commands that affect single files have been  described, 
  427. it is time to introduce the concept of Multifile commands. These commands 
  428. are  ones that affect as few as one or as many as all of the files  on  a 
  429. single  disk.  To affect these files,  though,  we must have some way  of 
  430. describing  which files need to be affected.  CP/M has a way to do  this, 
  431. using "wildcards". This program, on the other hand, uses the concept of a 
  432. file "tag".
  433.  
  434. The Tag command
  435.  
  436. Tagging  a  file,  in  its simplest form,  can be  accomplished  just  by 
  437. depressing  the 'T' key when the file to be tagged appears.  What exactly 
  438. is  a tag?  A tagged file is a file in the list of filenames that has  an 
  439. asterisk next to the colon after the name of the file, as shown below.
  440.  
  441.   9. B0: BASIC   .COM  24K :*
  442.  
  443. A  tagged  file is different from an untagged file in that  you  may  now 
  444. request  an operation that deals with several unrelated files (eg.  Files 
  445. that will not match using only one wildcard).  A sample "tag" session  is 
  446. shown:
  447.  
  448.   9. B0: BASIC   .COM  24K : T Tagged files =  24K ( 23K).
  449.  10. B0: BRUN    .COM  16K : T Tagged files =  40K ( 39K).
  450.  
  451. Note  that  the  'T'  command automatically  performs  a  "move  forward" 
  452. operation.
  453.  
  454. To the right of the 'Tagged files' message two numbers are displayed. The 
  455. numbers  are the total size,  in K,  of the files you have tagged so far. 
  456. This  is useful if,  for example,  you are moving files from one size  of 
  457. diskette to another, smaller size diskette. If the source disk holds 500K
  458. and the destination holds 256K,  you can stop the tagging operation  when 
  459. your  size  is just less than 256K.  The tag function in itself does  not 
  460. perform  any operation,  other than to mark the file for a future  "mass" 
  461. operation.
  462.  
  463. By  now the astute reader will notice that I have cleverly  skipped  over 
  464. the function of the second number display,  the one in parenthesis.  This 
  465. number is the combined size of the tagged files, IN 1K BLOCKS. If you are 
  466. using  a computer system that supports many different disk sizes/formats, 
  467. or a system with a hard disk attached, you may already know that CP/M can 
  468. allocate storage only in "BLOCKS",  and that these "BLOCKS" may be up  to 
  469. 16k  in length.  This means that NSWP would show a file containing,  say, 
  470. 512  bytes in information,  as being up to 16k long,  depending  on  your 
  471. computer. The second number in the tag display shows how much storage the 
  472. cumulative  files  would  take  if they were stored  on  a  single-sided, 
  473. single-density, 8" diskette.
  474. .paèWildcard tagging
  475.  
  476. Another  way  to tag files is the wildcard tag  function.  This  function 
  477. accepts a CP/M type wildcard and proceeds to tag all the files that match 
  478. the wildcard.  To invoke this, just hit 'W' and you will be prompted with 
  479. the message 'Which files?  '.  Enter any CP/M wildcard,  right down to  a 
  480. unique filename, and if that file exists it will be tagged and displayed.
  481.  
  482.  
  483. Untagging files
  484.  
  485. If you can tag a file, you must be able to Untag a file as well.
  486.  
  487.   9. B0: BASIC   .COM  24K :*U Tagged files =  16K ( 16K).
  488.  10. B0: BRUN    .COM  16K :*
  489.  
  490. As you can see, the untag function subtracts the current file's size from 
  491. the total, then displays the total of the remaining files.
  492.  
  493.  
  494. The mass copy command
  495.  
  496. Now  that  we have a number of files "tagged",  what do we do with  them? 
  497. Well,  the Mass copy function is one of those that act on many files. Its 
  498. purpose is to copy the tagged file(s) from one drive/user area to another 
  499. drive/user.
  500.  
  501.  12. B0: CDP1    .     40K : M
  502.  Copy to drive/user? A14: V
  503.  
  504. Copying  --> B0: BRUN  .COM to A14: with verify
  505. Verifying --> file ok.
  506.  
  507. The  V  is  optional,  and it indicates that you wish to  have  the  file 
  508. verified after it is written.
  509.  
  510. As you can see, the files have been sent to drive A, user 14. If you wish 
  511. the  tagged  files to reside in the same user area as  the  source  files 
  512. after the copy, do not specify a user area in the Mass command. This will 
  513. cause NSWP to put the file in the same user area as the source file.
  514. NSWP will not allow you to copy a file to the same drive and user area as 
  515. the source. The copy is simply not made.
  516. .paèAfter the mass
  517.  
  518. After  any  mass  file operation,  the tags are "reset" as each  file  is 
  519. copied. Visually, they change from a '*' to a '#'. The files are logical-
  520. ly untagged,  and will respond as such.  But,  since NSWP remembers them, 
  521. you can automatically retag these files.  This is useful if, for example, 
  522. you  need  to copy the same files to a number of different  diskettes  or 
  523. user areas on a drive. To invoke this, use the 'A' command.
  524.  
  525.  12. B0: CDP1    .     40K : A
  526.  
  527. Retagging--> B0: BRUN  .COM  Tagged files =  16K ( 16K)
  528.  
  529.  
  530. Erasing files
  531.  
  532. You may want to copy a group of files,  then delete them from the  source 
  533. disk after the copy has been made. To do this, you can use either the 'C' 
  534. command  to copy,  followed by the 'D' command,  which is tedious,  or  a 
  535. combination of the 'T',  'M',  'A', and the 'E' commands. The 'E' command 
  536. Erases tagged or untagged files, at your option, on a global scale.
  537.  
  538.  12. B0: CDP1    .     40K : E
  539. Erase Tagged or Untagged files (T/U)? T
  540. Do you wish to be prompted (Y/N/A)? N
  541.  
  542. Deleting --> B0: BRUN  .COM
  543.  
  544. If you specify Untagged files, the untagged files will be erased. You may 
  545. wish  to  be prompted before each file is to be deleted,  and you can  do 
  546. this via the second question.
  547.  
  548.  
  549. Squeezing and Unsqueezing files
  550.  
  551. The  'Q' command allows you to Squeeze and Unsqueeze tagged  files.  This 
  552. file  squeeze program is compatible with the  original  squeeze/unsqueeze 
  553. programs  written in the 'C' language by Richard Greenlaw.  After hitting 
  554. Q, you will see the prompt:
  555.  
  556. Squeeze, Unsqueeze or Reverse (S/U/R)? 
  557.  
  558. After  answering  this skill-testing question,  you will be  asked  which 
  559. drive/user  you wish to place the destination files.  The syntax here  is 
  560. the  same as for the Move command,  except it is permissible to  'Q'  the 
  561. files back to the same drive/user that they originated.
  562.  
  563. When 'Q' is invoked,  you are asked if you wish to Squeeze,  Unsqueeze or 
  564. Reverse.  A  carriage return here will return you to the command line  of 
  565. NSWP.
  566. .paèIf  you select 'S' for Squeeze,  all tagged files will be examined to see 
  567. if it is "worth" squeezing them.  Files that exibit ANY space  reduction, 
  568. even  if  it is only one sector,  will be squeezed.  If the files is  not 
  569. "worth"  squeezing,  the  file will simply be copied to  the  destination 
  570. drive/user.
  571.  
  572. If you select 'U' for Unsqueeze, all tagged files will be examined to see 
  573. if they are squeezed.  If they are, they will be unsqueezed, and moved to 
  574. the  destination  drive/user.  If they are not squeezed,  then  they  are 
  575. simply copied.
  576.  
  577. If  you  select  'R' for Reverse,  all files that are  squeezed  will  be 
  578. unsqueezed,  and all files that are unsqueezed will be squeezed (if it is 
  579. worth it), and moved to the destination drive/user.
  580.  
  581. The most attractive feature of the 'Q' command in general is the  ability 
  582. to Squeeze files ONLY if it is "worth" it. This means that by using NSWP, 
  583. you  can archive data into the absolute minimum amount of space possible.  
  584. The SQ algorithm used in NSWP is better than the one in the original  'C' 
  585. squeezer,  and  produces  the smallest output file possible with  current 
  586. technology.
  587.  
  588. The file squeezer section was done by Jim Lopushinsky, and is copyrighted 
  589. separately by him. He also has a public domain standalone squeezer.
  590.  
  591.  
  592. Setting the tagged files status
  593.  
  594. You may set the attributes of a group of tagged files just like STAT,  or 
  595. PROT. To do this, tag the files, and select the 'Y' command.
  596.  
  597.  12. B0: CDP1    .     40K : Y Which flags (1-4,R,S,A)? R,S
  598.  
  599. Setting ---> B0: BRUN  .COM to R/O SYS
  600.  
  601.  
  602. The  flags  you may set are the F1-F4 flags,  as well as the  Read  Only, 
  603. System,  and  Archive (MP/M,  CP/M 3 only) flags.  Any flags you  do  not 
  604. specify will be reset. To reset all the flags (IE: Change to R/W, DIR and 
  605. no "Sysop tag"),  just enter a single comma or space at the "Which flags" 
  606. prompt.  Note that the flags in the "Which flags" question do not have to 
  607. be  entered with a comma between them,  as anything (or nothing at  all!) 
  608. will do.  As far as the program is concerned 'RSA',  'R S A', and 'R,S A' 
  609. are all valid.
  610. .paèNotes on NSWP 204
  611. -----------------
  612.  
  613. NSWP  204  has  a  few  new features!  First,  limited  CPM  3  has  been 
  614. established, in that if you have BDOS version over 3.0 (which may include 
  615. MPM),  you  may now run with ALV banked.  NSWP will use the BDOS call  to 
  616. obtain the ALV information. This also applies to the 16 bit version.
  617.  
  618. Before 204,  if you attempted to delete a file that was currently tagged, 
  619. it was not removed from the tagged file size.  It is correctly handled in 
  620. all cases now.
  621.  
  622. NSWP now saves the SP, rather than (SP), in order to support totally non-
  623. standard implementations of BDOS and CCP.
  624.  
  625. When using the '?' function, the current disk information, along with the
  626. tagged file size.
  627.  
  628. The  copy  file  speed has been further optimized  by  elimination  of  a 
  629. redundant BDOS call (deleting a file, when we know it ain't there!).
  630.  
  631. NSWP  has been modified to better support MPM and MPM86 by doing a rename 
  632. after  a  copy  operation.  This  will  drop  the  copy  speed  slightly, 
  633. nullifying the effect of the above change.
  634.  
  635. If you find anything else, please drop me a line...
  636.  
  637. Notes on NSWP 205
  638. -----------------
  639.  
  640. NSWP 204 introduced a bug that would not allow you to copy a file if that 
  641. file was set to R/O, unless you had a destination that was ALSO R/O!
  642. .pa                                   è            Epilogue
  643.  
  644. All  the functions of NSWP have now been described.  The best way to  get 
  645. more familiar with the program is to actually USE it.  I think it will be 
  646. one of your most frequently used programs.
  647.  
  648. There are several things in this version that you will want to alter:
  649.  
  650.  
  651. 103H
  652.  
  653. This  byte controls the screen length used in the 'V'iew command.  It  is 
  654. currently set to 23D (17H).
  655.  
  656.  
  657. 104H-10AH - Turn reverse video on
  658.  
  659. The  first byte in this sequence of seven shows the length of the reverse 
  660. video on sequence,  which follows at location 105H.  All seven bytes  are 
  661. currently set to zero.
  662.  
  663.  
  664. 10BH-111H - Turn reverse video off
  665.  
  666. The  first byte in this seqence of seven shows the length of the  reverse 
  667. video off sequence,  which follows at location 10DH.  All seven bytes are 
  668. currently set to zero.
  669.  
  670.  
  671.             Credits
  672.  
  673. My  thanks to all who made this program possible,  and especially to Dave 
  674. Mccrady  for his help in composing the documentation and .HLP  files  for 
  675. NSWP.  Thanks  also  goes to Jim Lopushinsky,  also  of  Edmonton,  since 
  676. without  him  the  SQ section of NSWP might never  have  been  completed! 
  677. Thanks  to  the  use of his SQ section,  NSWP can  produce  the  smallest 
  678. possible SQ'ed files.
  679.  
  680.  
  681.             Contributions
  682.  
  683. If you like, use and enjoy this program, feel free to send a contribution 
  684. (suggest $20).   This will help me expand this program, and add even more 
  685. features.  I am currently working on a CP/M 86 version,  and once that is 
  686. running,  I  intend to port it to MSDOS.  Suggestions for enhancement are 
  687. also appreciated, and you may send them to:
  688.  
  689. Dave Rand
  690. 10232 - 160 Street
  691. Edmonton, Alberta CANADA
  692. T5P 3E9
  693.