home *** CD-ROM | disk | FTP | other *** search
/ Amiga Elysian Archive / AmigaElysianArchive.iso / virus / viruz224.lha / Docs / VirusZ.doc < prev    next >
Text File  |  1992-09-09  |  33KB  |  639 lines

  1.  
  2.                           | 
  3.          ·` __/   _     --+--
  4.         /| / /`\ /(____   |  .   . __|__   _    \/_________. - - ----- --- --
  5.   ·/\  / | \/__/ \  __ \ ·   I\_/I   /\____)\   /\   _   °/  ---- -- --- - -
  6.   |°|  |!| /___` |\ II  \|\_/|·  |  /°  __  /     \  /   /  - c0nt®0[/aTz -
  7.   | |  | I | //| |  __ /`|   |i /i  \_   \_/       \/·  //\ ------    -
  8.   | I\/  / |//·|/   || \ |   I:  I /\ \  \\       \//  /~  \  - --      
  9.   \    `// |// |    ||  \I   ^  /|/  \~\  \\  _|_ //        \
  10.    \_.\/// |/_/|___°I|_°/ \____/_|\._______/   | /________/°/ Ve®$i0n 2.24
  11.      \/       \/                                     \
  12.                                                       \
  13.  
  14.  
  15.                       SOME NOTES CONCERNING LAW AND ORDER
  16.                       -----------------------------------
  17.  
  18.     1. Copyright
  19.     ------------
  20.     All parts of the  VirusZ package are written  and copyright © by  Georg
  21.     Hörmann with exception of the reqtools.libraries which are written  and
  22.     copyright ©  by  Nico François  who  gave  the permission  to  use  the
  23.     libraries and installation scripts in any freely distributable software
  24.     package.                                                               
  25.  
  26.     2. Disclaimer
  27.     -------------
  28.     The executionable and non-executionable parts of this software  package
  29.     may NOT  be altered by any means (this includes editing, reprogramming,
  30.     crunching, and resourceing), except archiving. The author is in NO  way
  31.     liable for any changes made to any part of the package, or consequences
  32.     thereof as he is in NO way liable for damages or loss of data  directly
  33.     or indirectly caused by this software.
  34.  
  35.     3. Distribution
  36.     ---------------
  37.     Neither fees may  be charged nor  profits may be  made by  distributing
  38.     this piece of software. Only a  nominal fee for cost of magnetic  media
  39.     may be acceptable. Outside  a single machine  environment, you are  NOT
  40.     allowed to reproduce only  some parts of the  package, but you have  to
  41.     copy it completely. See this list of contents for verification:
  42.  
  43.              VirusZ (dir)
  44.                 Docs (dir)
  45.                    Brain.doc
  46.                    Brain.doc.info
  47.                    VirusZ.doc
  48.                    VirusZ.doc.info
  49.                    VirusZ.history
  50.                    VirusZ.history.info
  51.                 Libs (dir)
  52.                    decrunch.library
  53.                    reqtools.library.13
  54.                    reqtools.library.20
  55.                 Docs.info
  56.                 Install
  57.                 Install.info
  58.                 Install.script
  59.                 VirusZ
  60.                 VirusZ.info
  61.              VirusZ.info
  62.  
  63.     Note that the original package was released as 'VirusZ224.run' archive.
  64.     If any parts were already missing when you received this package,  look
  65.     out for another source to get your software in future.
  66.  
  67.     4. Shareware
  68.     ------------
  69.     VirusZ is no longer Freeware, but  Shareware. This means you are  still
  70.     allowed to copy the software freely, but  you have to pay a fee to  the
  71.     author if you use VirusZ regularly. Not paying your fee is both immoral
  72.     and illegal. If you  already have registered  for any former  releases,
  73.     paying the fee  again is optional.  Suggested donation is  DM 10 or  an
  74.     equivalent amount  in any  other currency.  Anything else  will not  be
  75.     accepted. By now,  I had more  expense than profit  by sending all  you
  76.     folks your disks back etc.  If you want me  to continue my work,  don't
  77.     try to cheat me.
  78.     Submissions with new material  (viruses/crunchers) are welcome. If  you
  79.     want your disks back, either enclose enough money for postage or stamps
  80.     (inside Germany). If you  send me useful  stuff, you will  additionally
  81.     receive the latest  update of VirusZ  on your disk.  Contact me at  the
  82.     following address:
  83.  
  84.                      Georg Hörmann
  85.                      Am Lahnewiesgraben 19
  86.                      W-8100 Garmisch-Partenkirchen
  87.                      Phone: +49-(0)8821-71978
  88.                      Germany
  89.  
  90.  
  91.                   !!! IMPORTANT NOTE FOR REGISTERED USERS !!!
  92.                   -------------------------------------------
  93.  
  94.     I will no longer offer the  update service for registered users. I  had
  95.     nothing but trouble in the past with sending dozens of disks around the
  96.     world. Some  versions of  VirusZ always  showed some  bugs right  after
  97.     releasing them. If I release the  latest versions on BBS boards and  PD
  98.     disks only, the risk of losing a lot of money isn't that high as it  is
  99.     if I have to send all bugged updates twice. This becomes too expensive.
  100.     I know  that it's  not your  fault when  I make  mistakes, but  it's  a
  101.     difference between  updating an  text editor  and a  virus killer.  The
  102.     editor will be updated 1 or 2 times a year, but new versions of a virus
  103.     killer have to be released at least every 4th week. Errare humanum est.
  104.  
  105.  
  106.                                  INTRODUCTION
  107.                                  ------------
  108.  
  109.     1. VirusZ Philosophy
  110.     --------------------
  111.     VirusZ is another try to  make the perfect viruskiller. Although  there
  112.     are already hundreds of killers, none had to offer the, in my  opinion,
  113.     most important features. These  are to be short,  fast and not to  keep
  114.     the user from working by opening a big screen with hundreds of  gadgets
  115.     or locking the drives. If you like that type of killer, forget VirusZ.
  116.  
  117.     2. Why Use VirusZ?
  118.     ------------------
  119.     VirusZ has been tested  on Kickstart 1.2/1.3 and  on OS 2.0 and  worked
  120.     just fine. It also works with WorkBench and Kickstart -> 39.82 <-  !!!!
  121.     It offers several OS 2.0 features  even under Kick 1.2/1.3 like  gadget
  122.     activation via keyboard. All windows use  the full screen size, have  a
  123.     built-in Topaz 8 font  to prevent any  trouble, bring themselves to the
  124.     front when started  and set up  a wait pointer  for the other  windows.
  125.     VirusZ recognizes 468 bootblocks (193  boot viruses). The file  checker
  126.     is one of the fastest available  and not only detects 69 file  viruses,
  127.     but it also offers you the unbelieveable feature of decrunching  files.
  128.     The totally new bootblock lab offers all important bootblock operations
  129.     on one screen. The whole software is written 100% in assembly  language
  130.     for lightning speed. The memory checker removes all known viruses  from
  131.     memory  without  'Guru  Meditation'  and  checks  memory  for   viruses
  132.     regularly. VirusZ has easy to use intuitionized menus including keycuts
  133.     for both beginners and  experienced users. It  performs a self-test  on
  134.     every startup  to prevent  link virus  infection. VirusZ  works in  the
  135.     background and uses less than 0.5%  of your processing time (use  Xoper
  136.     to verify). Last but not least,  VirusZ is regularly updated and  hence
  137.     offers you perfect protection against the latest viruses.
  138.  
  139.     3. Some Notes About SHI
  140.     -----------------------
  141.     I'm member of SHI  (Safe Hex International) for  a couple of weeks  now
  142.     and I want to thank Erik  Loevendahl Soerensen for his VirusZ  support.
  143.     He asked me to include the following in my documentation:
  144.  
  145.     ABOUT SAFE HEX INTERNATIONAL
  146.     If you know  a virus  programmer you  can get a  reward of  $ 1000  for
  147.     supplying his name and address. The fact is that the law punishes  data
  148.     crime very severely (5 years in jail in most countries).
  149.     We are  an international  group with  more than  250 members  who  have
  150.     started trying to stop the spreading  of viruses. Let me give you  some
  151.     example:                                                               
  152.  
  153.         1. Our motto is: "Safe Hex, who dares do anything else today?".
  154.         2. A virus bank containing all well known virus killer programmes.
  155.         3. We help people to get money back lost by virus infection.
  156.         4. We  write articles about virus problems for 8 magazines.
  157.         5. We release the newest and the best virus killers around.
  158.         6. We have more than 20 "Virus Centers" worldwide  where you 
  159.            can get free virus help by phoning our "Hotline", and the
  160.            newest killers translated in your own language at very little
  161.            cost.
  162.  
  163.     For more information contact:
  164.  
  165.         SAFE HEX INTERNATIONAL            (Please  send  a "Coupon-Response 
  166.         Erik Loevendahl Soerensen         International" and a self addres-
  167.         Snaphanevej 10                    sed  envelope, if you want infor-
  168.         DK-4720 Praestoe                  mation about SHI by letter).
  169.         Denmark                             
  170.         Phone: + 45 55 99 25 12
  171.         Fax  : + 45 55 99 34 98
  172.  
  173.  
  174.                                 GETTING STARTED
  175.                                 ---------------
  176.  
  177.     1. For The Very First Time
  178.     --------------------------
  179.     VirusZ requires  the 'reqtools.library'  in  order to  work  correctly.
  180.     Included in this  package are two  versions of the  'reqtools.library',
  181.     one for Kick 1.3 and one for OS 2.0. Chose the one that fits with  your
  182.     OS, copy it  to the 'libs:'  drawer of  your boot disk  and remove  the
  183.     suffix (simply  rename it).  If you  don't  want to  do the  copy  work
  184.     yourself, click on the 'Install'  icon from WorkBench. This will  start
  185.     an installation script. If you want to use the decrunch feature, you'll
  186.     additionally need the 'decrunch.library'.
  187.  
  188.     2. If You Already Have Used VirusZ 
  189.     ----------------------------------
  190.     Make sure that you only copy the latest library versions to your  libs:
  191.     drawer. Also verify the  settings in the prefs  menu if you have  saved
  192.     them with an old VirusZ version because versions higher than 2.19 use a
  193.     new preferences file format.
  194.  
  195.     3. The First Step To Glory
  196.     --------------------------
  197.     Starting VirusZ is nothing more than  typing its name to any  CLI/Shell
  198.     or double-clicking its icon from  WorkBench. There are several  message
  199.     alerts included in the startup module.  If anyone of these flashes  up,
  200.     there is something wrong. These alerts are self explaining so we skip a
  201.     detailed  description.  If  the  'VirusZ's  hunk  structure  has   been
  202.     modified!' alert comes up, your copy  of VirusZ might be infected by  a
  203.     virus or might  have been crunched  with a bad  cruncher (in fact  most
  204.     crunchers are bad).
  205.  
  206.     4. How To Use ReqTools Requesters
  207.     ---------------------------------
  208.     VirusZ uses three types of  ReqTools requesters: Requests asking for  a
  209.     decision, Information Requesters informing you about something and File
  210.     Requesters to select files/drawers.  You can satisfy  them not only  by
  211.     clicking their gadgets, but also via shortcuts. These are:
  212.         Positive Response: <RETURN>, <LAMIGA><V>
  213.         Negative Response: <ESC>, <LAMIGA><B>
  214.     The positive gadget is the leftmost always printed in bold, whereas the
  215.     negative is the rightmost.
  216.  
  217.  
  218.                               AUTOMATIC FEATURES
  219.                               ------------------
  220.  
  221.     1. General Information
  222.     ----------------------
  223.     VirusZ does  lots of  things in  the background  which you  will  never
  224.     notice until  there  is something  wrong.  All the  automatic  features
  225.     described below will only work if no other VirusZ windows are currently
  226.     open. Read the preferences chapter below  if you want to customize  any
  227.     of the following functions.
  228.  
  229.     2. The Bootblock Check
  230.     ----------------------
  231.     Every  disk  inserted  will  be  checked  for  bootblock  viruses   and
  232.     non-standard bootcode. This  ensures that your  bootblocks stay  clean.
  233.     Every known virus will cause a request  asking you what to do. You  can
  234.     either go to the  bootblock lab or ignore  it. The last possibility  is
  235.     not recommended. If your disk contains anything else than a virus or  a
  236.     standard bootblock, it  will be  checked for  known custom  bootblocks.
  237.     Whenever such a known  bootblock appears, it's surely  not a virus  and
  238.     can be ignored. If the bootblock isn't a known custom one, VirusZ first
  239.     checks its checksum. If this is  not correct, VirusZ simply ignores  it
  240.     because it wouldn't be executed anyway. But if all conditions are  met,
  241.     the bootblock will be reported as unknown. This might happen with  most
  242.     bootload games or demos, so do NOT install anything you don't know. You
  243.     might trash the program that depends on this boot. But if you are  sure
  244.     that it's a new virus, save the bootblock (you can use VirusZ for this)
  245.     install the original bootblock  and send me the  copy for inclusion  in
  246.     VirusZ.                                                                
  247.  
  248.     3. The Disk-Validator Check
  249.     ---------------------------
  250.     Currently there exist two viruses that link themselves to this program.
  251.     You can find the Disk-Validator in  the L: directory of most disks.  It
  252.     was originally thought to correct possible  small errors on a disk  and
  253.     is called from  the ROM if  necessary. The viruses  use the feature  of
  254.     being installed by  the system itself  by corrupting some  data on  the
  255.     infected disks that causes the ROM to load the Disk-Validator.  Instead
  256.     of repairing the disk, they install themselves in memory. VirusZ  finds
  257.     both viruses in memory  and on disk and  offers you the possibility  to
  258.     delete them. Since the original Disk-Validator is copyright  Commodore,
  259.     I'm not allowed to include it in  my program. You must copy it back  to
  260.     the cleaned disk from a heal one yourself whenever a virus was deleted.
  261.     Note that this information is only  valid for Kick 1.2/1.3 since  under
  262.     OS 2.0, the Disk-Validator is in the ROM.
  263.  
  264.     4. The Virus & Vector Check in Memory
  265.     -------------------------------------
  266.     This is the real memory check looking for known viruses. It's  executed
  267.     once on startup,  and whenever  VirusZ finds a  virus, you  will get  a
  268.     request telling  you  which  virus was  removed.  VirusZ  removes  them
  269.     automatically. Viruses will not only  be patched or disabled, but  they
  270.     will be  removed from  memory completely.
  271.     After looking  around for  known  viruses, the  reset vectors  will  be
  272.     checked. If any of them are set,  you will get directly to the  'VirusZ
  273.     Vector Check'. See a detailed description  of this in the vector  check
  274.     chapter below.
  275.     In addition  to the  startup memory  check, VirusZ  repeats the  memory
  276.     check regularly. The time passed between  two checks can be changed  by
  277.     the user, default is  10 seconds. This  is the safest  way to find  and
  278.     remove file- and  linkviruses in  memory. These viruses  can appear  in
  279.     memory any  time  an infected  file  is executed.  So  whenever  VirusZ
  280.     reports a virus in memory, check the disks you are working with at  the
  281.     moment for infection. Note that the time passed between two checks will
  282.     be slightly shorter on NTSC machines  since VirusZ is PAL oriented  and
  283.     works with 50Hz.
  284.     NOTE: VirusZ will no longer delete all Resident Modules when it removes
  285.           a virus from memory. You still can find your recoverable RAM-Disk
  286.           after resetting as if nothing has happened. The only reason for a
  287.           lost RAM-Disk can be the virus that has been removed.
  288.  
  289.  
  290.                               USING VIRUSZ'S MENU
  291.                               -------------------
  292.  
  293.     To use all other features offered by VirusZ, you have to use menu items
  294.     to call the corresponding functions. These can only be used if VirusZ's
  295.     window is active. Note that the background features won't work as  long
  296.     as any other windows are opened  (which is the case with all  functions
  297.     called via menu).
  298.  
  299.     1. Check Files
  300.     --------------
  301.     See a description of the vector check in one of the next chapters.
  302.  
  303.     2. Check Sectors
  304.     ----------------
  305.     The sector checker makes it possible  to scan a whole device for  virus
  306.     corruption and sector/track errors. First  you'll get a small  selector
  307.     for the device to check. Ok  and Cancel should be clear, Refresh  tells
  308.     VirusZ to free its device list made  on startup and rebuild a new  one.
  309.     This is needed if  you mount a device  when VirusZ is already  running.
  310.     The selector gadget in the middle works exactly like a standard OS  2.0
  311.     gadget, but is simulated with Kick 1.3  means. If you click on it,  the
  312.     next device will be selected, if you press <SHIFT> while clicking,  the
  313.     previous device is selected. You  certainly can also use the  shortcuts
  314.     by pressing the  keys that correspond  with the underlined  characters.
  315.     If you made your choice and clicked Ok, the main display appears. It is
  316.     devided in two parts. The small box at the top is a progress  indicator
  317.     which will be filled  from the left to  the right while checking,  thus
  318.     telling you what percentage of the  device is already checked. The  big
  319.     box is  the  text display  which  contains all  information  about  the
  320.     current status. Here you'll get  all messages if VirusZ finds  anything
  321.     that's not ok. Note that the sector checker will repair damages without
  322.     asking, i.e. you have to unprotect  your disks before checking. If  you
  323.     don't want to have any corrections, keep the disk write protected.  The
  324.     damage caused  by the  following viruses  will be  recognized:  Saddam,
  325.     Lamer Exterminator  (3 versions),  Warsaw Avenger,  Fast Eddie,  Little
  326.     Sven, Glasnost, Sachsen  3 and  Nuked007 (SHIT). The  damage caused  by
  327.     Saddam and Little Sven will be repaired (blocks will be decrypted), the
  328.     others can only be detected. CheckSum  errors will be repaired too.  On
  329.     FFS devices,  data blocks  will  be ignored.  You  can pause  and  exit
  330.     checking at any time by pressing a mouse button.
  331.     NOTE: With OS  2.0, the  recoverable RAM-Disk is  not initialized  when
  332.     mounted, but when you access  it the first time  via DOS. If you  check
  333.     the RAD: before accessing it, VirusZ will report a Saddam infection  on
  334.     sector 880. This happens because  the rootblock is not initialized  yet
  335.     and is not really an infection.
  336.  
  337.     3. Check Vectors
  338.     ----------------
  339.     See a description of the vector check in one of the next chapters.
  340.  
  341.     4. Bootblock Lab
  342.     ----------------
  343.     See a description of the bootblock lab in one of the next chapters.
  344.  
  345.     5. Preferences
  346.     --------------
  347.     See a description of the preferences in one of the next chapters.
  348.  
  349.     6. About
  350.     --------
  351.     This displays some information about VirusZ.
  352.  
  353.     7. Quit VirusZ
  354.     --------------
  355.     Think twice and you'll figure out the function of this.
  356.  
  357.  
  358.                                   FILE CHECK
  359.                                   ----------
  360.  
  361.     1. Introduction
  362.     ---------------
  363.     In the early days  of the Amiga viruses,  nobody thought about file  or
  364.     even link viruses. A good virus killer had to display the bootblock and
  365.     check some vectors. But nowadays, the greatest danger doesn't come from
  366.     the bootblock,  but from  files.  Therefore this  file check  has  been
  367.     created to check  files for virus  infection. See a  list of all  known
  368.     viruses in the file 'Brain.doc'. This  file checker is quite unique  as
  369.     it offers some possibilities which  others lack. First it can  decrunch
  370.     files for checking, second it can remove all virus links from a file in
  371.     one step  where others  only remove  one link  after the  other.  These
  372.     features are made possible thanks to a great file buffering method  and
  373.     my own decrunch.library. If you have  to chose a checker, use mine  for
  374.     perfect checking:-)
  375.  
  376.     2. How To Use It
  377.     ----------------
  378.     First you have to select the path where files should be checked in  the
  379.     file requester. Therefore  the complete  path must be  included in  the
  380.     string gadget of the  requester. Click 'Ok' and  we start checking  all
  381.     files in the selected  directory and its  subdirectories. You can  skip
  382.     checking subdirs  by enabling  the 'Skip  Subdirectories' item  in  the
  383.     prefs window.
  384.     The main window will  appear which is divided  in two parts. The  small
  385.     box at the top contains  the current path we  are checking in. The  big
  386.     box is the text window where all filenames will be listed with a  short
  387.     description.                                                           
  388.     VirusZ recognizes several types of  data files (such as archives  etc.)
  389.     and will print their names if  possible. Crunched files will appear  to
  390.     be reported as executables if  you haven't enabled the 'Check  Crunched
  391.     Files' item in the prefs window. Otherwise, they will be reported  with
  392.     the packer name  printed in bold.  Viruses are reported  by name  (blue
  393.     background, white characters) and will  cause a requester that  informs
  394.     you about the type of virus. You  may or may not remove the virus  from
  395.     the infected file.
  396.     You can abort/pause checking at any time by pressing any mouse button.
  397.  
  398.     3. Important Notes
  399.     ------------------
  400.     The linkvirus removal code is absolutely reliable as long  as the  file
  401.     isn't damaged  in  any way.  If  the  hunk structure  is  corrupted  or
  402.     anything else disables  removing, VirusZ  will say  'Can't remove'  and
  403.     then skip the file.
  404.     If VirusZ says 'Decrunching file...' and then reports 'Can't decrunch',
  405.     this either means you  don't have enough memory  or the cruncher  isn't
  406.     supported yet by the decrunch.library. You should also note that VirusZ
  407.     doesn't use  the  decrunch feature  for  absolute crunchers,  i.e.  for
  408.     crunchers that decrunch their files to absolute addresses, because most
  409.     viruses wouldn't survive such a crunching process anyway.
  410.     If you get a  message 'Can't load', this  file is either unreadable  or
  411.     you don't have enough memory.
  412.     VirusZ handles  the protection  bits  automatically, i.e.  saves  their
  413.     original contents, then  makes the file  readable/writable and  restore
  414.     them to  their originals  after checking.  This is  useful because  you
  415.     don't have to mess around with the Protect command in your Shell.
  416.  
  417.     4. Additional Hints
  418.     -------------------
  419.     It may happen that a file is  first infected and then crunched. If  you
  420.     want to save the  cleaned file without having  it decrunched, check  it
  421.     again with decrunching disabled.
  422.  
  423.  
  424.                                  VECTOR CHECK
  425.                                  ------------
  426.  
  427.     1. Introduction
  428.     ---------------
  429.     Mostly all viruses work in the same manner. Either they make themselves
  430.     resident and/or  corrupt some  libraries or  devices with  their  code.
  431.     Therefore the vector check was designed to help you finding new viruses
  432.     that can't be recognized  directly by VirusZ yet.
  433.     Most of the  vectors and entrypoints  that will be  displayed are  only
  434.     interesting for programmers, so  I will try  to avoid any  explanations
  435.     that confuse the average user.
  436.  
  437.     2. Usage
  438.     --------
  439.     The vector check window is nothing more than one big display. It  stops
  440.     after every page and waits for  a mouse button. The left button  always
  441.     causes VirusZ  to continue  scrolling,  if the  last page  was  already
  442.     reached, the vector check  will be terminated. The  right button has  a
  443.     double function.  While scrolling,  you can  stop displaying  any  more
  444.     pages. Then, you are able to use the menu items attached to the  vector
  445.     check window.
  446.  
  447.     3. What Can I See From The Displayed Information?
  448.     -------------------------------------------------
  449.     Well, every vector has a short comment right of it. As long as you  can
  450.     read 'Ok' there, everything is fine. Then it might happen that you read
  451.     something like 'SetPatch 38.25', this  tells you that the changes  done
  452.     to this vector are ok, because  VirusZ recognized who did them. But  if
  453.     you read 'Please  Check', be alarmed.  In fact, most  of these  unknown
  454.     changes are  nothing more  than  an utility  like  the well  known  'PP
  455.     Patchers'. If you  have such an  utility and you  know the changes  are
  456.     caused by it, please send it to me for inclusion.
  457.  
  458.     4. The Vectors Menu
  459.     -------------------
  460.     Here you have the  possibility to clear the  reset vectors or to  cause
  461.     VirusZ to  show the  vector  check display  again. This  is  especially
  462.     useful if you found  some reset vectors set  and cleared them. Now  you
  463.     can verify the  changes without  leaving and calling  the vector  check
  464.     again. If the cleared  vectors are still set  after clearing them,  you
  465.     can be 99% sure you have a  new virus in your system. Keep cool,  check
  466.     the bootblocks first and  then try to detect  any file changes. If  you
  467.     find the virus, send it to me.
  468.     Note that the vector  check menu supports  multiselect (hold the  right
  469.     button and select several items with the left button).
  470.  
  471.  
  472.                                  BOOTBLOCK LAB
  473.                                  -------------
  474.  
  475.     1. A Short Introduction
  476.     -----------------------
  477.     The bootblock lab has been created because the old bootblock  functions
  478.     of VirusZ (some will remember the 'Bootblocks' menu) were quite  boring
  479.     and everything else but comfortable to use. This part of VirusZ is 100%
  480.     'User Interface Style Guide' compatible. All gadgets and menus look  as
  481.     they should look  under OS2.0 and  I think they  really look nice.  All
  482.     gadgets can also be activated by pressing the key that corresponds with
  483.     the underlined character.
  484.  
  485.     2. Drive Gadgets
  486.     ----------------
  487.     You can find  them in  the left  top corner  of the  window. What  else
  488.     should they do than selecting the currently used drive.
  489.  
  490.     3. Dump Gadgets
  491.     ---------------
  492.     These are labeled  'Ascii' and 'Hex'  and their function  is to  switch
  493.     between the two dump modes. The selected dump will be displayed in  the
  494.     big window at the bottom.
  495.  
  496.     4. Status Line
  497.     --------------
  498.     Here you can see the name of the bootblock that is currently loaded  to
  499.     the buffer. If a function call fails or anything else happens, you will
  500.     get a report in this box too.
  501.  
  502.     5. Scroll Gadget
  503.     ----------------
  504.     It consists of one proportional gadget (I'm very proud of this, because
  505.     it was my first ever)  and two little arrows  at the bottom. It's  main
  506.     function is  to scroll  through  the bootblock  dump displayed  in  the
  507.     window. This is  only needed  when displaying hex  dump, because  ascii
  508.     dump fits in the window anyway.
  509.  
  510.     6. Quit
  511.     -------
  512.     Ahh, what was it?? Yes, you can leave the boot lab with this gadget.
  513.  
  514.     7. Load
  515.     -------
  516.     Here  you  can  load  a  bootblock  from  a  file  to  the  buffer.   A
  517.     filerequester pops up  were you  have to select  the file  you want  to
  518.     load. The bootblock will only be loaded to the buffer, not installed on
  519.     disk.                                                                  
  520.  
  521.     8. Save
  522.     -------
  523.     Counterpart of 'Load' which saves a  bootblock as a file. Nothing  more
  524.     to say,  because  it  works  exactly the  same  as  'Load'.  These  two
  525.     functions are useful for making bootblock backups of games, demos  etc.
  526.     If the buffer is empty, nothing will happen.
  527.  
  528.     9. Read
  529.     -------
  530.     Reads the bootblock of the currently  selected disk to the buffer.  Now
  531.     you can watch, save or print it.
  532.  
  533.     10. Write
  534.     --------
  535.     Writes the buffer contents to  the bootblock of the currently  selected
  536.     disk. Only  use  this if  you  know what  you  are actually  doing.  An
  537.     overwritten bootblock cannot be  restored in any  way. An empty  buffer
  538.     cannot be written.
  539.  
  540.     11. Print
  541.     ---------
  542.     Prints the dump of a bootblock.  Make sure that your printer is  online
  543.     or you will have  to wait for  this silly system  request for appr.  30
  544.     seconds. This  function  always  prints  the  bootblock  dump  you  can
  545.     currently see in  the window. If  nothing was loaded,  nothing will  be
  546.     printed.                                                               
  547.  
  548.     12. Install
  549.     -----------
  550.     Installs the bootblock selected in  the settings menu to the  currently
  551.     selected disk. Same as 'Write', you should only install disks when  you
  552.     know that they will still work afterwards.
  553.  
  554.     13. Settings Menu
  555.     -----------------
  556.     Here you can configure all important parts of the bootblock lab as  you
  557.     like. Note that this menu supports multi-select (hold right button  and
  558.     select items with the left button).
  559.  
  560.     FastFileSystem BB: If enabled, the 'Install' command will install a
  561.                        FFS bootblock (0x444f5301), otherwise you will get
  562.                        a normal OFS bootblock (0x444f5300).
  563.  
  564.     Uninstalled BB:    If enabled, VirusZ will write an uninstalled bootblock
  565.                        to the disk. This disk will no longer boot after a
  566.                        reset, but works the same as before from Shell and
  567.                        Workbench. If disabled, a standard OS 2.0 bootblock
  568.                        will be installed. This bootblock works under
  569.                        Kick 1.2/1.3 as well.
  570.  
  571.     Correct CheckSum:  Tells VirusZ to correct the checksum of a bootblock
  572.                        before writing it to disk. If you install a bootblock
  573.                        with a wrong checksum, the disk won't boot after a
  574.                        reset.
  575.  
  576.     Detect DiskChange: If set, the bootblock lab will behave like the main
  577.                        part of VirusZ, i.e. whenever you insert a disk while
  578.                        the bootblock lab is active, it will automatically
  579.                        select this drive and read the bootblock.
  580.  
  581.     Ask Before Action: If enabled, you will get an additional requester asking
  582.                        you if you really want to continue with the selected
  583.                        action. This works with 'Print', 'Write' and 'Install'
  584.                        as these functions can do some harm if wrongly used.
  585.  
  586.  
  587.                                   PREFERENCES
  588.                                   -----------
  589.  
  590.     1. The Main Idea
  591.     ----------------
  592.     I think everyone of you knows those programs that always look the  same
  593.     and do the same  and you cannot change  anything of their behaviour.  I
  594.     didn't want VirusZ to become the same, so I added this fine preferences
  595.     window.  It was designed having the User Interface Style Guide in mind.
  596.     All gadgets can be toggled via keypad too (see underlined character).
  597.  
  598.     2. Action Gadgets
  599.     -----------------
  600.     These are the three gadgets at  the bottom. 'Use' will cause VirusZ  to
  601.     use the currently  selected settings  only for  this session.  'Cancel'
  602.     ignores all changes made to the  settings. 'Save' saves them to a  file
  603.     called 'VirusZ.prefs'  in your  S:  drawer that  will  be used  on  all
  604.     following startups. Additionally to the options specified in the  prefs
  605.     window, the following will be saved too:
  606.          - the position of VirusZ's main window
  607.          - all settings of the bootblock lab
  608.  
  609.     3. Audible & Visible Alarm
  610.     --------------------------
  611.     This enables/disables the fantastic sound  and screen flash that  warns
  612.     you when a virus has been detected on disk or in memory. Default is on.
  613.  
  614.     4. Install Faked SnoopDos
  615.     ------------------------- 
  616.     This installs/removes a task called SnoopDos (only if the real SnoopDos
  617.     isn't installed) for protection  against PowerPacker 3.2 trojan  horse.
  618.     Fully compatible  to the  real SnoopDos,  the option  doesn't need  any
  619.     processing time since the task is  running at a low priority and  waits
  620.     for a message that never arrives. Default: off.
  621.  
  622.     5. Check Resident Vectors
  623.     -------------------------
  624.     This tells VirusZ whether to check the resident vectors during  startup
  625.     and while running  or not.  Useful if  VirusZ keeps  on reporting  your
  626.     recoverable RAM-disk or harddisk-device  after every reset. Default  is
  627.     off.
  628.  
  629.     6. Report Custom Bootblocks
  630.     ---------------------------
  631.     This will, if enabled, cause  VirusZ to report known custom  bootblocks
  632.     while checking  your  disks. Useful  if  you  want to  find  a  certain
  633.     bootblock and you simply can't remember where it was. Default is off.
  634.  
  635.     7. Check Memory For Viruses
  636.     ---------------------------
  637.     By disabling this  item, you can  tell VirusZ not  to check memory  for
  638.     viruses regularly. This does not  disable the memory check on  startup,
  639.