[Coco] How does the cartridge port work, anyway?

Darren A mechacoco at gmail.com
Thu Feb 21 19:11:48 EST 2013

On Thu, Feb 21, 2013 at 4:19 PM, John W. Linville  wrote:
> On Thu, Feb 21, 2013 at 05:06:26PM -0600, Allen Huffman wrote:
>> On Feb 15, 2013, at 4:05 AM, Phill Harvey-Smith wrote:
>> > The other way that this can happen of course is if the cartridge has it's own address decoding and holds the "device select disable" line low it can pretty much override the internal memory decoding.
>> >
>> > This could for example be used to map an external ROM / RAM into the
>> > area that the basic roms normally occupy.
>> How big of an area could a cartridge map in this way? Did anything do that?
> Such a cartridge could cover all 64K, or beyond if it had its own
> bank swapping hardware.

The "device disable pin" (SLENB*) will only disable those devices
selected through the internal 74LS138 decoder.  In the CoCo 1/2 this
includes the Read Enable signal for the RAM addresses.  With the CoCo
3, you cannot use this pin to override selection of RAM.

Also on the CoCo 3, you cannot override addresses from FF80 to FFDF.
The GIME always activates its data outputs when the CPU reads from
this area, even for addresses associated with write-only registers.


More information about the Coco mailing list