The Zero17 is an EPROM cartridge, that I have found in my VIC-1020 Port Expansion Box. I had actually two of them, both with the Poker Game EPROMs, which I had programmed back in the day. I think, I also had an EPROM programmer, that was connected to it, but I don't exactly recall that anymore. At least, I have also found a manual for it, which I have scanned and put online.
Since I wanted to know a bit more about the VIC-20 EPROM cartridges, I decided to reverse-engineer it. For this purpose, I have taken a picture of the assembled PCB (actually, I have sscanned it), and then I have disassembled it and scanned the board from both sides.
zero17 EPROM Cartridge (assembled)
zero17 EPROM Cartridge (Scan of the component side)
zero17 EPROM Cartridge (Scan of the solder side)
After some picture processing, I could overlay both, the top and the bottom side in GIMP, which helped me to follow the traces and draw the schematics in Eagle.
Overlay of the components side (red) and the solder side (blue) in the GIMP
Most of the reverse engineering was easy going, since the data bus and the lower address bits will just be connected to both EPROMs. The data bus is buffered with a 74LS245 bidirectional driver, which might not be required, at least not for the use as an EPROM cartridge, since the ROMs in other VIC-20 cartridges are not buffered.
The VIC-20 Expansion port doews not contain all address bits (just A0..A13), A14 and A15 are missing, but the VIC-20 offers already some address decoding/chip selects: the /BLK1, /BLK2, /BLK3 and /BLK5 signals, which address an 8k memory slot. The EPROMs supported by the zero17 are the 2716 and the 2732, which are 2k and 4k EPROMs. Covering a continuos (memory) address space, some further address decoding is required. Also supporting two types of EPROMs requires configuration jumpers. Those exist as preconfigured jumper pads on the PCB. This is the actually interesting part of the reverse engineering.
The retrieved schematic looks like this:
(Faulty) Zero17 schematics (click for pdf format)
This is not exactly the same like the original baord, because I have added a 100n bypass capacitor to every IC, which were not contained in the scanned PCB. The layout, that I have made is also not resembling the original layout.
Board layout of the zero17 (Eagle)
After testing the zero17 board, I will release the complete project on my Github. Rev. 0 does not work. The project will be revised.