[Coco] GIME Question
Robert Gault
robert.gault at worldnet.att.net
Sun Jun 10 23:53:06 EDT 2007
Darren A. wrote:
> The SAM in the CoCo 1/2 maps addresses $FFF0 - $FFFF (interrupt/reset
> vectors) to $BFF0 - $BFFF (End of Color Basic ROM). Does the GIME not
> mimic this behavior? On a CoCo 3, PEEKing at &HFFF0 returns a different
> value than a PEEK at &HBFF0.
>
> I wanted to burn an EPROM with a new address for the 6309 illegal
> instruction vector, but my initial tests under MESS didn't work when I
> only changed the address at $BFF0.
>
> Does anyone know of a simpler way to change the COCO 3 ROM without
> having to completely desolder the original? I'm kind of afraid to
> undertake such a project. The CoCo 1's socketed boards are so much
> easier to tinker with.
>
> Darren
>
> _________________________________________________________________
The data at $BFF0 is not mapped to $FFF0 with a Coco3. If you want to
install a 6309 trap vector, you would need to store an address at $FFF0
yourself but that may not be possible. So the obvious alternative is to
use as the address the word value already at $FFF0. On my system that is
$0000.
The address $0000 is used by Basic so it can't be used as part of a 6309
error trap. However, any ml program you write can place code there to
vector to the location of your actual trap code. Basic will restore
itself when you exit your code.
One of my programs installs a 6309 trap, as follows:
org $0
jmp trap
The actual code for the trap routine resides at address 'trap'.
More information about the Coco
mailing list