A990 TOD Clock problem Q: I have done some testing of the A990 Time of Day clock and it appears to have a problem rolling to the year 2000. Is this a real problem? A: A problem has been discovered in the A990 Processor Time-Of-Day (TOD) clock. At midnite on Dec 31, 1999, the TOD clock does not rollover to the year 2000 correctly. After midnite on Dec 31, 1999, the TOD will report: Aug Jan 18, 1902 33:22:28 am If the TOD clock is subsequently set to a valid date in the year 2000 then everything works normally. At least until the year 3000. So the simple workaround for this problem is to make sure the TOD clock is reset via the CLOCK program, using the system time, after the year 2000 rollover occurs. The impact of this problem should be minor. Since the system clock (TBG) is much more accurate than the TOD clock, it has always been recommended that the TOD clock be synched to the system time periodically. The only scenario where this TOD clock problem would cause concern is if: 1) The year 2000 rollover occurs, and 2) The TOD clock is not reset, and 3) The system is rebooted, and 4) The system time is set from the TOD clock on bootup. In this case, the CLOCK program will return the following error: Error -1 when setting the system time; returning that value in $return1. and the system time will revert to April 1, 1983. If you are running 6.2 or 6.21 RTE-A, you can schedule a CRON job to execute at 12:00:01 Jan 1 2000 to reset the TOD clock. This CRON job would simply run the CLOCK program as follows: CLOCK A9 set If you are using 6.1 or earlier, you can time schedule the following program nightly at 12:01 AM to reset the TOD from the system time. This is recommended, and would eliminate the problem. ftn7x,l,s program settod(3,99), c This program simply schedules "CLOCK" to set the A990 c Time-Of-Day clock from the system time. This program is c time scheduled to run every midnite to sync the two. c c The TBG is more accurate that the TOD, thus we reset the TOD c every night. c implicit integer (a-z) integer*2 error,param(5) c ERROR=FmpRunProgram('XQ,clock,a990,set',param,clock) if (error.ne.0) then write(1,*) ' Error scheduling CLOCK ','Error is ' ,error stop endif end Then time schedule SETTOD as follows: (This should be done from the welcome file at bootup) CI> AT 12:1:1:01 am 24 h settod SR 5003373456 has been submitted for this problem. A hardware fix is not anticipated, since the problem has an easy workaround.