About a month ago, HP 3000 managers, vendors and developers shared techniques on getting their MPE/iX systems a longer lease on life.That upcoming CALENDAR issue hits 3000s at midnight, Dec. 31 2027. The barrier of 2028 and beyond has been cleared. Now it's time to clear up some questions about the fear, uncertainty and doubt surrounding the lifespan of the 3000's OS.
Will my HP 3000 stop working on January 1, 2028?
The hardware itself may be worn out by then, but nothing in the operating system will keep PA-RISC systems — emulated or actual — from booting, running programs, or passing data and IO through networks and peripherals. MPE/iX will do everything it can do today, except report dates correctly to and from software and applications which rely on an older CALENDAR intrinsic.
Is this a problem with the hardware from HP? Will an emulated 3000 prevent this?
The CALENDAR problem is in the OS, not the hardware. The old intrinsic was only built to record accurate dates until then. The resolution will involve work within applications' use of intrinsics, among other software revisions. Replacing CALENDAR with HPCALENDAR is part of the solution. Stromasys Charon sites will have to deal with it too, because they are running faithful virtualizations of the PA-RISC hardware — and use MPE/iX.
If I don't change anything on my 3000, will the operating system know what day it is on January 1, 2028?
SHOWTIME will report that it's the year 1900. SHOWCLOCK will report the correct year.
Will all file information remain correct?
All file creation and file modification timestamps will be accurate, and files which are created will have correct timestamps, too.
So what kinds of software will be reporting the wrong date starting in 2028?
Software which still relies on CALENDAR for its date-keeping may show incorrect dates. This software can be applications as well as utilities and reporting software. Changes to source code for the programs which use CALENDAR, replacing it with HPCALENDAR, take care of the issues. If software uses internal logic for data calculations, it will continue to work correctly in 2028, so long as it doesn't rely on CALENDAR. The problem actually occurs if FMTCALENDAR is called to format the date. Unless that call is trapped, FMTCALENDAR will always produce a date between 1900 and 2027.
What about the compilers for the OS?
COBOL 85 uses the newer HPCALENDAR intrinsic. The older COBOL 66 uses the older CALENDAR.
What can I do if I don't have source code for my applications?
Vendors who continue to serve the MPE/iX market can change the call to CALENDAR into a call to HPCALENDAR. A support provider can assist a customer, with the cooperation of the source code holders, in using the newer HPCALENDAR. Alternatively, the call to FMTCALENDAR can be trapped at run time, and the replacement routine can re-map early 1900 years into years starting with 2028.
How about MPE/iX itself? Will that intrinsic ever be repaired? How do I get SHOWTIME running correctly?
Some portions of the OS will continue to rely on the old CALENDAR, which only has 16-bit range to use. Source code license holders—the eight companies licensed by HP to use MPE/iX source—may have an advantage in bringing some OS internals into line with site-specific patches. They are site-specific because HP doesn't permit a revised version of the OS to be recompiled and distributed. SHOWTIME is likely to remain incorrect, since it uses CALENDAR and FMTCALENDAR.
What about date-dependent work like job streaming?
Applications that can be revised to use HPCALENDAR will stream jobs on correct dates. Native job-streaming service in MPE/iX will work if a command uses a request such as "three days from now." In general, the more closely a piece of MPE/iX software relies on CALENDAR, the less likely it will be to deliver accurate dates starting in 2028.
My third-party software might keep track of the date to keep running. What can I do?
Source code revision will be the most direct solution in this case. Some support companies are considering a certification service for Year 2028 operations.