Well 1 Jan 2000 came and we are all still here. Whether it was all a huge waste of money or a wise precaution I will leave to your individual experiences and natural state of pessimism / optimism. Since 1 Jan, as people change their web sites Y2K pages are disappearing fast, rather than try to track them, I have decided to leave the contents of this page as it was on that fateful day - if you find any links broken please contact the specific supplier directly.
Companies that no longer exist or for which we no longer act have
These are the things a system needs to be able to handle in order to be described as fully millennium compliant.
- Millennium roll over occurs without malfunction
- Date changes to 2000 successful
- 2000 is registered as a leap year (it should)
- 2001 is not registered as a leap year
- 2004 is registered as a leap year
- Correct roll over for 9/9/99 occurs without malfunction
- The first two century digits are use so no confusion can occur
- If there is no battery back up, will the clock survive power off
- Do all displays and printouts successfully show year >1999
There are a number of locations where the Y2K bug can hide
- The application
- A potential host PC
- A potential target system
- The tools used to generate the code for 2 & 3.
Readers are advised to study the design of their application carefully and to perform Y2K compliance tests at this level as by doing so it covers all the underlying code used.COMSOL's consultancy services are available to assist if required and we have a wide range of experience and tools to assist in finding these problems.
A host PC
The original PC XT design did not have provisions for a hardware Real Time Clock. The user had to enter the time and date when the system was turned on. The time and date were stored in the processor memory space where they were updated by the processor based on a periodic interrupt. This software clock eventually became known as the DOS clock. The DOS clock uses the number of days since January 1, 1980 as the basis for calculating the current date. Having the DOS date in a binary form that increments once per day allows the DOS clock to flawlessly transition the year from 1999 to 2000, thus making the DOS clock year 2000-compliant.
When the IBM AT was introduced, its system definition included a hardware Real Time Clock. The hardware clock architecture contains only a 2-digit year counter and no century counter. An NV RAM location was designated to store the century.
The hardware clock in the AT is accessed only during the boot process. The date of the month, month, year counter and century NV RAM location are combined and translated into days since January 1, 1980. The translated value is then loaded into the DOS clock and the hardware clock is never accessed again.
When serious testing for year 2000 compliance began, the major problem found on the original AT BIOS occurred when booting the system after the transition to 2000. The system date was set to January 4, 1980. The reason? The year counter in the Real Time Clock transitions from a count of 99 to 00, but the century location in NV RAM did not change from the value entered by the user during setup. When the system was powered up after the transition to 2000 the BIOS read the year counter as 00 and the century location as 19. With the 4-digit year being 1900, the BIOS read this as an out-of-range date and set the date in the Real Time Clock and the DOS clock to January 4, 1980.
More modern clock hardware and BIOS code has overcome this problem. If your PC fails this test then a low cost board is available with BIOS extension that will make the PC compliant from www.lindy.com.
The majority of embedded systems are more concerned with a relative rather than absolute timescale (ie X must happen with in M msec of Y). However if your hardware does contain a
real-time clock such as those supplied by Dallas, Siemens, Harris, National Semiconductors, OKI, Hitachi, Philips or if there is a mechanism for setting, displaying or printing a date then you will need to perform a full analysis. Either way a few hours investing in a test run would be advised.
Dallas have a particularly helpful site http://www.dalsemi.com/Prod_info/Time_Keep/y2k.html
With the exception of real time executives, the majority of the tools COMSOL provides are used to create code or to control ICE/programmers. They are used in the development laboratory and their operation is not life or function critical. Should they print 1980 as the date of a compilation then the engineers concerned would be able to determine the correct date. See the supplier section for details of each supplier's Y2K statement.
COMSOL Products and Consulting Projects
All 16 bit polyFORTH and chipFORTH systems sold up to December 1995 potentially suffered from a year 2000 problem and any applications written using them, that access dates, will need modification. FORTH INC have written an excellent article showing how to identify and cure the problem - ftp://ftp.forth.com/pub/Y2K.pdf. Call COMSOL if you need advice on integrating this into your product.
fast ROM - contains no clock functionality and has no need to read, manipulate or modify dates so fastROM does not suffer from Y2K problems.
comROM - The comROM hardware contains no clock functionality and has no need to read, manipulate or modify dates so does not suffer from any Y2K problems.
MIMIC - If you have a copy of MIMIC that was released before January 1999 contact your OEM supplier as they have been issued with versions that are compliant and which contain their application specific variants.
All COMSOL distributed products currently being shipped have been purchased from their suppliers conditionally upon year 2000 compliance. For details of the Y2K status of older versions of products from our major suppliers please refer to their websites. If the supplier of your product is not shown below then please contact COMSOL directly.
COMSOL's Business and Continuity
Computer Solutions will not experience any disruption in ability to service our customers. Our accounting system (TAS-Books) has been warranted as Year 2000 compliant. Our operating systems and major applications are Microsoft standard and will be updated as necessary to ensure Y2K compliance. Our PC's have all been tested for Y2K compliance. Major administrative suppliers have been contacted to ensure continuity of service.