[Coco] [Color Computer] Hardware specifics regarding GIME , RAM and ROM
Mike Pepe
lamune at doki-doki.net
Thu Apr 30 01:49:29 EDT 2009
> So $8000 - $FEFF will ALWAYS see the ROMs at those addresses unless un
$FFDF
> is written to,
> at which point $8000-$FDFF will be logical RAM? What about $FE00-FEFF?
Yes, but I believe that $FFDE/$FFDF only work when the MMU is disabled-
I'd have to recheck or someone can yell at me that I'm wrong.
$FE00-$FEFF will be constant RAM if that option is enabled
> OK. I understand. but I what I think may be a correction to the
statement
> comes from the Unravelled Series I re-presented some years back: "The
GIME
> chip (and the
> SAM chip in the older CoCos) redirect the CPU's address request from
the
> $FFF0-
> $FFFF range to $BFF0-$BFFF so that the interrupt vectors can be stored
in
> the Basic
> ROM." on page 29. Is this correct still?
Not exactly. There is no redirection, it just enables the ROM as if a
read in the $A000-$BFFF were occurring. In effect the ROM vectors are
just a mirror of the ROM.
In the CoCo 3, I assume that happens at reset when the thing is running
in CoCo2 mode. Once things are set up, the vectors except reset point to
RAM in $FExx which has jump instructions to the code to handle the event
in the patched ROM which now lives in RAM.
I would guess that at boot time that the vectors are probably also a
mirror of $BFF0-F
This is pretty esoteric stuff, makes me want to go downstairs and fire
the thing up to really see what its doing.
More information about the Coco
mailing list