The Amiga and Y2K

by Adam Trionfo

(1999)

This article was originally written for a 1999 issue of MAUS Dropping, the newsletter of the New Mexico Amiga Users' Society (NewMAUS). It was to be included in OC&GS #11, which was published in 1999. Although published in the Amiga newsletter, the article was bumped from OC&GS, due to the lack of space.

It seems as though one can't look anywhere without seeing the end-of-the-century problem mentioned. The date change, best known as the Y2K problem (from December 31, 1999 to January 1, 2000), has many companies scrambling to make sure that the computers they use aren't going to cause any major failures. This issue was originally one that the general public was not aware of. Somewhere along the line, the media caught wind of the situation, and they're now going a long way toward putting fear into people's minds. Is it justified? Will it affect us? Will it affect our Amigas?


What is the problem?

The Y2K problem involves computer programs, especially those written for mainframe use, which save the date as a two-digit code. If a computer looks at the number 95, then it automatically see "1995." This was done to conserve both memory and storage. Saving two bytes might not seem like much, but when a program is dealing with a million records' worth of data, the bytes add up quickly. The savings that this made are said to have been substantial.

Contrary to popular belief, this problem didn't just get noticed recently. Programmers have always known about it. Many people use the excuse that the programmers wrote the programs poorly, but that isn't true. I have talked to programmers who wrote code in the 1960s, and who've said that the management at the time just didn't care. They figured that it was impossible for these programs to still be in use 30 years later. Well, here we are, thirty years later, and the companies are now sweating bullets.


What affects will it have?

How could this problem affect us? Some say that it won't have any affect. These people believe that all the programs will be fixed in time, or that the resulting problems won't have any lasting effect. On the other hand, there are groups of people who think that this is going to be the end of the world as we know it. These people think that there will be no electricity or water, banks will fail and civilization will collapse. I don't subscribe to either of these situations. I believe in the middle ground: There will be some problems, but the world will continue on with, at most, a small ripple in day-to-day life.

The media would have it that if your personal computer isn't Y2K-compliant, it will fail to operate altogether on January 1, 2000. This idea stems from the fact that some computers will not boot if the current date is earlier than a certain operating-system date. This is not a fabrication, though it might sound like one. I have read that some early Macintosh computers will have this problem. I'm sure that it isn't limited to the Mac, but it will certainly not affect your Amiga computer. If you wake up on January 1, all dreary-eyed after a long night out celebrating the new millennium, expecting no problems when you turn on your Amiga to write a letter to dear old Grandma, you'll have no problems. There will be no date-related boot problems.


Y2K and the Amiga

Will our Amiga computers ever be affected by this problem? Depending on which version of the AmigaOS you are running, the answer could be "Yes." Amiga, Inc. set up a web page to comply with the Information and Readiness Disclosure Act of 1998, a U.S. statute enacted on October 19, 1998. I will summarize Amiga Inc's article below. To read the complete document, visit Amiga, Inc. online at:

      http://www.amiga.com/developers/092098-y2k.shtml
      http://people.sugarlabs.org/bernie/articles/MC/092098-y2k.shtml

How the Amiga views time

In a similar fashion to how Unix sets the correct time (but not the way any human would), AmigaOS measures time in the number of seconds that have elapsed since January 1, 1978 (known as the "epoch"). The Amiga did not have a way for the programmer to convert the number of seconds passed since the epoch until AmigaOS 2.0 was introduced. Thus, older software that was created with a less-than-perfect conversion process may not function correctly. It is important to note that this is not the fault of AmigaOS.

If there's no battery-backed clock in your Amiga, and you don't enter the current time upon system start-up, then AmigaOS gets the time from the most recent file on your boot volume. This obviously does not lead to an accurate clock; and if there's no file available for reference, the default time is January 1, 1978.


Setting the time on the Amiga

When the time is set from AmigaDOS, it is entered in a two-digit format. This might lead you to believe that 00 means 1900, but it doesn't! This is because the Amiga uses the following rules in all versions of AmigaDOS, and Versions 1.1 through 1.3 of the Workbench GUI:

  1. If the year number is greater than or equal to 78, the year is 1900 plus the given number (i.e. numbers 78 through 99 indicate the years 1978 through 1999).
  2. If the year number is smaller than 78, the year is 2000 plus the given number (i.e. numbers 00 through 77 indicate the years 2000 through 2077).

This means that the Amiga has no truly equivalent Y2K problem to that of, say, an IBM clone. The year can be set from 1978-2077. The Workbench 2.0 clockeditor allows dates within the range of 1978-2113. Workbench 2.1 allows dates within 1991-2099.

The Amiga isn't totally immune

Of course, that just had to be too good to be true. From the above information, it would seem that we Amiga owners have nothing to worry about until 2077. But that isn't the case. There are four errors that might occur; two only affect certain releases of the OS.

  1. Negative Time - On January 19, 2046 at 3:14:08 AM, the AmigaOS system time will become negative. The OS will see this date as invalid. The effect? All date calculations will be inaccurate. Calculations on dates may be off by more than two years. This problem will affect all releases of AmigaOS. There is no fix for this problem.
  2. Roll-Over - On February 7, 2114 at 06:28:15 AM, the Amiga's time will roll over -- it will be reset to January 1, 1978. This problem wil affect all releases of AmigaOS. There is no fix for this problem, either.
  3. Battery Backup/Reset - AmigaOS, Versions 2.0 and above will reset their system clocks to January 1, 1978 upon each system reset after 2077. The time can be set manually after the system is running, but it will return again to 1978 when the system is reset. This is yet another problem without a fix.
  4. "Setclock" 1.2 and 1.3 - The "setclock" feature in AmigaOS, Versions 1.2 and 1.3 (and only these versions) contains a bug that will cause the computer to see 2000 as 1978. If you are still using one of these versions, a fix is available for download using FTP at ftp.amiga.com. The file to look for is "SetClock_v34.3.lha," which is contained in the "pub" directory.
Are you safe or not?

While AmigaOS will be pretty safe until 2046, that doesn't mean that all of the software you are using is compliant. It just means that the operating system is okay. It is important to remember that not all software uses the system date in the first place.

The only way to be sure that you are safe from problems is to go through the software that you use and try entering dates that might not be compliant. If an error occurs, then it is time to upgrade that software.

The people at Commodore did an admirable job of keeping us Amiga users relatively safe from the year-2000 bugs; but in the end, it is up to you to assess whether or not your Amiga is Y2K-compliant.