home *** CD-ROM | disk | FTP | other *** search
-
-
- 2000 Check Ver, 2.0
-
- Please read the operating instructions and notes before using this product.
- ***************************************************************************
-
- This program is intended to run on IBM or IBM compatible P.C.s with MS DOS
- 3.3 or above, Windows3.x, Windows95 or Windows98 operating systems.
-
- 2000 Check will:
- Test your P.C. for Millennium compliance by ensuring that the date provided
- by the P.C. clock will automatically roll-over to the correct date at the
- turn of the century, the 28th of February 2000 and the 28th of February 2040.
- Test all years between 1999 and 2041 for date recognition and retrieval.
- Ensure the system clock recognizes all leap years between 1999 and 2041.
- Install a permanent fix into non compliant P.C.s.
- Record individual test results on the P.C.s hard disk. (MM?INFO.TXT)
- Produce a millennium compliance certificate.
- Displays the test result on your computer screen.
-
- This document is divided into the following sections.
-
- 1: Operating instructions
- 2: Post installation messages
- 3: General notes
- 4: Mm?info.txt file description
- 5: The meaning of time and how it all began.
- 6: BIOS patch information
- 7: 2000 Check test sequence
-
- ********************
-
- [1] Operating Instructions.
-
- This product consists of the following files Y2kCHECK.EXE, Y2kCHECK.PIF and
- Y2kORDER.TXT, you can download them from a web site and copy them as often
- as you like, you can even run 2000 CHECK and test any IBM compatible personal
- computer free of charge if you adhere to the following conditions.
-
- 1: You must read and accept the licensing and disclaimer statement.
-
- 2: You may not re-sale or in any way profit from the re-sale of this product.
-
- 3: You must purchase a key for each and every computer you intend to repair
- by installing the BIOS patch incorporated within this product.
-
- This product can be installed on floppy disk, hard disk or network server.
- To start the program, type Y2kCHECK from the directory containing the
- program files or use the Windows RUN option.
-
- You will be asked to accept the license conditions by entering the key.
- Keys can be obtained from the web site. and will allow you to run the
- program as often as you like on one computer. If you would rather test
- the computer prior to purchasing a key (recommended) enter 9999 and the
- program will perform a test (but not a fix) free of charge.
-
- The program will run, test and assuming you have purchased a fix, repair
- non compliant computers.
-
- ********************
-
- [2] Post installation messages.
-
- When the P.C. is re-started it will display a message, informing the user
- of the equipment's hardware compliance level. The message will appear in
- one of two colors, and remain visible for three seconds.
- Usually a green message indicating the P.C. is millennium compliant, will
- be displayed. A red message will indicate a possible hardware compliance
- problem.
- Equipment that required the installation of a software patch to make it
- millennium compliant will be tested to ensure the patch is installed and
- operational. In the unlikely event that this proves not to be the case, a
- red warning message will be displayed.
-
- ********************
-
- [3] General notes.
-
- If you are using a multiple application operating system such as windows
- please ensure all other applications have terminated.
-
- All printouts use standard ASCII characters and are formatted for 64 lines
- per page with a carriage return at the end of each line and a form feed
- on the 64th line.
-
- ********************
-
- [4] MM_INFO.TXT file description
-
- This file is written to the hard disk of the P.C. under test, and remains
- there as a permanent record of the test results.
-
- MM_INFO.TXT contains the following information.
-
- P.C. ID number:
- Test Date:
- Test Time:
- BIOS creation date:
- Test results:
-
- ********************
-
- [5] The meaning of time and how it all began.
-
- When the P.C. was first produced it did not contain a time of day clock,
- instead, the user was required to enter the date and time when the P.C.
- was switched on.
- To provide the P.C. with date and time functions the date and time you
- entered was converted to a number, which corresponded to the elapsed time
- since time zero, which to a P.C., is the 1st of January 1980 at 00:00 hours
- ( try setting your P.C. date to 1979 ).
- This number is regularly updated by an internal clock pulse as long as the
- P.C. remains switched on.
-
- When a program requires to know the date or time, it merely requests the
- operating system to convert this number into the correct date/time format
- and supply it to the calling program.
- This clock is generally known as the System or DOS Clock and most, but not
- all, programs derive their date and time from this source.
-
- From the launch of the IBM PC/AT, P.C.s have been equipped with a time of
- day clock, which is known as the Real Time Clock or RTC. This clock is
- powered by an internal battery which maintains the date and time even when
- the P.C, is switched of.
- When the P.C. is switched on instead of asking you to enter the date and
- time, it asks the RTC to provide it.
-
- This is a somewhat simplified version, in actual fact the RTC regularly
- updates specific locations in what is known as non volatile memory or
- CMOS RAM, and these locations are read by instructions issued by BIOS,
- which in turn may be answering a request from the operating system (DOS)
- to provide this information.
-
- The BIOS (Basic Input Output System) is a set of routines which convert
- the commands issued by the operating system into commands that the hardware
- can understand, you might consider BIOS as a translator between standard
- operating system requests and the continually evolving P.C. hardware.
-
- Most but not all BIOS routines reside in a chip or chips on the P.C.
- mother board, and in modern P.C.s can be re-written to provide updates or
- correct errors in previous versions.
-
- So if that's how it works, what's the problem ?
-
- There are lots of problems but they all stem from two basic facts.
-
- 1: The programmer has access to two sources of date and time which may or
- may not be the same.
-
- 2: Software programmers, BIOS programmers and hardware designers have all
- taken the century part of the date for granted and neglected to consider
- the implications of getting it wrong.
-
- Consider the following.
- To the BIOS the initial source of date and time is actually the CMOS RAM,
- which stores time and date as a set of binary coded decimal numbers in
- various predefined locations. These locations can be read one at a time by
- BIOS issuing in/out instructions. To save time the BIOS may not bother
- reading byte 50 (the century byte) but instead assume it to be 19, or the
- RTC may decide that this byte is always 19 and not update it, or the RTC may
- update it but only at power on time (not so good for P.C.s that are never
- switched off), or the BIOS may in fact read all information, but fail to
- update the system clock correctly. Add to this the possibility that the
- programmer may have decided to use the RTC as his source of date and time
- instead of the system clock, (2000 Check uses both) and you have some idea
- of the possible sources of error.
-
- Further complications arise from the fact that the year 2000 is actually a
- leap year so the 29th of February 2000 must also be recognized as a valid
- date.
-
- Now on the practical side you might think that a P.C. of one manufacturer
- and model will be the same as the next, so if one is millennium compliant
- then so must the next ! Not so ! Manufacturers may use completely different
- mother boards or BIOS in seemingly identical P.C.s and seemingly identical
- board may use different chip vendors.
-
- The only way to test a P.C. for millennium compliance is to test each and
- every one of them with a program such as 2000 Check. Setting dates by hand,
- switching them off, waiting a few minutes and them switching them on again
- is both time consuming and inaccurate (RTCs that update the CMOS RAM century
- byte only at power on time, would not be detected using this method and you
- run the risk of immobilizing your P.C. by exceeding program expire dates).
-
- ********************
-
- [6] BIOS patch information
-
- Most non-compliant computers can be made compliant by installing the BIOS
- patch supplied with this software.
-
- WARNING !!!
-
- The BIOS patch file MM_PATCH.COM is tailored to run on individual computers,
- you must use 2000 Check to install this patch, do NOT copy this file to
- another computer.
-
- Technical information on BIOS patching (simplified):
-
- MM_PATCH.COM is actually a Device Driver with a small memory resident portion
- of approximately 350 bytes, which remains in memory and intercept system calls
- to the RTC (Real Time Clock).
- Date information returned by the RTC is examined by mm_patch. If the date is
- between 1900 and 1979 the century is assumed to be wrong and is changed to
- 20 before returning it to the operating system.
- The rational for this is any date prior to 1980 will be considered illegal by
- DOS and the most likely explanation is the century byte has not been changed
- by the RTC or that BIOS has failed to retrieve the century byte from CMOS RAM.
-
- Patch installation notes and problems:
-
- 2000 Check will add the "device=mm_patch.com" command to the end of the
- config.sys file and save the original file as config.qct.
-
- The patch will not be installed if:
-
- 1: It does not fix the problem.
-
- 2: It is already installed.
-
- 3: The computer has no hard disk (networked diskless P.C.s).
-
- 4: The 9999 key is used to test the computer.
-
- ********************
-
- [7] 2000 Check test sequence:
-
- Computers are checked in the following way using ROM and System BIOS
- interrupts.
-
- 1: The Real Time Clock is set to one second before midnight on the
- 31/12/1999
-
- 2: Two seconds later the Real Time Clock is read and compared with
- 01/01/2000
-
- These two steps ascertain whether the Real Time Clock is capable of
- rolling over to the next century and whether BIOS is capable of setting
- and retrieving the correct date.
-
- If this test is OK then go to step 5: otherwise,
-
- 3: The Real Time Clock is set to 01/01/2000
-
- 4: The Real Time Clock is read and compared with 01/01/2000
-
- This is to ascertain whether the Real Time Clock century byte can be
- manually set and whether BIOS will report the change.
-
- If this test fails then go to step 14: otherwise.
-
- 5: The Real Time Clock is set to one second before midnight on the
- 28/02/2000
-
- 6: Two seconds later the Real Time Clock is read and compared with
- 29/02/2000
-
- These two steps ascertain whether the Real Time Clock is capable of
- rolling over to the 29th of February 2000 and whether BIOS is capable
- of setting and retrieving the correct date.
-
- If this test is OK then go to step 9: otherwise.
-
- 7: The Real Time Clock is set to 29/02/2000
-
- 8: The Real Time Clock is read and compared with 29/02/2000
-
- This is to ascertain whether the Real Time Clock can be manually set
- to the 29th of February 2000 and whether BIOS will report the change.
-
- Go to step 14:
-
- 9: The Real Time Clock is set to one second before midnight on the
- 28/02/2040
-
- 10: Two seconds later the Real Time Clock is read and compared with
- 29/02/2040
-
- These two steps ascertain whether the Real Time Clock is capable of
- rolling over to the 29th of February 2040 and whether BIOS is capable
- of setting and retrieving the correct date.
-
- If this test is ok then go to step 13: otherwise.
-
- 11: The Real Time Clock is set to 29/02/2040
-
- 12: The Real Time Clock is read and compared with 29/02/2040
-
- This is to ascertain whether the Real Time Clock can be manually set
- to the 29th of February 2040 and whether BIOS will report the change.
-
- go to step 14:
-
- 13: If steps 2, 6 and 10 were OK then test the ability of RTC/CMOS memory
- to save and retain century information, thus ensuring compatibility with
- programs that use direct R.T.C. calls.
-
- 14: The System Clock Counter and the Real Time Clock are set to the same
- day and month in the year 1999.
-
- 15: The System Clock and Real Time Clock are read and compared with the
- reference date.
-
- If this test is ok, the previous two steps are repeated for each year
- from 2000 until 2041.
- This ensures the System Clock and Real Time Clock can be set to, and
- will return correct dates for each year in the range 1999 to 2041 and
- the system clock will recognize all leap years within that range.
-
- 16: Depending on the results of the previous tests 2000 check may ask to
- install a BIOS patch and re-test the computer. If so the previous
- fifteen steps are repeated with the patch installed.
-
- 17: Update reports and restore all times and dates to their correct values.
-
- ********************
-
-
- END.
-