History, Revisions:
__________________

2.40 (This Version) (01/01/99)

This version was originally planned to be released in March of last year.
Most of the coding for this version was completed in late Feb to
early March last year, but this was not meant to be:-

Why?

firstly....
Due to VERY heavy workloads (Year 2000, etc.) my free time was rather
limited.

And secondly, and far more importantly...

My father had been unwell for some time, but took a turn for the worse.
He spent several months in and out of hospitals having every conceivable
test done to try and find out what was ailing him.

By May, looking like Bart Simpson (yellow through jaundice) and feeling
like a human pin cushion, he was allowed home for a while until a new
specialist could see him.

In June of 1998 he was finally diagnosed as having pancreatic cancer, which
at first was thought to be operable. However further tests, attempted treat-
ments, and finally another specialist confirmed in July that the cancer was
NOT operable and my father's condition was terminal.

He was advised he probably had up to six months to live.

Over the next few months he was admitted to a hospice for treatment, all the
time he was losing weight and in more and more pain. In between these visits
he spent time with his family and friends discussing anything and everything.

He finally went into the hospice for the last time on the 20th of October
1998. He died the afternoon of the 21st of October, a mere few weeks after
his 60th birthday.

He was a very stoical man, and never asked 'why me?' or complained that
this was unfair in any way.

In honour of his memory I will make a donation to the 'Imperial Cancer Research
Fund' for every copy of this program purchased. This I hope will help others
who may suffer from this or other types of cancer in the future, as these
donations will help to fund work towards a better understanding of cancers and
hopefully a future cure.


1.  Changed the licensing requirements. This LITE version is now FREE for
    non-commercial (personal) use. Users who want the extra functionality
    or those using ChekMate in a corporate or commercial environment should
    still register for the FULL version.

2.  Added NEW detection routines that allow you to specify other files to
    monitor for virus attacks (Currently up to 6 user specified files supported).

3.  Added the ability for the chekmate.ini file to be placed anywhere on the
    drive and named as any filename you desire. This helps to minimise the
    chances of a targeted attack.

4.  Added the ability for the bait files to be placed anywhere on the
    drive. This helps further to minimise the chances of a targeted attack.

5.  Added the ability to encrypt chekmate.ini (Registered Version only).
    This helps to further minimise the chances of a targeted attack.

6.  Added the ability to rename chekmate.exe to any name.
    (You must retain the exe extension though).
    This helps to further minimise the chances of a targeted attack.

7.  Other minor tweaks and improvements.

8.  Year 2000 Compliant!

9.  Removed ChekWord as similar functionality is supplied as standard
    with Microsoft Word 95c, 97 and 2000.

___________________________________________________________________________


2.30 (27/01/98)

1.  Added NEW detection routines that can detect Windows specific viruses.

2.  Added FULL support for Windows 95 FAT32 Dos Boot Records (DBR).

3.  Updated interrupt routines to make them even more reliable at detecting
    viruses that hook interrupts.

4.  Updated SETUP.EXE to support new INI file entry.

5.  Updated MD5 hash routines.

6.  Added auto Windows NT detection, used to disable CMOS, boot and partition
    checking and other non-Windows compatible routines under Windows NT.

7.  Other minor tweaks and improvements.

___________________________________________________________________________


2.20 (20/02/97)

1.  Added NEW detection routine that can detect viruses by detecting shrinking
    hard disk space while ChekMate is executing.

2.  Added support for Word 7.0 to ChekWord, the macro detection and removal
    tool.

3.  Added full support for DriveSpace compressed drives.
    Including DriveSpace 3 (in Windows 95).

4.  Updated interrupt routines to make them even more reliable at detecting
    viruses that hook interrupts.

5.  Updated SETUP.EXE to inform that it has completed successfully.

6.  Added Elapsed Time indicator at completion of ChekMate.

7.  Added auto Windows detection, used to disable CMOS checking and
    other non-Windows compatible routines under Windows.

8.  Other minor tweaks and improvements.

___________________________________________________________________________


2.11 (20/05/96)

