(Still) ways to turn back time to save apps
January 14, 2015
Editor's Note: Nine years ago this week we ran these suggestions on how to get abandoned software to keep running on HP 3000s. It's still good advice while a manager and company is homesteading, or keeping a 3000 alive until a migration is complete.
Some HP 3000s are reduced to a single application these days. But the one program that will never move off the platform, however vital it might be, could see its support disappear on a particular date — with no help available from the creators of the software.
A few utilities can help rescue such applications. These products were popular during the Y2K era, when systems needed their dates moved back and forth to test Year 2000 compatibility. Now that some HP 3000 programs are being orphaned, clock rollback utilities are getting a new mission.
A customer of SpeedEdit, the HP 3000 programmer's tool, had lost the ability to run the program at the start of 2006. Both Allegro Consultants' Stan Sieler and former NewsWire Inside COBOL columnist Shawn Gordon offer products to roll back the 3000's clock. These companies don't sanction using their software to dodge legitimate licensing limits. But if a software vendor has left your building, so to speak, then HourGlass/3000 or TimeWarp/3000 (both reviewed) are worth a try to get things running again.
When editing a file SpeedEdit creates a work file to hold the changes: it uses a structured name for the work file. According to the manual “ ... the first character of the [work] file name represents the year the [work] file was created, the letter A indicating 1980, B 1981 etc.” Therefore Z was 2005 and so there is no letter for 2006! SpeedEdit may be trying to use the next character in the ASCII table, which is probably non-numeric, resulting in an invalid MPE file name. A very neat way of making software expire. I suppose the authors didn’t think anyone would be using SpeedEdit in 2006!
Gordon replied with a suggestion to try his product, software that he's taking orders for direct these days:
While we don't sanction this for bypassing a programs legitimate timing out, it sounds like you've gotten in a bind with a product you paid for and the vendor is gone. Our TimeWarp product which was originally created to do Y2K virtual dates would likely allow you to keep working; you can get some information from www.smga3000.com/timewarp_detail.html about the product.
Sieler posted notice of an alternative solution from his company:
A date/time simulator may help, if you don’t mind the rest of SpeedEdit getting the wrong time. (E.g., run SpeedEdit with a date of, say, 1980... giving you another 25 years of bliss :)
HourGlass/3000 is still the most complete and most efficient date/time simulator tool. You could use it with a rule like:
@,@[email protected],@ speededt.pub.bbs @ delta -20 years
(Means: any job/session name, any user, any account, any logon group, program is speededt.pub.bbs, from any ldev, gets the current date/time minus 20 years)
Sieler went on to add a more obvious option if a programming editor stops running on the 3000: Use Robelle's Qedit. He also outlined another workaround for a program that wants a date which its creators didn't expect to need to serve:
Write a CALENDAR intercept intrinsic (trivial in SPLash!, Pascal, C) that returns a modified year, put it in XL (e.g., SPDEDTXL), and modify (via LINKEDIT) SpeedEdit to load with that XL. If SpeedEdit is a CM program, change the above to: (trivial in SPL), put in an SL that SpeedEdit will use (SL.pub.BBS or whatever), and mark SpeedEdit as LIB=P or LIB=G.