Ready for Y2K?
By now, almost everyone who uses a personal computer has heard of the Year 2000 (Y2K) problem. But what is it and how did it come about? Most importantly, what can you do about it?
The Y2K problem represents the potential failure of your computer due to its inability to recognize dates, specifically the changeover from 31 December 1999 to 1 January 2000. It can also occur on other dates, including 9-9-99 (sometimes used by programmers to indicate an "ignore" or "invalid" message).
This situation evolved from the early days of computing when hard drives were small and very expensive and, even earlier, when data were stored on cards. In order to conserve storage space, dates were recorded as only 2 digits. A phenomenally large percentage of computer operations rely upon date calculations and reducing to half the space required to store dates was a good idea, at that time. Early in the 1990s, when date calculations and projections started to go beyond this century, problems began to show up.
How might Y2K affect my PC?
Desktop and laptop computers can be subject to Y2K problems in 4 areas:
- the BIOS chips controlling the basic functions of the PC;
- the embedded code in both hardware and software connecting PCs in networks;
- the use of 2-digit date codes in software; and
- one's own personal computing habits (such as entering 2-digit dates in spreadsheets and databases even when 4-digit dates are possible).
Of course, all this assumes that power sources and telecom lines are working! While we cannot do much about these latter, everyone can take steps to ensure that their PCs will work properly after the new year.
Your computer's BIOS (Basic Input/Output System) chip functions as the intermediary between its hardware (motherboard, disk drives, various peripherals: printer, scanner, modem, etc.) and software (programs). The Operating System (OS) uses the BIOS to send and receive information between the motherboard and peripherals. [The OS — MS-DOS, Windows®9x, etc. — is the platform upon which your programs operate. It is itself not a program, just a vehicle.]
When you turn on (boot up) your computer, the BIOS retrieves the current time and date from the Real Time Clock (RTC). The BIOS sends this information to the OS, which in turn uses it to set its own software-based clock. When you turn off your system, the OS clock stops but the RTC, with its power supplied by a battery, continues to keep time. [Early PCs did not have an RTC: you had to set the OS clock's date and time every time you booted.]
Generally, the RTC records the last 2 digits of the year separately from the 2 digits indicating the century. While the year register will roll over from "99" to "00", the century register will change only if overwritten. However, some RTCs assume it is always the 20th century; some even lack century registers. On its own, the RTC is typically not capable of rolling over from the 20th to the 21st century. At midnight on the new year, the RTC will assume the year is 1900. But that's not the real problem.
The real problem occurs if the BIOS is not capable of recognizing that the century has changed and does not replace "19" with "20" in the century register of the date information it transmits to the OS. Some will, some won't. What may happen next depends upon which OS you use. Windows NT4 and Windows 98 will automatically correct any error; older systems will not: MS-DOS, Windows 3.x and even Windows 95 may assume a date of 1 or 4 January 1980!
Some simple testing will show if whether your machine is Y2K compliant. [See: BIOS Compliance Test, below.] If it is not, there are several options. If it has an RTC which always assumes this century or lacks century registers, there is no option but to upgrade or possibly use a so-called third-party fix. If your PC simply does not recognize the change of year, you can wait until the new year, change the RTC century field and reboot. [See: Y2K Fixes, below.]
Software
If your hardware does not recognize the correct date, your software cannot. Hardware problems must be corrected first.
Software compliance is much trickier to assure. Problems might include:
- simple 2-digit date field limits;
- field formatting difficulties;
- long calculations based on date values buried deeply in the software's code; and
- inconsistencies in the code.
You can safely assume that if a program will not let you enter and save 4-digit dates, it is obsolete and should be replaced. Even different versions of the same software may treat dates very differently. In this instance, it's wise to use the latest versions. Check with your software producer: all of them have sites on the Internet.
Although it may be very time consuming to change every date in your database files, all data which you will need for ongoing calculations and queries after 31 December 1999 must use 4-digit dates to be able to carry over into the new century.
Insurance, Liability & Other Legal Issues
If you run your own business, you may be liable to your clients for certain damages due to computer failures if you have not taken steps to ensure Y2K compliance. Check with your insurer and lawyer. Document everything you do as you check for and correct problems in your system(s). And be sure you have current backups of all important data before you start to change anything on your system.
WWW Sites to Help
In addition to Internet sites for your OS and important software, visit the sites offered by PC Magazine [http://www.pcmag.com] and Windows Magazine [http://www.winmag.com]. Both offer a great deal of help and very useful links.
Y2K BIOS Compliance Tests
There are several ways to check your BIOS for Y2K Compliance.
Before you do anything, always back up your important data!
Using a DOS Boot Disk
1. With the power off, insert a boot disk into your floppy disk drive
(check your OS documentation for details) and power up your system.
2. Type date and press "Enter".
3. Type 12-31-1999 and press "Enter"
(to change the date to 31 December 1999).
4. Type time and press "Enter".
5. Type 23:59 and press "Enter"
(to change the time to 11:59 pm).
6. Power down your system.
Wait at least 1 minute.
7. Reboot from the floppy disk.
8. Type date and press "Enter".
If the year does not read 2000, your system has a problem.
9. Use the date and time commands to reset the current date and time.
Using your BIOS Setup1. As your system boots, enter "BIOS Setup".
(See your PC's documentation for details.)
2. Change the date to 12-31-1999 (31 December 1999).
3. Change the time to 23:59 (11:59 pm).
4. Power down your system.
Wait at least 1 minute.
5. Power up and enter the "BIOS Setup" again.
If the year does not read 2000, your system has a problem.
6. Use the BIOS Setup to reset the current date and time. Note: Do not simply change the RTC's century field using the Date/Time icon in Windows 95. This may cause some software licences to expire.
Y2K Fixes
If your computer is relatively current, in most situations you can simply reset the date any time in the year 2000 using one of the following methods.
In some cases you may need a BIOS upgrade. Check with your dealer.
Always back up your important data before you do anything!
Using a DOS Boot Disk
1. With the power off, insert a boot disk into your floppy disk drive
(check your OS documentation for details) and power up your system.
2. Type date and press "Enter".
3. If the year reads 1980, change it to 2000.
4. Reboot from the floppy disk. The year should now read 2000.
Using your BIOS Setup1. As your system boots, enter "BIOS Setup".
(See your PC's documentation for details.)
2. If the year reads 1900, change it to 2000.
3. Reboot and re-enter "BIOS Setup". The year should now read 2000.