1.  Added COMMAND processor and COMSPEC checking, to see if they are
    the same. This ensures that the correct COMMAND processor is checked each
    time.

2.  Added /ALTAUTO switch to SETUP.EXE.
    This will handle the some BIOSes that are not handled by the /AUTO switch.

3.  Updated the ShareWare manual to cover the Interrupt Exclusion option for
    EIDE drives that use the DiskManager or EZDrive drivers to overcome BIOS
    limitation on large hard drives.

___________________________________________________________________________

2.1 (20/04/96)

1.  Added PATH companion checking to the already present
    standard companion virus checking.

2.  Updated registration key system, now uses external keyfile REGISTER.KEY.
    This file is also encrypted.

3.  Removed REGISTER.EXE as it is not required to handle the new external
    registration keys.

4.  Updated SETUP.EXE to better handle the /AUTO switch.

5.  Updated Word Macro detection utility. (ChekWord.DOC)
    It now has the ability to clean documents that contain macros.

6.  Removed the need to use DEBUG.
    (The equivalent code is now inside ChekMate.exe)

7.  Updated the BAIT files, now more complex, and larger.
    (This will defeat all the current anti-bait routines)

8.  Improved and refined the interrupt routines.

9.  Updated the boot sector routines to avoid alarming on volume label
    and disk serial number changes. These are now just noted in the ERROR.LOG
    file.

10. Updated ChekResQ to check the keyfile before allowing repair to proceed.
    Some other minor changes made to ChekResQ also.
    (REGISTERED version ONLY)

___________________________________________________________________________

2.0 (01/01/96)

1. Added ChekResQ Boot sector and Partition Table repair utility.
   (REGISTERED version ONLY)

   This will allow removal of known and unknown boot [DBR] and partition
   table [MBR] viruses including 'Monkey' from a hard disk. Without the need
   of a rescue disk.

2. Added support for Windows NT.  Added /NOBP switch.

3. Added /AUTO switdh to SETUP.EXE. The use of this switch will allow a
   CHEKMATE.INI file to be built without any knowledge of the PC and it's
   setup. This will also allow installation automatically from a server.
   /NODRIVES switch required when using /AUTO on NT systems.

4. Added encryption of the boot and partition table .SEC and .CHK files
   (this is for use with ChekResQ)

5. Added Word Macro detection utility. (ChekWord.DOC)

6. Updated 'Instant REGISTRATION' utility.

7. Improved the stealth virus detection routines. Even tunneling viruses
   such as Necropolis and Peanut are now detected.

8. Added checking of AUTOEXEC.BAT and CONFIG.SYS (REGISTERED Version ONLY)

9. CHEKMATE.EXE now shows the command line switches used when executed.

10. Added /SPARSE switch to CHEKMATE.EXE. When used this will force the
    bait files to be exposed three times, rather than the standard once.
    This will help to trap a sparse (slow) virus.

11. Tidied up some internal routines.

12. Fixed a minor glitch with /CREATE.

___________________________________________________________________________

1.06b (01/10/95)

1. Added interrupt tracing (REGISTERED version ONLY)
   (This will allow detection of very clever stealth viruses like 'Tremor'.)

2. Added detection for the 'Dir2.Byway' link virus.

3. Strengthened the 'Companion' virus detection routines.

4. Added COMSPEC checking.

5. Added 'Interrupt Address Exclusion' support (REGISTERED version ONLY).
   (Mainly for 'Disk Manager and EZ Drive users'. EZDrive and Disk Manager is
   used to handle IDE drives with partition larger than 525Mb).

6. Added 'Instant REGISTRATION' utility.

7. Added extra memory tests.

8. Tidied up some internal routines.

___________________________________________________________________________

1.06a (01/08/95)

1. NEW Windows (like) interface.

2. Added interrupt test routines for various interrupts commonly used
   by viruses. (REGISTERED version covers more interrupts.)

   This improves the detection of memory resident viruses and Stealth
   Viruses.

3. Added CMOS checking (REGISTERED version only!)

4. Changed *.CHK file structure.

5. Changed BAIT Files (more and larger sizes!)

