Date : Wed, 20 Jul 2005 11:05:17 +0200
From : John Kortink <kortink@...>
Subject: Re: floppy discs
On 20 Jul 2005 01:23:56 +0100, Jonathan Graham Harston wrote:
>> Message-ID: <089ld11otfqujuudq6l0b1sr39q6d5m9uk@...>
>
>John Kortink <kortink@...> wrote:
>> >Why not make GoMMC respond to service call 13 and 14 and
>> >make it appear as a tape filing system image in ROM? No
>> >patching of the OS required.
>>
>> Because a lot of games have a habit of liberally
>> peppering their code with things like *TAPE, *FX140
>> and *FX143,12,3 and/or their OS_Byte equivalents.
>
>*TAPE issues OsByte 140. Trap OsByte and whenever OsByte 140 goes
>past, change it to OsByte 141 - *ROM
Yes, but there are game protections that put back
the entire standard vector set by copying it from
the OS ROM straight to the vector area.
There also might be code redirecting OS_Byte itself
for protection trickery, I can't remember but I
wouldn't rule it out.
So, again, better stick to an OS patch, where nobody
can know (except by checksumming the OS ROM !).
>> The way it all works now (because it already does,
>> see previous message) is (because the tape and ROM
>> filing system use largely the same code, with a few
>> switches here and there) that the OS is changed to
>> do the ROM FS byte-get service call 14 at four
>> strategic places, and GoMMC catches that. Works
>> a treat.
>
>That's a good way of doing it. Then, the data is still accessible
>to an un-patched OS by selecting the ROM filing system.
By fortunate coincidence, yes.
John Kortink
--
Email : kortink@...
Homepage : http://www.inter.nl.net/users/J.Kortink