[Coco] On John Linnville's Color Computer Game Master Cartridge Design

RETRO Innovations go4retro at go4retro.com
Wed Aug 2 14:23:12 EDT 2017


At CocoFEST, John and I discussed potential additional opportunities for 
the SN76489 sound IC within the Coco community. After recovering from 
the fest, I ordered a batch of the ICs and I sent out a PCB design to 
attach the unit to a Coco.  While the boards arrived many weeks back, I 
have been busy with other things and, as discussed on both the podcast 
and CocoTALK, I've been a bit unmotivated to finish the design.

Well, I decided I should at least get the unit working, so I would at 
least be knowledgeable about the IC and its capabilities.  The datasheet 
specifies a quite lengthy cycle time needed to store data into the unit, 
but I was undeterred.

And, after 3 nights working (fighting) with this IC, I think people 
should give more credit to John for his design.  He didn't just wire up 
this IC to the Coco expansion bus, he performed some magic to 
successfully map it into the Coco address range.

The SN76489 takes 32 4MHz cycles to successfully store a value in a 
register, which is 8uS, though that might be worst case, as I see 3uS 
typical.  In any event, this need to hold the data valid for so long 
makes a simple connection to the Coco bus more complex (essentially, 
unless one wants to HALT the CPU while the write completes, it appears 
one needs to store the data in a faster "buffer register" and then hold 
the bus signals to the IC until the IC signals the write is complete 
(there is a "READY" pin)).

I thought I'd point this out, since I originally did not have a full 
appreciation for John's accomplishment.  As it stands, my original PCB 
won't work, but I was able to verify correct operation by attaching the 
IC to a microcontroller and successfully pushing sound out of it that 
way (I know the chips are good).

Jim

-- 
RETRO Innovations, Contemporary Gear for Classic Systems
www.go4retro.com
store.go4retro.com



More information about the Coco mailing list