6. Added /QUIET option (silent running! (REGISTERED version only.)

7. Lots of little changes, tweaks etc.

8. Removed Polymorphic Security Envelopes (causing too many problems!)

___________________________________________________________________________

1.05d (02/05/95)

1. Added FULL support for Stacker compressed drives (Thanks Hugh).
   This means that Stacker compressed drives are automatically detected
   and handled correctly.

2. Added FULL suppport for OS/2 Boot Manager

3. Disposed of GETPART.EXE (The equivalent code in now inside ChekMate.EXE)

4. Added Polymorphic Security Envelopes (another layer of protection) to:

   ChekMate.EXE, SETUP.EXE & MD5.EXE

5. Added a Setup/Configuration utility for changing the FILELIST.INI
   settings. In many cases this utility will supply the correct settings
   for DOS Base Memory Size & Command Processor (taken from COMSPEC).

6. Added an ERROR logging routine. Any changes will be written out to
   ERROR.LOG as well as to the screen.

7. Fixed Nav (MtE) and TBAV false alarms.
___________________________________________________________________________

1.05c (02/03/95)

1. Added MD5 to increase the level of detection that ChekMate
   offers. Now even the odd heavily stealthed viruses that
   ChekMate occasionaly missed should now be caught.

   *** This now makes ChekMate more difficult to fool ***

2. Restructered the code, to make it smaller & easier to maintain.

3. ChekMate now checks ChekMate.EXE, GetPart.EXE and MD5.EXE before
   proceeding to check other files/areas.

4. Fixed the COMMAND PROCESSOR fingerprint routine (little bug!)

5. Added test routines to check to see if the directory specified for
   ChekMate actualy exists. Same for the COMMAND PROCESSOR.

6. Added extra error reporting routines.

7. Heavily BETA tested the changes. (Thanks Ed)
___________________________________________________________________________

1.05b  (06/02/95)

1. Fixed the NOEXPOSURE (/NOEXP) switch so that the Boot Sector,
   Partition Table, COMMAND.COM and CHEKMATE.EXE gets checked when
   this switch is used (little bug!).

2. Added support for MONO monitors.

3. Added option for disabling memory test. Mainly for OS/2.

4. Tested with OS/2 Warp 3.0, works fine in a DOS box.

5. Added support for NDOS & 4DOS command processors.

6. Compiled CHEKMATE.EXE for 8086/8088 rather than 286.
___________________________________________________________________________

1.05a  (14/12/94)

1. Added memory checking routine to detect some memory resident
   viruses that change the DOS base 640Kb boundry when they
   install themselves. FORM is now detected in memory!

2. Added extra file-size change detection routines.

3. Tidied up some internal routines.

4. PKLITE packed the CHEKMATE.EXE file.

5. Added the ability to run ChekMate from any directory.

6. Added ERRORLEVEL exit codes.

7. Added 8088/8086/V20/V30 CHEKMATE.EXE File (CHEK8088.EXE)

______________________________________________________________________

1.04e (26/11/94)

1. Fixed the 'Parity Boot.B' detection. It will now detect it fine.

2. Changed the file access routines to make them more efficient.

3. Added checking of 'Boot Sectors' on up to 3 more physical/logical
   drives. Now supports up to drive 'F:' This will be of most use
   to those using disk compression products where the drive letters
   are swapped. Many 'Boot Sector' viruses will infect the 'ORIGINAL'
   C: drive. The disk compression program usually changes this to the
   highest drive letter after your existing drive(s).

   Eg Original Drive C:  (You have 2 Drives C: & D: before compression)
      after compression installed C: becomes E: (compressed drive E:
      becomes C:)

      Boot sector virus infects system, drive E: (originaly C:).
      ChekMate can now detect the infected 'Boot Sector' on drive E:.

____________________________________________________________________________

1.04d (23/11/94)              Internal test version (Not Released)

1. Tested & modified the improved file access routines.
____________________________________________________________________________

1.04c (11/11/94)              First public release.

____________________________________________________________________________

1.00 - 1.04b  & Others        Beta versions, used personally and by
                              Beta-testers.
____________________________________________________________________________
