Fujiyama wrote:Are there other Y2K fixes I could use that actually work?
Fujiyama wrote:Yes, definitely interested!
Code: Select all
Y2K-patch for TOS 1.04, 1.06, 1.62 and 2.06
Jo Even Skarstein 2016 ->
GEMDOS and XBIOS epoch is 1980. The year-part in all
dates is an offset from this.
XBIOS use the keyboard clock to store date/time between
reboots. This clock only handles two digit years, and
TOS store the two least significant digits of the YEAR
in this clock. Not the offset, but the actual year.
Since the ST was made in 84/85, they simply added 80
to the GEMDOS year before passing it to the keyboard.
This works fine until year 2000. 00+80 is not 2000...
Likewise when reading from the keyboard, GEMDOS year is
keyboard year - 80. Does not work well after 2000.
This fix simply removes the 80 offset, so the two least
significant digits of the GEMDOS year is stored in the
keyboard. This is good until 2080.
Please note that this problem does not affect machines
with an RTC, i.e. the Mega ST, Mega STE and Stacy. Applying
this fix won't hurt, but won't be of any use on either of
Fujiyama wrote:For TOS 2.06, have you added any other patches as well? Now that my MonSTer is working I'm ready to load TOS into its flash memory.
Fujiyama wrote:As my clock battery has died and I haven't bought a new (expensive) replacement battery (and also haven't decided if I should replace the clock altogether with a button-cell based RTC module to connect to my MonSTer board, or get some other, cheaper type 3.6V battery replacement) I put a program called DATE.PRG in the AUTO folder for now (sorry, can't remember where I downloaded it from) which is to be renamed by adding the year (i.e. DATE2017.PRG), so whenever I boot/reboot I'm asked to enter the current time and date. A nice and quick way to set the time and date if you don't have a battery-backed clock or like me, the battery is dead. But obviously, without a working Y2K fix it doesn't help for anything but the time of day.
joska wrote:Fujiyama wrote:Yes, definitely interested!
See attached archive. It contains two programs. y2ktest.prg sets both XBIOS and GEMDOS time to 1/1-2016 and then reads it back. Run this program without *any* y2k-related patches in your auto-folder. If both XBIOS and GEMDOS time reads back 1/1-2016, then your machine does not have the y2k-problem. If it reads back the wrong year, then run your TOS image through y2kpatch.ttp and flash the resulting "patched.img". Reboot to the patched TOS and run y2ktest.prg again.
joska wrote:Fujiyama wrote:For TOS 2.06, have you added any other patches as well? Now that my MonSTer is working I'm ready to load TOS into its flash memory.
I have an unreleased version of the flash-tool that can do some simple TOS patches when flashing TOS. The Y2K-fix is one of them. It can also replace the boot-logo in 2.06 with a user-defined image (PI3 file).