[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Clock Patch
On Saturday, March 9, 2013 9:23:20 PM UTC-6, Howard Poe wrote:
> On Saturday, March 9, 2013 7:16:27 PM UTC-8, Hugh Hood wrote:
>
> > Robert,
>
> >
>
> >
>
> >
>
> > Like the other guys here, I'm just throwing out possibilities hoping one
>
> >
>
> > hits the target.
>
> >
>
> >
>
> >
>
> > Here's mine:
>
> >
>
> >
>
> >
>
> > You mentioned this:
>
> >
>
> >
>
> >
>
> > > When I crated my IIe (2.0.3) I did a great job.
>
> >
>
> >
>
> >
>
> >
>
> >
>
> > The patch program you referenced, though,
>
> >
>
> >
>
> >
>
> > > http://www.techtalkz.com/apple/435946-prodos-patch.html
>
> >
>
> >
>
> >
>
> > has version checks for only ProDOS 1.9 and ProDOS 2.0.
>
> >
>
> >
>
> >
>
> > Is there a chance the program is aborting not due to the Volume name issue,
>
> >
>
> > but instead because it is detecting ProDOS 2.0.3 on your hard drive?
>
> >
>
> >
>
> >
>
> > If so, I would use instead the patch program from the last official ProDOS 8
>
> >
>
> > system disk. It will patch the date table in ProDOS 8 2.0.3.
>
> >
>
> >
>
> >
>
> >
>
> >
>
> >
>
> >
>
> >
>
> >
>
> > Hugh Hood
>
>
>
> It patched ProDOS 8 2.0.3 on my //e just fine with the linked program, using the slot identifier to ID the ProDOS to be patched. I type S71, as it filled in the , and D automatically.
>
>
>
> Note: When it successfully patches, it seems to just return to the prompt asking for the ProDOS location. I confirmed that it did patch ProDOS and the date is now correct, showing 2013 instead of 1996.
I found the detection routines to be insufficient, especially if you're using Prodos 1.9, which it did not work for me. Here is a description of how Jace patches the current year.
The prodos.sys is scanned for the relocatable thunderclock driver using this pattern: 00 1f 3b 5a 78 97 b5 d3 f2
Once the pattern is found, the patch address is calculated by the start of the match (where the 00 in the pattern was) and subtracting 26.
The patch address is then overwritten with the following:
LDA #YY (where YY is the current year as a non-BCD number)
NOP
NOP
So, e.g. A9 0C EA EA would be the patch for 2013 if you want to display "13" as the year.
This will bypass where it uses the lookup table at all and just uses a fixed year. It's not as elegant as the year lookup, but for what was needed in Jace it works very well and does not need version detection to work since the thunderclock driver never changed over the years (many thanks to those who provided source to help me figure that out!!!)
-B