home *** CD-ROM | disk | FTP | other *** search
/ PC World Komputer 1999 March / PCWK3A99.iso / Pcwktxt / Y2k / 2000chk / BUGFIX.exe / y2kcheck.txt < prev    next >
Encoding:
Text File  |  1998-10-07  |  13.6 KB  |  322 lines

  1.  
  2.  
  3.                              2000 Check Ver, 2.0
  4.  
  5.  Please read the operating instructions and notes before using this product.
  6.  ***************************************************************************
  7.  
  8. This program is intended to run on IBM or IBM compatible P.C.s with MS DOS
  9. 3.3 or above, Windows3.x, Windows95 or Windows98 operating systems.
  10.  
  11. 2000 Check will:
  12. Test your P.C. for Millennium compliance by ensuring that the date provided
  13. by the P.C. clock will automatically roll-over to the correct date at the
  14. turn of the century, the 28th of February 2000 and the 28th of February 2040.
  15. Test all years between 1999 and 2041 for date recognition and retrieval.
  16. Ensure the system clock recognizes all leap years between 1999 and 2041.
  17. Install a permanent fix into non compliant P.C.s.
  18. Record individual test results on the P.C.s hard disk.  (MM?INFO.TXT)
  19. Produce a millennium compliance certificate. 
  20. Displays the test result on your computer screen.
  21.  
  22. This document is divided into the following sections.
  23.  
  24. 1:   Operating instructions
  25. 2:   Post installation messages
  26. 3:   General notes
  27. 4:   Mm?info.txt file description
  28. 5:   The meaning of time and how it all began.
  29. 6:   BIOS patch information
  30. 7:   2000 Check test sequence
  31.  
  32.                              ********************
  33.  
  34. [1]                         Operating Instructions.
  35.  
  36. This product consists of the following files Y2kCHECK.EXE, Y2kCHECK.PIF and
  37. Y2kORDER.TXT, you can download them from a web site and copy them as often
  38. as you like, you can even run 2000 CHECK and test any IBM compatible personal
  39. computer free of charge if you adhere to the following conditions.
  40.  
  41. 1: You must read and accept the licensing and disclaimer statement.
  42.  
  43. 2: You may not re-sale or in any way profit from the re-sale of this product.
  44.  
  45. 3: You must purchase a key for each and every computer you intend to repair
  46.    by installing the BIOS patch incorporated within this product.
  47.  
  48. This product can be installed on floppy disk, hard disk or network server.
  49. To start the program, type Y2kCHECK from the directory containing the
  50. program files or use the Windows RUN option. 
  51.  
  52. You will be asked to accept the license conditions by entering the key.
  53. Keys can be obtained from the web site. and will allow you to run the
  54. program as often as you like on one computer. If you would rather test
  55. the computer prior to purchasing a key (recommended) enter 9999 and the
  56. program will perform a test (but not a fix) free of charge.
  57.  
  58. The program will run, test and assuming you have purchased a fix, repair
  59. non compliant computers.
  60.  
  61.                              ********************
  62.  
  63. [2]                       Post installation messages.
  64.  
  65. When the P.C. is re-started it will display a message, informing the user
  66. of the equipment's hardware compliance level. The message will appear in 
  67. one of two colors, and remain visible for three seconds.
  68. Usually a green message indicating the P.C. is millennium compliant, will
  69. be displayed. A red message will indicate a possible hardware compliance 
  70. problem.
  71. Equipment that required the installation of a software patch to make it
  72. millennium compliant will be tested to ensure the patch is installed and
  73. operational. In the unlikely event that this proves not to be the case, a 
  74. red warning message will be displayed. 
  75.  
  76.                              ******************** 
  77.  
  78. [3]                             General notes.
  79.  
  80. If you are using a multiple application operating system such as windows
  81. please ensure all other applications have terminated. 
  82.  
  83. All printouts use standard ASCII characters and are formatted for 64 lines
  84. per page with a carriage return at the end of each line and a form feed
  85. on the 64th line.
  86.  
  87.                              ********************
  88.  
  89. [4]                      MM_INFO.TXT file description
  90.       
  91. This file is written to the hard disk of the P.C. under test, and remains
  92. there as a permanent record of the test results.
  93.  
  94. MM_INFO.TXT contains the following information.
  95.  
  96. P.C. ID number:
  97. Test Date:
  98. Test Time:
  99. BIOS creation date:
  100. Test results:
  101.  
  102.                              ********************
  103.  
  104. [5]                 The meaning of time and how it all began.
  105.  
  106. When the P.C. was first produced it did not contain a time of day clock,
  107. instead, the user was required to enter the date and time when the P.C.
  108. was switched on.
  109. To provide the P.C. with date and time functions the date and time you
  110. entered was converted to a number, which corresponded to the elapsed time
  111. since time zero, which to a P.C., is the 1st of January 1980 at 00:00 hours
  112. ( try setting your P.C. date to 1979 ).
  113. This number is regularly updated by an internal clock pulse as long as the
  114. P.C. remains switched on.
  115.  
  116. When a program requires to know the date or time, it merely requests the
  117. operating system to convert this number into the correct date/time format
  118. and supply it to the calling program.
  119. This clock is generally known as the System or DOS Clock and most, but not
  120. all, programs derive their date and time from this source.
  121.  
  122. From the launch of the IBM PC/AT, P.C.s have been equipped with a time of
  123. day clock, which is known as the Real Time Clock or RTC. This clock is
  124. powered by an internal battery which maintains the date and time even when
  125. the P.C, is switched of.
  126. When the P.C. is switched on instead of asking you to enter the date and
  127. time, it asks the RTC to provide it.
  128.  
  129. This is a somewhat simplified version, in actual fact the RTC regularly
  130. updates specific locations in what is known as non volatile memory or
  131. CMOS RAM, and these locations are read by instructions issued by BIOS,
  132. which in turn may be answering a request from the operating system (DOS)
  133. to provide this information.
  134.  
  135. The BIOS (Basic Input Output System) is a set of routines which convert
  136. the commands issued by the operating system into commands that the hardware
  137. can understand, you might consider BIOS as a translator between standard
  138. operating system requests and the continually evolving P.C. hardware.
  139.  
  140. Most but not all BIOS routines reside in a chip or chips on the P.C.
  141. mother board, and in modern P.C.s can be re-written to provide updates or
  142. correct errors in previous versions.
  143.  
  144. So if that's how it works, what's the problem ?
  145.  
  146. There are lots of problems but they all stem from two basic facts.
  147.  
  148. 1: The programmer has access to two sources of date and time which may or
  149. may not be the same.
  150.  
  151. 2: Software programmers, BIOS programmers and hardware designers have all
  152. taken the century part of the date for granted and neglected to consider
  153. the implications of getting it wrong.
  154.  
  155. Consider the following.
  156. To the BIOS the initial source of date and time is actually the CMOS RAM,
  157. which stores time and date as a set of binary coded decimal numbers in
  158. various predefined locations. These locations can be read one at a time by
  159. BIOS issuing in/out instructions. To save time the BIOS may not bother
  160. reading byte 50 (the century byte) but instead assume it to be 19, or the
  161. RTC may decide that this byte is always 19 and not update it, or the RTC may
  162. update it but only at power on time (not so good for P.C.s that are never
  163. switched off), or the BIOS may in fact read all information, but fail to
  164. update the system clock correctly. Add to this the possibility that the
  165. programmer may have decided to use the RTC as his source of date and time
  166. instead of the system clock, (2000 Check uses both) and you have some idea
  167. of the possible sources of error.
  168.  
  169. Further complications arise from the fact that the year 2000 is actually a
  170. leap year so the 29th of February 2000 must also be recognized as a valid
  171. date.
  172.  
  173. Now on the practical side you might think that a P.C. of one manufacturer
  174. and model will be the same as the next, so if one is millennium compliant
  175. then so must the next ! Not so ! Manufacturers may use completely different
  176. mother boards or BIOS in seemingly identical P.C.s and seemingly identical
  177. board may use different chip vendors.
  178.  
  179. The only way to test a P.C. for millennium compliance is to test each and
  180. every one of them with a program such as 2000 Check. Setting dates by hand,
  181. switching them off, waiting a few minutes and them switching them on again
  182. is both time consuming and inaccurate (RTCs that update the CMOS RAM century
  183. byte only at power on time, would not be detected using this method and you
  184. run the risk of immobilizing your P.C. by exceeding program expire dates).
  185.  
  186.                              ********************
  187.  
  188. [6]                         BIOS patch information
  189.  
  190. Most non-compliant computers can be made compliant by installing the BIOS
  191. patch supplied with this software.
  192.  
  193.                               WARNING !!!
  194.  
  195. The BIOS patch file MM_PATCH.COM is tailored to run on individual computers,
  196. you must use 2000 Check to install this patch, do NOT copy this file to
  197. another computer.
  198.  
  199.           Technical information on BIOS patching (simplified):
  200.  
  201. MM_PATCH.COM is actually a Device Driver with a small memory resident portion
  202. of approximately 350 bytes, which remains in memory and intercept system calls
  203. to the RTC (Real Time Clock).
  204. Date information returned by the RTC is examined by mm_patch. If the date is
  205. between 1900 and 1979 the century is assumed to be wrong and is changed to
  206. 20 before returning it to the operating system.
  207. The rational for this is any date prior to 1980 will be considered illegal by
  208. DOS and the most likely explanation is the century byte has not been changed
  209. by the RTC or that BIOS has failed to retrieve the century byte from CMOS RAM.
  210.  
  211.                  Patch installation notes and problems:
  212.  
  213. 2000 Check will add the "device=mm_patch.com" command to the end of the
  214. config.sys file and save the original file as config.qct.
  215.  
  216. The patch will not be installed if:
  217.  
  218. 1:  It does not fix the problem.
  219.  
  220. 2:  It is already installed.
  221.  
  222. 3:  The computer has no hard disk (networked diskless P.C.s).
  223.  
  224. 4:  The 9999 key is used to test the computer.
  225.  
  226.                              ********************
  227.  
  228. [7]                      2000 Check test sequence:
  229.  
  230.     Computers are checked in the following way using ROM and System BIOS
  231.     interrupts.
  232.  
  233. 1:  The Real Time Clock is set to one second before midnight on the
  234.     31/12/1999
  235.  
  236. 2:  Two seconds later the Real Time Clock is read and compared with
  237.     01/01/2000
  238.  
  239.     These two steps ascertain whether the Real Time Clock is capable of
  240.     rolling over to the next century and whether BIOS is capable of setting
  241.     and retrieving the correct date.
  242.  
  243.     If this test is OK then go to step 5:  otherwise,
  244.     
  245. 3:  The Real Time Clock is set to 01/01/2000
  246.  
  247. 4:  The Real Time Clock is read and compared with  01/01/2000
  248.  
  249.     This is to ascertain whether the Real Time Clock century byte can be
  250.     manually set and whether BIOS will report the change.
  251.  
  252.     If this test fails then go to step 14: otherwise.
  253.  
  254. 5:  The Real Time Clock is set to one second before midnight on the
  255.     28/02/2000
  256.  
  257. 6:  Two seconds later the Real Time Clock is read and compared with
  258.     29/02/2000
  259.  
  260.     These two steps ascertain whether the Real Time Clock is capable of
  261.     rolling over to the 29th of February 2000 and whether BIOS is capable
  262.     of setting and retrieving the correct date.
  263.  
  264.     If this test is OK then go to step 9:  otherwise.
  265.  
  266. 7:  The Real Time Clock is set to 29/02/2000
  267.  
  268. 8:  The Real Time Clock is read and compared with  29/02/2000
  269.  
  270.     This is to ascertain whether the Real Time Clock can be manually set
  271.     to the 29th of February 2000 and whether BIOS will report the change.
  272.  
  273.     Go to step 14: 
  274.  
  275. 9:  The Real Time Clock is set to one second before midnight on the
  276.     28/02/2040
  277.  
  278. 10: Two seconds later the Real Time Clock is read and compared with
  279.     29/02/2040
  280.  
  281.     These two steps ascertain whether the Real Time Clock is capable of
  282.     rolling over to the 29th of February 2040 and whether BIOS is capable
  283.     of setting and retrieving the correct date.
  284.  
  285.     If this test is ok then go to step 13: otherwise.
  286.  
  287. 11: The Real Time Clock is set to 29/02/2040
  288.  
  289. 12: The Real Time Clock is read and compared with  29/02/2040
  290.  
  291.     This is to ascertain whether the Real Time Clock can be manually set
  292.     to the 29th of February 2040 and whether BIOS will report the change.
  293.  
  294.     go to step 14:
  295.  
  296. 13: If steps 2, 6 and 10 were OK then test the ability of RTC/CMOS memory
  297.     to save and retain century information, thus ensuring compatibility with
  298.     programs that use direct R.T.C. calls. 
  299.  
  300. 14: The System Clock Counter and the Real Time Clock are set to the same
  301.     day and month in the year 1999.
  302.  
  303. 15: The System Clock and Real Time Clock are read and compared with the
  304.     reference date.
  305.    
  306.     If this test is ok, the previous two steps are repeated for each year
  307.     from 2000 until 2041.
  308.     This ensures the System Clock and Real Time Clock can be set to, and
  309.     will return correct dates for each year in the range 1999 to 2041 and
  310.     the system clock will recognize all leap years within that range.
  311.  
  312. 16: Depending on the results of the previous tests 2000 check may ask to
  313.     install a BIOS patch and re-test the computer. If so the previous
  314.     fifteen steps are repeated with the patch installed.
  315.  
  316. 17: Update reports and restore all times and dates to their correct values. 
  317.  
  318.                              ********************
  319.  
  320.  
  321.                                      END.
  322.