|
Adapters and parts for the Commodore PET |
|
| Home |
6540 to 2716 ROM Adapters
Pictures of Adapter Serial Number 1:
The adapter has the following features. It:
The one disadvantage of these adapters is that with a 2716 inserted they are about 0.4" taller than the original 6540 chip and thus may not be mechanically compatible with all 3rd party expansion boards. The height can be reduced slightly by soldering the 2716 directly into the adapter, but this prevents reprogramming. Please make the appropriate measurements before ordering.
The board layout can be downloaded here. The file can be read by ExpressPCB which is available here. Note that this layout contains both the ROM adapters and the PET video mixers. Because the number of holes allowed by ExpressPCB for their MiniBoard service is limited, I could not put more than two of the adapters on one board, so I decided to use the extra space for the mixers. A preview picture of the board is below.
How the Adapters Work1) The Pinouts are very different. The data and address lines are mapped to completely different pins on the two chips. In fact, the 2716 in in a 24 pin package and the 6540 is in a 28 pin package. 2) The 6540 has five chip select lines. CS3, CS4, and CS5 are active low meaning that they must be held low (+0v) for the chip to be in (its data lines to be low impedance). CS1 and CS2 are active high, meaning that they are must be high (+5v) for the chip to be on. The 2716 has only one chip select line and it is active low. However, the 2716 also has a standby low power mode which is turned on by bringing pin 18 (EP) high. Putting the chip into and out of this mode takes no more time than deselecting it and selecting it with the chip select line, so the EP line can be used exactly like a second active low chip select. 3) The MOS 6540 requires a clock signal and the 2716 does not. This is not really a problem, at least not in the pet, because the board does not rely on the chip only changing its data lines when it sees a clock pulse. Implementing the Chip Select LinesCorrecting the pinout problem simply means connecting the wires up in the right way. This is trivial in principle but it took some work to make it all fit on the tiny board. The chip select lines are harder. In order to emulate the five chip select lines with only two the following logic needed to be implemented:
2716_CS = 6540_CS3 OR 6540_CS4 OR 6540_CS5
I could not find a way to implement this logic using only a single 74 series chip, and I did not really have room on the board for one anyway. I was going to use Fairchild TinyLogic instead, but I knew that surface mount components would look way out of place in a 1977 computer. I also don't like soldering surface mount. In the end I implemented it using discrete components, specifically, five 1n914 didoes, four 10k resistors and a single 2n2222 transistor (for the NOT gate.) This page is a great reference on how to build logic gates using discrete components. Mechanical ConsiderationsThe ROM chips in a Commodore pet are spaced so close together that the only way to fit more than one replacement side-by-side is to have the 2716 sitting exactly above the 6540 socket. Because the pinouts are incompatible this meant that I had to put two board on top of each other connected by a header. The upper board has the socket for the 2716 on it and the lower socket has the pins on it which plug into the 6540 socket. The header which connects the sockets carries the signals between them and spaces the two boards far enough apart that the resistors and diodes can fit between them, protected and out of sight. Because the 2716 has only 24 pins instead of 28, there is room on the end of the top board for the transistor. Putting the pins on the lower board was somewhat of a challenge as well. Dip pins are rectangular in shape and are, at their widest, 0.018"-0.020" across. Header pins are on the order of 0.030" and so will not fit into a DIP socket. MilMax sells header with 0.018" pins but they are exorbitantly expensive at $10 per header and add ~0.1" of wasted height to the adapter. After much consideration, I made the pins using 24 gauge bus bar wire. After placing the lower board over an actual Commodore PET ROM socket I pushed a strand of bis bar wire into each hole and then cut it off flush with a pair of quality Edsyn wire cutters. I then soldered each wire in. See the pictures and board layout above to see how it all tuned out. The end result is an adapter which has no larger a footprint than an original 6540, but which is somewhat taller.Here are the documents I used in the original design: Schematic of the adapter (.png format) Schematic of the adapter (.sch format readable by ExpressSCH/ExpressPCB - See above) 2716 Datasheet 6540 Pinout The updated schematic is below - See here for details Schematic of the updated adapter (.png format) Schematic of the updated adapter (.sch format) |
|
About me:
My name is Matthew D'Asaro and I am a student of electrical engineering at the University of Washington. I have been interested in vintage computers ever since I was in grade school. I designed these adapters to replace ROM chips which I pulled out of an old commodore pet motherboard when I was about six years old and then lost (or ate, I really don't remember.) Besides computers, I restore antique radios and televisions. I am 7jp4-guy on antiqueradios.com and my callsign is KE7SJE. This site and all its content is copyright 2012 Matthew D'Asaro. You may reproduce it for non-commercial purposes if you credit me as the author. |
|