[Coco] Moving ROM segments to other locations
Arthur Flexser
flexser at fiu.edu
Sun Apr 25 18:19:37 EDT 2004
On Sun, 25 Apr 2004, Robert Gault wrote:
> Arthur Flexser wrote:
> > In response to some questions that arose in an off-list discussion
> > involving Boisy and others, here's what happens as a result of moving ROM
> > segments around, according to some old notes I dug up, where all MMU pokes
> > are done in ROM mode:
> >
> > MMU location Value Segment moved Destination
> >
> > $FFA0 $3C or $3D I0 ($8000 Extend. Bas.) $0000
> > $3E or $3F E0 ($C000 External ROM)
> >
> > $FFA1 $3C or $3D I1 ($A000 Color Bas.) $2000
> > $3E or $3F E1 ($E000 External ROM)
> >
> > $FFA2 $3C or $3D I2 ($C000 Int. Basic patcher) $4000
> > $3E or $3F E0 ($C000 External ROM)
> >
> > $FFA3 $3C or $3D I3 ($E000 Int. Basic patcher) $6000
> > $3E or $3F E1 ($E000 External ROM)
> >
> >
> > I haven't actually verified the $FFA0 results, but inferred them from the
> > pattern of the others.
> >
> > Art
> >
> >
>
> Good work Art!
>
> I finally got my test code straightened out and can comfirm your
> results. On my system, it does not matter whether the MMU is poked in
> RAM or ROM mode. This pattern extends through all 16 MMU registers.
>
Are you sure about it not mattering whether you are in RAM or ROM mode?
I would think that in RAM mode, what would be moved is the contents of RAM
at the relevant address. Which in a number of cases would be the same
bytes, since a RAM copy exists in the case of Extended, Color, and Disk
Basic, so it might be hard to distinguish. But I think if you try the
ones involving the internal patcher, you'll see that you need to be in ROM
mode.
Art
More information about the Coco
mailing list