home *** CD-ROM | disk | FTP | other *** search
/ Amiga Format CD 20 / amigaformatcd20.iso / -coverdisks- / af104a / winspeed / readme < prev    next >
Encoding:
Text File  |  1997-09-29  |  20.7 KB  |  535 lines

  1.  
  2. ...Hehehehe!  I thought the filename might get your attention!
  3.  
  4. Reason for it is that I'm sick and tired of seeing people unpack an archive
  5. and greedily attempt to run the program in question only to have it crash and
  6. piss them off enough to delete the thing and never look at it again!
  7.  
  8. Shame on them!!  If only they'd read the docs first...
  9.  
  10. »»»» WinSpeed »»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»
  11.  
  12. 01-01-97  04:26 [..Yawn.. ...Snore.. ...uh..? Oops!]
  13.  
  14.  
  15. By Olly Koenders
  16.  
  17. 4/43 Thomas St.
  18. Ringwood, Victoria
  19. Australia.  3134
  20.  
  21. First released on GREMLiNS BBS. »» +61 (03)9870 4393
  22.  
  23. WinSpeed is Freeware and may be distributed far and wide for the benefit of
  24. the Amiga community without charge except for small, unquantifiable amounts
  25. when cost of "magnetic media" is concerned.  Please don't alter the docs as
  26. I like them pretty much too!  Keep them with the executable when in piracy
  27. mode.  Thanks.
  28.  
  29. **** Disclaimer ****
  30.  
  31. I'll NOT be held responsible for any "damage" wrongly attributed to WinSpeed
  32. due to misuse or failure to read instructions.  WinSpeed will NOT impinge
  33. upon trackdisk.device, serial.device, the mouse, keyboard or your grandmother
  34. regardless of how so used as the latter have nothing to do with intuition and
  35. its refreshing routines!
  36.  
  37. ----------------------------------------------------------------------------
  38.  
  39. ...Bear with me for a coupla secs 'cos I'm gonna go out on a limb...
  40.  
  41. Yeh - I know...  There's proggy's around that do about the same thing (hmmm..
  42. 2 others at last count) but I decided to improve on the idea somewhat.  You're
  43. about to see why!
  44.  
  45. The docs (or what was available of them at this time) of the other 2 proggy's
  46. ("SmartWB 1.05" by Grzegorz Calkowski and "SmartWin" by Timo Nentwig) are
  47. available for perusal later in this document - If thou shalt have requirement
  48. of them...
  49.  
  50. Grzegorz was right - Timo's "version" is pretty badly written.  Timo seemed
  51. to delight in the fact that "SmartWin is now a commodity...".  If ANYBODY can
  52. give me a DAMN good reason why it should be, or why it's so good if it were
  53. then I'll eat this file!
  54.  
  55. I'm REALLY SICK of "programmers" who, in a fit of either boredom or boneheaded
  56. creativity delight in causing their "masterful creations" to require a
  57. plethora of useless libraries (commodities, utility, locale etc.) and other
  58. resources or AmigaOS 3.1+ just to do simple functions like edit a text file or
  59. put a window on the screen!
  60.  
  61. Come on, people!  Think about it - programming isn't about slapping something
  62. together and not optimizing it or bashing an "AppIcon" onto the WorkBench
  63. 'cos it's suddenly "trendy" to do so!  Nor is shoving a heap of structures
  64. into the Ami's memory just for a simple SetFunction() patch!  It's no wonder
  65. that people complain about the Ami's slow speed - it's more than bloody likely
  66. 'cos of YOU!  Take advantage of the Ami's incredible OS in good form but
  67. DON'T overload it with rubbish!
  68.  
  69. If you're the type of programmer that creates something good but doesn't beta
  70. test it thoroughly before first/second/third (even fourth?) release then
  71. you're an embarrassment to the rest of us!  Learn from mistakes but don't
  72. release 'em!
  73.  
  74. If you REALLY need to do that kinda stuff then "program" for the IBM clones
  75. and you'll be in good company!  For the sake of ALL Amiga owners (1.1 '000's
  76. > 3.1 '060's) out there, Don't insult our intelligence or our machines
  77. further!!!
  78.  
  79. [Whew!]  'Nuff said.
  80.  
  81. ...Okay - where was I..?
  82.  
  83. ----------------------------------------------------------------------------
  84.  
  85. WinSpeed patches the intuition.library functions OpenWindow() and
  86. OpenWindowTagList() to rid the idea of "SIMPLE_REFRESHed" windows (depending
  87. on your choice) that will speed up WorkBench operations like dragging, depth
  88. arranging and resizing windows up to about 4 times.  Icon rendering speed will
  89. also be increased slightly as will opening and closing some large windows.
  90.  
  91. You might also notice your menus flick around a little quicker too but it can
  92. be difficult to tell.
  93.  
  94. WinSpeed is 1464 bytes in size, coded in 100% assembler with no "includes"
  95. and is fully optimized.  The program installs a one-piece patch of exactly
  96. 94 bytes in MEMF_PUBLIC and promptly exits.  Just leaving the patch which is
  97. 100% crash-proof unless some fool "programmer" tries to open a window without
  98. a pointer in a0.  WinSpeed doesn't leave a "process" running soaking up
  99. valuable processor clock-cycles and the patch is of such small size and
  100. optimization that it doesn't interfere with the opening of any window (now
  101. that's something you may never see in a "compiled" program).
  102.  
  103. WinSpeed took approx. 2 hours to code (I wasn't thinking straight) and as far
  104. as I can foretell, there may not be further versions as I know I got it right
  105. the first time.  I might include some code in the patch for programmers that
  106. wish to have their windows left alone.  I might even include an "automatic"
  107. mode for best operation.  Depends if I'm prompted enough...
  108.  
  109. The patch is never removed (unless "Guru" visits or you reset yourself) but
  110. is updated the next time you run WinSpeed.  This allows you to set WinSpeed's
  111. options at your leisure while testing those Normal/WorkBench windows.  Pretty
  112. neat huh?
  113.  
  114. For WinSpeed to take effect on any window, the window will have to be closed
  115. and reopened again AFTER running WinSpeed.  Sorry - but that's how these
  116. things work...
  117.  
  118. WinSpeed is CLI/Shell only so don't try and crank it up via icon - as the
  119. WorkBench don't like proggy's being launched that don't retrieve and/or reply
  120. to its message ports (thingy go BOOM!).
  121.  
  122. WinSpeed can be started at ANYTIME (even without the WorkBench open) in any
  123. relevant mode UNLIKE "SmartWin" (definitely!) and "SmartWB" (I think).  Best
  124. place would be at the top of the Startup-Sequence unless you would prefer
  125. otherwise.  DON'T try the WBStartup drawer as that needs an icon to launch
  126. programs (thingy go BOOM again!).
  127.  
  128. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  129.  
  130. Upon calling WinSpeed with an incorrect argument, this is (roughly) what you
  131. should see...
  132.  
  133.  ›WINSPEED: V1.0 © 01-01-97 Olly Koenders - Australia
  134.  
  135. › Usage: WINSPEED [xyz]
  136.  
  137.   x›=›0 - Standard Windows (Slow)
  138.       1 - Smart Refresh Windows (Fast)
  139.       2 - No Refresh Windows (Fastest)
  140.  
  141.   y›=›0 - Standard Icon Windows (Slow)
  142.       1 - Smart Refresh Icon Windows (Fast)
  143.       2 - No Refresh Icon Windows (Fastest)
  144.  
  145.   z›=›0 - Don't patch Main Workbench Window (Booo!)
  146.       1 - Patch Main Workbench Window (Yay!)
  147.  
  148.   E.G:›WINSPEED 211
  149.  
  150.   For AmigaOS 1.1 > 1.3 set `y' to `0' or it might CRASH!
  151.   Option `x' will patch 1.1 > 1.3 Icon Windows.
  152.  
  153. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  154.  
  155. Yes - I do support OS 1.1 and up if I can help it.  It's still being used
  156. in an Amiga that should be SUPPORTED instead of ridiculed and pressed out of
  157. service with name-calling such as "Dinosaur..." and so.  Though I don't think
  158. there's many left with OS 1.1 and I reckon the better option would be to
  159. upgrade but some people ARE strapped for cash.  And their beloved Amiga's
  160. can still kick an IBM arse or three.  Put a 486 or Pentium on 7 Mhz and see
  161. what it does - or more to the point, what it still doesn't!
  162.  
  163. ...Now, back to your regular entertainment:
  164.  
  165. There are 2 distinct types of windows available in OS 2.04 > 3.1.  Normal
  166. OpenWindow() windows (used by normal application proggy's) and the type that
  167. are opened using OpenWindowTagList(), which for the purpose of this exercise
  168. and to reduce confusion I'll call "Icon Windows" 'cos that's where the icons
  169. are rendered.
  170.  
  171. OS 1.1 > 1.3 only uses OpenWindow() as OpenWindowTagList() don't exist but
  172. WinSpeed is perfectly compatible with that so long as you keep switches "y"
  173. and "z" set to "0".  Listed below are the only combinations that SHOULD be
  174. used for 1.1 > 1.3 or crashes can result:
  175.  
  176.   "WinSpeed 000",
  177.  
  178.   "WinSpeed 100" or
  179.  
  180.   "WinSpeed 200".
  181.  
  182. Three choices should be plenty as there's not much more I can do and there's
  183. 2 more choices than "SmartWB" or "SmartWin" ever allowed.
  184.  
  185. With OS 2.04+ all other combinations also apply excepting:
  186.  
  187.   "WinSpeed 001",
  188.  
  189.   "WinSpeed 101" and
  190.  
  191.   "WinSpeed 201".
  192.  
  193. Reason being if the "y" switch is "0" then the main "WorkBench" window won't
  194. be patched in either case as it's opened using OpenWindowTagList().  Are we
  195. confused yet?  No..?  Good.
  196.  
  197. Be aware that if you patch the main WorkBench window and if you have patterns
  198. or backdrop pictures displayed in it then some depth arranging/resizing of
  199. the Icon Windows can scatter these a bit.  Selecting "ResetWB" or "Redraw"
  200. from your WorkBench menu will put them back to normal until the next
  201. scattering.  Note that this ain't the fault of WinSpeed but just how
  202. intuition works.
  203.  
  204. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  205.  
  206. The difference between "SMART_REFRESH" and "SIMPLE_REFRESH" is that if you
  207. resize a smart-refreshed window then the contents will be remembered by
  208. intuition and only the DAMAGED parts redrawn.  This can double the speed of
  209. window refreshing easily but is slower than not refreshing at all.
  210.  
  211. "SIMPLE_REFRESHed" windows use a teeny little less memory than their "smart"
  212. counterparts but the ENTIRE window and its contents are refreshed effectively
  213. halting the computer until this has been accomplished.  Note that with a
  214. WorkBench full of windows/icons this could take some time almost irrelevant
  215. the speed of processor you're using.  part of the slowdown has to do with all
  216. the display being in MEMF_CHIP where the processor has no access until the
  217. display DMA have finished their work.
  218.  
  219. "NOCAREREFRESHed" windows "forget" what they contained and the contents can
  220. only be refurbished by selecting "Redraw" from the WorkBench menu but that's
  221. hardly worth a massive coronary now is it?  The speed increase of opening,
  222. closing, dragging and depth arranging speaks for itself already.
  223.  
  224. Note that there's no point in having a simple or smart-refreshed window
  225. without a sizing gadget!  As the very act of covering a window with another
  226. has no influence on the contents of the window that's covered due to the
  227. display data contained in each window residing in a separate area of memory
  228. entirely.
  229.  
  230. "SUPER_BITMAP" windows will be patched, but their "SUPER_BITMAP" flag will
  231. remain intact so there won't be a problem with their status.
  232.  
  233. Now comes the fun bit - let's all witness the fight between Grzegorz and
  234. Timo.  Changed from ".Guide" to plain ASCII for easier reading...
  235.  
  236. \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
  237. ////////////////////////////////////////////////////////////////////////////
  238.  
  239. **************************************************************************
  240.  
  241.                            »»» SmartWB v1.05 «««
  242.                       "Forget about slow workbench..."
  243.  
  244.                    Freeware © 1994-1996 The Beet Research
  245.  
  246.                        written by Grzegorz Calkowski
  247.  
  248. **************************************************************************
  249.  
  250.  
  251. If  you  are  using / had been using previous versions of SmartWB, please,
  252. reread Usage section. Also read this Warning!
  253.  
  254.  
  255.                              Table of contents:
  256.  
  257.               Disclaimer             Legal mush
  258.               Copying                Distribution & Copyright
  259.               Warning                Beware of a fake
  260.  
  261.               Description            Don't know what this is???
  262.               Usage                  So...
  263.               Notes                  Few words more
  264.  
  265.               Author                 Who made it?
  266.               History                Short program history
  267.  
  268.  
  269.  
  270. DISCLAIMER
  271. ----------
  272.  
  273.     The   program   and   information  above  is  provided  "as  is".   No
  274. representations  or  warranties  are  made  with  respect to the accuracy,
  275. reliability,  performance,  currentness, or operation of this software and
  276. information,  and  all use is at your own risk.  The author doesn't assume
  277. any responsibility or liability whatsoever with respect to your use of the
  278. program and information.
  279.  
  280.  
  281. COPYING
  282. -------
  283.  
  284.     SmartWB is FreeWare.  Yes, but you should read "Author".  It can be freely
  285. distributed under following conditions:
  286.  
  287. 1.  No more then a nominal fee is charged to cover cost of magnetic media.
  288.  
  289. 2. Everything in this distribution must be kept together & unaltered.
  290.    Applies to:
  291.      - SmartWB                  (the program itself)
  292.      - SmartWB.info
  293.      - SmartWB.guide            (AmigaGuide® doc file)
  294.      - SmartWB.guide.info
  295.  
  296. SmartWB is Copyright (C) 1994-1996 The Beet Research. All rights reserved.
  297.  
  298. AUTHOR
  299. ------
  300.  
  301.    It's  quite  a  long history behind SmartWB.  I know it very widely used,
  302. appeared  on some magazines cover disks....  I think, it has made your, dear
  303. Amiga users, work easier and nicer.  It's free, but if you want to make poor
  304. Polish  student happy - send a small donation.  $5 or so will do!  Thank you
  305. in advance!
  306.  
  307.    I  must  say  big »thank you« to Gerhard Rabe, which is the _only_ person
  308. who did it... shame, only one...
  309.  
  310. Contact me at:
  311.  
  312.         Grzegorz Calkowski
  313.         Rzedowice
  314.         ul.Dobrodzienska 8
  315.         POLAND
  316.         voice: +48(0)34-575875
  317.  
  318.         E-mail: calkowsk@usctoux1.cto.us.edu.pl
  319.  
  320.  
  321. Check out my other programs on Aminet:
  322.  
  323. SysPic301.lha      util/boot   55K   8+The best boot-time picture displayer!
  324. SysPic301Pix.lha   util/boot  113K   7+Bonus pictures for SysPic
  325. AutoAssign.lha     util/wb     18K  33+V1.12-Automagically makes assigns & moun
  326. JustPlay.lha       mus/play    20K  33+1.1-Proplayer to use w/icons, src, XPK
  327. iconspy1.lha       util/wb     12K  79+Monitors calls to icon TOOL TYPES (w/ so
  328.  
  329.  
  330.                                  WARNING!
  331.                                  --------
  332.  
  333. On Aminet appeared archive named ...  dev/src/SmartWB10.lha !  It's author
  334. (Timo Nentwig) claims it's a replacement for my program!  It's not.
  335.  
  336. 1.  He has stolen name of my program.  He should not.
  337.  
  338. 2.   It's  example  of  a  extremely  bad  written C patch (I have nothing
  339. against  C - I write in C/C++).  It's slow - stupid usage of Forbid/Permit
  340. pair.   And  big  -  remains  in  memory  as  a process, consuming about 4
  341. kilobytes  of  memory  +  stack  (usually 4kb) = 8kb!!!.  Original SmartWB
  342. _only_ installs the patch, which takes only 152 bytes!
  343.  
  344. 3. Mr. Nentwig wanted to patch _all_ windows to smart-refresh. See "Notes".
  345. Look at these words:
  346.  
  347. "(...) So the workbench windows are smart-refreshed.  It should also patch
  348. every other window (e.g.  C='s Prefs) opened by OpenWindowTagList() but it
  349. doesn't  (...).   Don't  ask me why, I've no idea :-( Probaly just a minor
  350. stupid mistake.  This can happen when writing 10 minutes programs (...)"
  351.  
  352. Any questions?
  353.  
  354.     So,  if you use this "replacement" - please delete it and use original
  355. SmartWB.
  356.  
  357. DESCRIPTION
  358. -----------
  359.  
  360.     Well,  well...   I  doubt  you  haven't  heard  about SmartWB...  this
  361. proggie is over 2 years old!  If you use it, you know, that you can't live
  362. without it.  If, unfortunatelly, you don't use it, you will use it...  :-)
  363.  
  364.     SmartWB is a little program that will *magically speed up* Workbench's
  365. window   refreshing.    It   forces   to  Workbench  windows  to  open  in
  366. smart-refresh  mode  instead  of  slow, ugly-look simple-refresh.  SmartWB
  367. patches  intuition/OpenWindowTagList  which  Workbench  uses  to  open its
  368. windows.    I   really   don't  know  why  gurus  in  C=  decided  to  use
  369. simple-refresh - it saves some memory, but the speed gain worth that.  Try
  370. to  open something, let's say, about 20 windows on your workbench and then
  371. do,  for  example,  a  depth  rearranging.  And so?  Yes, slow, even on an
  372. A4000!  Try it again with SmartWB...
  373.  
  374.     Furthermore   if  you  use  Magic  Layers  (aminet/gfx/misc/ML11.lha),
  375. realtime window movement program by Trond Werner Hansen, SmartWB will make
  376. it even better!!
  377.  
  378.     SmartWB is written in pure assembler, for best efficiency.  Wonder, it
  379. takes  *ONLY* 152 (exactly) bytes of memory!!!  And uses no cpu time while
  380. installed.
  381.  
  382.     SmartWB  requires  at  least  2.04 AmigaOS release (V37).  Tested also
  383. under 3.0 (V39) and 3.1 (V40).
  384.  
  385. USAGE
  386. -----
  387.  
  388.     Nothing  more  easy.   SmartWB can be used from both Workbench & Shell
  389. but the first is recommended.  Just drop it to 'WBStartup' drawer...
  390.  
  391.     In  the  past  SmartWB  caused problems with big patterns in Workbench
  392. window.   After few window drags, openings/closings pattern got scattered.
  393. Magically,  it  affected  only  big patterns.  Now problem is solved - the
  394. Workbench window isn't forced to be smart.
  395.  
  396.    On  first invocation SmartWB installs the patch.  On second it will try
  397. to  remove  it.   Removal  can fail if other program will patch the system
  398. routine     used    by    SmartWB    (intuition.library/OpenWindowTagList,
  399. specifically).  In such case, first remove the other ones.  Anyway I doubt
  400. you will ever want to remove SmartWB...  :-).
  401.  
  402.     If  you  want  (surely!)  SmartWB to not bring the info window specify
  403. QUIET as an option (for shell) or as a tooltype (for Workbench).  As every
  404. other  standard  shell  command SmartWB recognizes the '?' what brings the
  405. options template.
  406.  
  407. NOTES
  408. -----
  409.  
  410.     You thought:  "Why not to force any other simple-refresh windows to be
  411. smart?",  I  suppose.   Well,  answer is simple - better not to "poke" too
  412. much.   Although  in  most cases it can work fine but maybe sometimes not.
  413. On  other  hand, if a programmer uses simple-refresh he knows what he does
  414. (except  Workbench's creators...  :-).  For example a console window if is
  415. opened  in  smart  mode (when SMART option specified) doesn't preserve its
  416. contents.  So decision was made not.
  417.  
  418. HISTORY
  419. -------
  420.  
  421. v1.0 (20.02.94)
  422.  
  423.   o First release.
  424.  
  425.  
  426. v1.01 (21.02.94)
  427.  
  428.   o Small fixes and optimizations.
  429.  
  430.  
  431. v1.02 (27.10.94)
  432.  
  433.   o SmartWB.rendezvous port was created in a bad way. Could cause strange
  434.     system behaviour. Fixed.
  435.   o Version string was incorrect. Fixed.
  436.   o Finally... now it's copyright (c) TBR.
  437.  
  438.  
  439. v1.03 (09.11.94)
  440.  
  441.   o A nasty Enforcer hit found in the patch itself! It didn't check if a0
  442.     contains a pointer... Fixed.
  443.   o And therefore patch uses 120 bytes instead of 112... buuuhuuu....
  444.  
  445.  
  446. v1.04 (18.12.95) <-- Sic!!!
  447.  
  448.   o Oooopsss... a small bug which has been hidden here for over one year...
  449.  
  450.     Sometimes SmartWB trashed d0 at exit returning stupid values (such as 44)
  451.     thus breaking script... (Reported by Tassos Hadjithomaoglou). Fixed.
  452.  
  453.   o Usage doc changed - due to problems (reported by Pete Watson) with big
  454.     patterns, recommended place for SmartWB is WBStartup.
  455.  
  456.   o No longer, hmmmm, BeetWare....
  457.  
  458.   o Plain doc converted to guide.
  459.  
  460.   o ....not released....
  461.  
  462.  
  463. v1.05 (29.07.96) <--- SIC!!!!!!!!!
  464.  
  465.   o After over 2 years of SmartWB's existence pattern-scattering problem
  466.     solved...!
  467.  
  468.   o Patch size has grown from 120 bytes to 152... 
  469.  
  470.   o Source cleaned a little (removed 'Too old kick' requester... who cares
  471.     about 1.3 dinosaurs nowadays... are there still such? :-)
  472.  
  473.   o Icons added.
  474.  
  475.   o FINAL RELEASE. Yes.
  476.  
  477. \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
  478. ////////////////////////////////////////////////////////////////////////////
  479.  
  480. Hmmm...  Yep - what d'ya reckon Timo..?
  481.  
  482. \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
  483. ////////////////////////////////////////////////////////////////////////////
  484.  
  485. Short:    Always SmartRefreshed windows
  486. Uploader: Tcn@oxygen.in-berlin.de (Timo C. Nentwig)
  487. Author:   Tcn@oxygen.in-berlin.de (Timo C. Nentwig)
  488. Type:     util/cdity
  489.  
  490. Replacement for SmartWB by Grzegorz Calkowski.
  491.  
  492. SmartWIN patches the OpenWindow functions and openes the windows  in  smart
  493. refreshed mode.
  494.  
  495. Since at least most of standard Commodore/AT programs  (e.g.  MultiView  or
  496. prefs:*)  up  to  v40  still uses the obsolete simple refresh this patch is
  497. neccessary to speed up windows (especially you are running opaque moving).
  498.  
  499. Just throw old SmartWB away. It's just useless stuff now  since  it  *only*
  500. patches the WB windows.
  501.  
  502. Features:   · is a commodity
  503.             · Patches either · every window
  504.                              · only wb windows
  505.  
  506. ToDo:       · Improve patch handling
  507.  
  508. News:       · is a cdity now
  509.             · fixed WBONLY bug, if active *only* WB windows were opened
  510.  
  511. Timo C. Nentwig
  512. Edelhofdamm 35                                      Tcn@oxygen.in-berlin.de
  513. 13465 Berlin/Germany                    http://www.in-berlin.de/User/oxygen
  514.  
  515. \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
  516. ////////////////////////////////////////////////////////////////////////////
  517.  
  518. Ok - I think we've browsed enough!  Above all - enjoy WinSpeed and if you have
  519. any decent ideas or spare Blizzard 1260 accelerators I'd be happy to hear from
  520. anybody.  I can be contacted at the address on the very, very top of this doc
  521. so say hello.
  522.  
  523. Other fast and compact assembler utils by Olly...
  524.  
  525. modCRUSHER - 31 instrument MOD cruncher - pack rate 60 - 85%!  Beats LHArc,
  526.              Lzx, Zip, Zoo, Arj, Imploder 4, PowerPacker 4 hands down!!!
  527.              CLI/WorkBench versions - All Amigas.
  528.  
  529. DoubleTake - Locates and lists duplicate files on any Dos-legal device - a
  530.              space saver for HD's! - All Amigas.
  531.  
  532. Plus some more I can't remember just now... [...Zzzzz!]
  533.  
  534.  
  535.