Another redesign time then. While I was almost sure that Gerrit (obviously) would be able to come up with a logic solution that would require not more than two typical logic ICs, it still seemed to me like a perfect moment to raise the bar a notch. Instead of finding what set of logic ICs I could use/abuse, I elected to put all the required logic into a small SPLD. The smallest with enough capacity and pin count I had at hand happened to be GAL16V8. While most IC vendors no longer produce SPLDs, chips from for example Lattice are still relatively easy to obtain as NOS. Even better option (due to lower power requirement) and a notable exception among the manufacturers is the venerable Atmel... erm... not so venerable Microchip now, which has a range of 5V SPLDs, including ATF16V8 still in their products line as of the time of writing.
The good thing with SPLD approach is that one small chip, with less pins than any potential set of standard logic ICs, gave me all the logic I needed. Even better is that with simple reprogramming of the said SPLD chip you can get different combinations of selectable ROM content on the same adapter. I implemented the following configurations:
but other configurations are also possible.
The slightly less good thing is that you need an appropriate programming device for the GAL type of logic devices and your do-it-all EPROM programmer, the one you programmed all the chips so far, just can happen not to be up to snuff. This is especially true if you choose Atmel to be your PLD vendor. In the links section below you can find link to a page, author of which claims to have successfully programmed Atmel's ATF GAL compatible ICs
- epromel_512_wide_gerbers_rev1b.zip - GERBER files - C64 wide boards and SX-64
- romel512_6k2c1b.jed - JEDEC file for programming the SPLD chip
- conditioning.jed - JEDEC file for "contidioning" new Atmel chips (program twice, then erase)
- Easy to build GAL Programming device (including Atmel's - haven't tested it myself)