[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Digging Donkey Kong (for possible packing)
Replying further to myself:
On Tue, 3 Jan 2012, Steve Nickolas wrote:
When partly loaded, I dumped a postmortem. Looks like B600-BFFF is a normal
RWTS? Would it be hard to just gut this code and have it use a ProDOS-8 disk
file instead, say "DKONG.OVL", and read from that as if it were a disk image?
-uso.
On the crack, the first 10 sectors of the disk correspond to the top 10
pages of RAM (B600 and up). Calls into this space from outside seem to
always vector through B7B5, "Disable interrupts and call RWTS". The
"postmortem" is a memory image taken during the pause while the title
screen is displayed (with Mario jumping the barrel). In all 3 cases I
saw, AY was set to B7E8. There seem to be only these 3 cases outside of
the RWTS image itself anywhere in the disk image.
I would have to investigate somewhat deeper to determine how it figures
what sectors to load, and write a sort of "RWTS Emulator" to patch in,
which would become part of DKONG.SYSTEM. The remainder of the disk image
consisting of the part used by the non-RWTS portion would be a single
file, so all in all there would be 3 files on the disk - PRODOS,
DKONG.SYSTEM and DKONG.DATA. (There is plenty enough room on a 5.25" disk
for this.)
The two files DKONG.SYSTEM and DKONG.DATA could be placed on any type of
ProDOS-compatible device and run from anywhere.
I may also consider vectoring Ctrl-Reset into a block of code containing a
ProDOS BYE call, so that a two-finger salute would exit to whatever
program selector was active, e.g., GS/OS or whatall, and perhaps have the
run code detect the IIgs and clock it down to 1 MHz.
-uso.