I did a quick layout of the buffer board and sent it off to Advanced Circuits in Colorado – they have a good ‘Bare-Bones’ service and quick delivery. I ordered the buffer chips as well. When everything arrived, I realized that one of the chips was the wrong package size (TSSOP instead of SSOP), so that delayed things as well. After getting the correct size chip, I finally built and installed the board. I was still having issues, and after disassembling and tracing the code, I had to make some changes to the design of the 8155/8255 CPLD replacement. Once I did that, it passed the WRAM test – sort of. It was still only reporting 1 WRAM page instead of 64. Better than nothing though.
Next task was getting the board to boot to the main menu. It wouldn’t get past the check for the VNC2 controller, so I had to program that as well. I purchased a FT232R USB-to-serial board off of eBay, and wired it up to the board. After three or four nights of futile attempts, I put the 232R board under the microscope and discovered that the silkscreen labels for the TXD and RXD (transmit and receive points) were backwards. After that, the VNC2 was successfully programmed and the board booted to the main screen.
At this point, everything works except for USB. The VNC2 is correctly identified but defaults to the wrong command format. I have to dig in to the source code and make some changes. The new floppy controller appears to work fine, and most importantly, the DSS-1 plays sounds. The multi-page WRAM issue turned out to be a bad cable.
And finally, it turns out the buffer board was unnecessary – I reconfigured the interface ports using a method in a Xilinx app note that Jim pointed out to me – and if the VNC2 changes work, the board will be ready. I won’t even have to do a second revision 🙂