Fighting the Dreaded Millennium Bug

(A Harrowing Tale)

My brother recently told me his computer’s BIOS had flunked a Y2K compatibility test, even though his computer is only 4 or 5 years old (about the same age as the one I’m writing this on).

I told him it was probably something minor, like the Y2K incompatibility in the BIOS that used to run the computer that I’m writing this on. The compatibility problem in that BIOS was that if the computer was turned on at the fateful midnight when the century rollover happened, and you were running the CMOS SETUP program (that you get into by pressing F8 during startup), then the on-screen date wouldn’t show the century as being updated on the screen (although it really would update the clock). This was a pretty minor bug, and I figure that anyone who celebrates New Year’s Eve by running CMOS SETUP probably won’t panic when the century doesn’t update on the screen.

(I updated that BIOS a while back, but it wasn't for a Y2K reason; it was to get a BIOS that would tolerate hard disks bigger than 2 GigaBytes.)

My brother’s machine is old enough, and the progress in computers has been impressive enough, that it might be a good idea for him to buy a new computer (with a decent monitor, Richard, without all those stripes across the screen!) anyway, but I’d hate for him to think he had to get one by the end of 1999. Particularly if the electricity is going to go off at midnight of December 31, 1999 anyway...

That brings me to my decision to confront the dreaded Millennium Bug anyway. It was a spur-of-the-moment thing. It was certainly related to the "news" magazine covers and the stories of the people who proudly proclaim their plans to go off into private compounds for a year or so with lots of guns while the rest of the people in the world deal with whatever problems come up. Some of these people even claim to be computer programmers! (I'm a computer programmer, and if I thought significantly more major crises than usual were likely, I'd certainly want to make myself available, instead of bugging out for parts unknown!) My favorite is the guy who crows about having an old-fashioned hand-cranked phone, so his phone will work when all the other phones are dead. How very useful! Now, news magazines, can we please have some articles about people who never tip at restaurants, and who never chip in for gifts at the office?

I’d already checked my VCR for Y2K compliance a few years ago, shortly after I bought it, when I still knew where the manual was. The VCR seemed perfectly happy with the years 2000 through 2099. Besides, how big a tragedy would it be if you couldn’t set your VCR to record a program in advance? Pundits claim that most people can’t set their VCR clocks. Maybe most people have more useful things to do than to tell their VCR what time it is.

Also, I have a digital watch that isn’t Y2K compliant. Well, it’s not Leap-Year compliant, and 2000 is a leap year. Or maybe I have it backwards, maybe it only works right in leap years, and it will set the date to February 29 later this year (as I write this, it's January of 1999 in most parts of the world, and the end-of-February digital-watch crisis has yet to garner much media attention). Should I post information on how I handled this crisis if my watch sets the date wrong at the end of February? My watch doesn’t know what year it is! It will handle the year 2000 the same way it handled 1996 (or 1997, for that matter).

So, apparently no Y2K problem in the VCR, the digital watch not very interesting. What else could have Y2K bugs? People keep talking about elevators and power plants not working, but I don’t have an elevator, and I’m keeping the power plant secret. ;<)

My four-year-old Honda seems even less promising than the digital watch for Millennial Armageddon. The car doesn’t even know what day it is, and the clock in the car doesn’t know whether it’s AM or PM, so there doesn’t seem to be much prospect for a Y2K bug there. The thing in the dashboard that turns red slowly for "service needed" is obviously mechanical, hooked to the odometer. The odometer is obviously just a bunch of mechanical wheels. The computer at the Honda dealer could, I suppose, think my Honda is 96 years old, but the computer already thinks there are three Hondas (all with the same license number) at this address (driven by Dave, Dale, and Joseph). It always thinks at least two of them are overdue for service. Would it matter if it thought they all needed 100 years of service? Maybe it would be better if it thought none of them needed service for another 100 years!

Then, suddenly, I realize that I have an even older computer than this one. I still have the computer (or most of the important parts of the computer) that I bought back in 1992 and haven’t gotten around to completely throwing out. This 1992-vintage computer would be a perfect opportunity to confront the Dreaded Millennium Bug and see how fearsome the bug is! If the 1992-vintage computer melts down, I’ll just clean the mess off the floor and put it in the garbage can.

Well, it probably isn’t really going to melt. But maybe it will "refuse to run" with the year set to 2000.

Maybe there will be no better choice than (the horror of it!) to run the computer with the clock forever set to December of 1999. If worst came to worst I could add time and date commands to the autoexec.bat file, so forever running the computer in December of 1999. That seems like a sure fall-back strategy. Will it be necessary?

So, clearing a few cob-webs away from the computer, I press the power switch. The fan and the disk whirr into action, or what passed for action back in 1992. Well, to be fair, this old computer (a 386SX with a Taiwanese motherboard) isn’t as I originally bought it back in 1992. It has been upgraded to 8MB of RAM (woo-hoo! as much as in today's typical video card!) instead of the original 4MB, and 390MB of hard disk instead of the original 80MB. And it has a 3.5" floppy disk in addition to the original floppy drive. It’s actually a fair amount faster than when I originally bought it.

Also, it has been upgraded to MSDOS version 6.20, Windows 3.1, Central Point Desktop 2.0, Borland Quattro Pro, Excel 4.0, and Word for Windows 2.0. It even has Visual Basic and a C++ compiler. (I'll bet none of this sofware was checked for Y2K compliance back then!) A classic configuration (if you ignore the C++ compiler)! And still with the original BIOS, because the BIOS doesn’t use any of this fancy-schmancy EEPROM or "flash" technology.

I’d hate to see how long it would take for MSDOS and Windows to come up if it didn’t have smartdrv caching disk accesses and cutting down on the number of disk reads! As it is, it merely takes a long, long time.

After a few minutes, I’m looking at the desktop, inside of Windows, at a screen cluttered with icons. It looks surprising old-fashioned, but everything is functional and easy to read. It’s at about at this point that I realize that no mouse is plugged in to the computer, so I power the computer off again, to attach a mouse.

Ten minutes later, I’m once again back in Windows 3.1, looking for the "clock" icon. Soon the "clock" applet is displaying the date and time, looking for all the world like a cheap digital clock. Hmmm, the time is about 3 hours and 25 minutes fast. It’s been a long time since the time has been set on this machine! But now we’ll set the time with a vengeance!

Hmmm again! Unlike the Windows 95 clock on the taskbar, the Windows 3.1 (or is this left over from Windows 3.0?) clock doesn’t provide a way to set the current time. No matter, I fire up an MSDOS window. I set the date to 12-31-99, and I set the time to 23:55:00. Then I exit the MSDOS window and watch the "clock" display. Sure enough, it now displays 11:55:15 PM and 12/31/99. It’s ticking away, 11:55:16 PM, 11:55:17 PM. Only a few minutes to doom!

I get a glass of wine to get more in the Millennial Mood as the dreaded Y2K rollover approaches. Finally, the time reads 11:59:59 PM, I step back a safe distance and involuntarily brace for the explosion. The display changes silently to 12:00:00 AM and 1/1/00. Still counting, 12:00:01 AM, 12:00:02 AM... The date reads 1/1/00. Does this mean 1900? Are we 100 years back in time?

I fire up another MSDOS window and do another DATE command. MSDOS says 01-01-2000. Does this mean my BIOS was Y2K compliant after all?

I exit MSDOS. I save a file and look at the time-stamp with File Manager. The date on the new file is 01/01/00. I go to View/Sort/by Date to see if File Manager will think that 01/01/00 is older than all the other files. File Manager shows the file dated 01/01/00 before all the other files. Aha! a bug! File manager puts 01/01/00 before all the other dates! No, wait, it’s not a bug! File Manager shows the oldest files last, the newest files first. File Manager is handling the 01/01/00 time-stamp correctly.

What about an application? That’s where the real problems are likely to be. I run Excel 4.0, and create a spreadsheet with the current date in the page heading. It displays as 1/1/00. Inconclusive! I put the date 1/1/00 into a cell. It just sits there, displaying 1/1/00. I use the TODAY() function in another spreadsheet cell. It also displays 1/1/00. I search through the online help, and come up with the YEAR() function, which extracts the year part of a date. I ask Excel to take YEAR() of the previous cells. In both cases, YEAR() is 2000. Apparently Excel 4.0 thinks it’s 2000, not 1900.

What next? I’m running out of ideas. I turn the computer off and turn it back on.

I run "clock" again. It displays a date of 1/4/80. 1/4/80? 80? 80!!! Finally, the dreaded Millennium Bug!   =:o   Oooh! Now we’re getting something "interesting!" It’s not quite as "interesting" as installing a LAN card or a new Web browser, but it’s a start. I fire up an MSDOS window, and it says the date is 01/04/80 also. Okay, so I guess the century update didn’t take.

Trying another tack, I exit to MSDOS, again set the date and time to 12/31/99, 23:55, and I turn the machine off for 10 minutes. After all, most people will probably have their computers turned off at midnight, anyway. This is probably the best test of what will happen on non-compliant computers.

I turn the computer back on again, and check the date again. Again, 1/4/80!!! Millennially bugged again! Does this mean it isn’t safe to turn off your computer, once the new Millennium begins? What is it that Leonard, my office-mate likes to ask "What’s a spud to do?" No, it's "What's a gump to do?". What would be the most obvious thing to try?

So far, I’ve only tried getting the year to roll over automatically into the next century, and it hasn’t worked real well. If your date is set wrong, what do you do? How do you handle the end-of-February crisis on a digital watch? Back in MSDOS, I try setting the date to 1-1-00. MSDOS says "invalid date." I try again with 1-1-2000. MSDOS accepts that. I turn the computer off and turn it on again. If this doesn’t work, I may have to try CMOS setup.

The machine powers up again. What day is it? It’s 1/1/00 again! Back to the future!!! The Millennium is upon us! The computer has remembered what century it is!!! Hoo haw!!!

In later days, I turn the computer back on again every once in a while, to check on the day and the century. The computer seems to be working fine, advancing the date steadily further into the next Millennium. Apparently, even with this vintage-1992 clone, the only problem that you would typically run into is that the date would reset to 1980, and you would have to go into MSDOS or Control Panel - Date/Time once and set the correct date.

I think I could pretty much guarantee my brother that installing a new computer and moving his data over to it will be a lot more trouble than setting the date correctly once.

When I describe my experiences with The Dreaded Millennium Bug to my office-mate, Leonard, Leonard asks if my old machine has a 5.25" floppy-disk drive. Leonard is interested in copying some old files from 5.25" to 3.5" floppies. Also, Leonard says his old computer is even older, so old that you have to set the date and time every time you start it up. I urge him to try some Y2K experiments. He say’s he’ll try it, if he can get the machine to power up. Apparently Leonard has to sort of jiggle the wires just right to get the machine to power up. Sounds like a likely candidate for updating the BIOS!

What about you, are you safe? Is your BIOS Y2K-compliant? Well, even so, don’t forget that you could be in a whole lot of trouble if you’ve been storing your data on floppy disks that aren’t Y2K-compliant. I happen to have some Y2K-compliant floppy disks here that I could sell you at a very reasonable price, considering your desperate need for them! On the other hand, I’m almost out of the Y2K-compliant paper. You aren’t going to print out all your financial records onto non-Y2K-compliant paper are you? What a gump!


to Home page

If you'd like to comment on anything in these pages, or tell me about your own experiences, please drop a line to: Kinkade.Dave@prodigy.net

J. D. Kinkade
Last Revised: 1999-February

The Author does not believe that dates around 2000-01-01 will be free of computer problems. Au contraire, the author believes that, as usual, there will be plenty of problems. The Author knows of many date-related problems in the past, including a Y2K-related bug in 1972 (exactly 9999 days before the Y2K). The author suggests not being a gump.

More helpfully, the author suggests that will be easier to set your clock manually to the year 2000 than it will be to upgrade your BIOS to make sure the clock rolls over automatically.

To set your clock manually, first try Control Panel (Windows 3.x) or Settings, Control Panel (Windows 95 or 98) and look for Date/Time or some similar item.   If that doesn't work, exit to DOS and try the DATE command. Shut down and restart the computer to see if the date change has taken.