jblang / TMS9918A

TMS9918A video card for RC2014
https://hackaday.io/project/159057-game-boards-for-rc2014
128 stars 22 forks source link

Modifying the Pageable ROM to work with ColecoVision addressing #12

Open ezod opened 1 year ago

ezod commented 1 year ago

More a solution than an issue, but perhaps this could be added to the documentation somewhere. I have verified this modification works with some limited testing.

The standard RC2014 Pageable ROM module canonically uses ports $30 and $38, but due to don't-cares all of $3x and $Bx are assigned to it. Unfortunately, the $Bx range conflicts with the ColecoVision ports for the TMS9918A module.

A simple modification to the Pageable ROM module allows the ColecoVision ports to be used. To reduce the address range to just $3x, the enable pin on the decoder connected to A6 needs to be replaced with A6 OR A7.

In hardware, a 74HCT32 (quad OR), with all but pins 1, 2, 3, 7, and 14 removed, is piggy-backed on U1, with the power pins (7 and 14) soldered down. Pins 1, 2, and 3 are straightened horizontally for air soldering. Pins 1 and 2 are connected to A7 and A6 on the RC2014 bus, respectively. Pin 4 of U2 is bent out of the socket, and connected to pin 3 of the new 74HCT32.

IMG_20221011_194149

ezod commented 1 year ago

Confirmed today that this allows me to use @jblang's ColecoVision CP/M loader. (Still have no color video per #13, audio sounds like trash for as-yet unknown reasons, and I have no way to control the games yet, but at least we're past the address conflict!)