Re: PET memory maps

From: Ethan Dicks (
Date: 2002-01-17 18:01:21

--- Marko_Mäkelä <> wrote:
> On Mon, 14 Jan 2002, Ethan Dicks wrote:
> > I haven't, but now I will.  The problem comes in that the Infocom engine
> > takes over the machine and roaches the zero page (in fact, everything below
> > the start of BASIC).  Something called by $FFD2 is scribbling on a location
> > that I have assigned and I don't know what it is.
> Try setting a write watchpoint in VICE.

When I started developing this (original disassembly was on my C-64, the
final development was on an older version of VICE on a SPARCstation, around
1998).  I wanted watchpoints and I don't think I had them.

If VICE can give me a watchpoint that will trigger if a zero-page location
is written to from a PC address above, say, $8000, then that's _exactly_
what I need.  I can feed in my zero-page variables as used by the program
and when someone in ROM steps on something I'm trying to use - BINGO!  If
I can't tie the PC address at the time of the write to the watch-point, it'll
be slower to debug, but I can still do it.

> BTW, I just released cbmlink 0.9.1 and c2n 1.0.2, as both source code and
> as 32-bit Windows executables, which have been tested on versions 98 and
> 2000.  The next version will probably support 6551 based serial
> connections on the CBM-II series and plus/4, and perhaps also on the
> C64/C128 equipped with a cartridge.

Cool.  I can't wait to buy/build one.  Might even want two!

> Have you considered implementing your own "print to screen" routine?

Yes, but I also need to be able to "print to device" - ZIP runs its own
paged-demand memory swapping scheme to pull in game data as it's needed
into the memory from $2000 to top of RAM - there's three pools of memory
used by ZIP - local storage, dirty storage (that gets saved when you write
out a saved game) and pure storage - the game file itself.  Sectors get
swapped in and out as needed by the ZIP executive.  I have to be able to
perform IEEE operations, thus the need to see what's stepping on me.

I just need to know where to get out of the way to, and I'm all set.

When I'm done, I should be able to issue a patch to a genuine C-64
disk to modify it for use with the PET.

> If you bypass the ROM routines, the same binary could run on all ROM
> versions. 


> Of course, you'd need to detect the hardware, and you'd have to
> swap the zero page to somewhere else while doing disk I/O. 

Ow... I think I'd rather find a way to co-exist.  The game does constant
disk I/O.


Visit "The Seventh Continent"

Do You Yahoo!?
Send FREE video emails in Yahoo! Mail!

       Message was sent through the cbm-hackers mailing list

Archive generated by hypermail 2.1.1.