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

Phill Harvey-Smith afra at ramoth.org.uk
Thu Feb 21 19:28:14 EST 2013


On 21/02/2013 23:06, Allen Huffman wrote:
> On Feb 15, 2013, at 4:05 AM, Phill Harvey-Smith <afra at ramoth.org.uk>
> 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?

Theoretically you could remap the whole 64K about the only things I 
think you may have problems with are the SAM / GIME address space may 
always be active.

I guess with a large bank of RAM and suitable circuitry it should be 
possible to have bank switched RAM in there and access it similar to the 
way OS/9 accesses RAM on the CoCo3, you'd of course have to switch back 
to main RAM to write to the screen, but that should be doable with the 
correct drivers. Especially if you had one of the task registers 
dedicated to system / VDG.

Well my pre-production prototype DragonMMC cards do that, they have a 
32K SRAM onboard. I mirror the system roms into this and then patch them 
so that cassette (and later disk) commands access the SD/MMC card 
instead of tape.

Means you can have a cas file on the card and load it in 2-5 seconds 
instead of 2-5 minutes :) Also means you can softload cartridge images 
from the MMC into the ram too.

The other advantage with doing this is that you can have RAM on a Dragon 
or CoCo 1/2 that will run at 1.7MHz

Cheers.

Phill.


-- 
Phill Harvey-Smith, Programmer, Hardware hacker, and general eccentric !

"You can twist perceptions, but reality won't budge" -- Rush.



More information about the Coco mailing list