Cables, Connectors and Controllers

We left off with our CPU board stripped of no-longer-needed chips. It dawns on me that I didn't play "one last game" before dismantling things. Too late for that I guess. Oh well, on to the task at hand. We need to make a few decisions, add a few connectors and rig up some cables and see if our "theory of operation" holds any water.

Quick review. We want to wire up some kind of new controller to this CPU board, leverage the Data Bus and the addressing lines and try to make something happen. First decision is where to patch into the data bus. Not too many choices here, it has to be the CPU socket U209. This already has a socket, so we can use a pin rail to connect and we know that everything of interest is designed to run data from this point. We just need to run 8 lines for D0-D7 from our new controller to pins 13 - 21 on the CPU socket.

Next up, we need to wire up our new controller to perform the function of the address decoder. We could have left the 74LS138 in place and run 3 lines from our controller to the board mimicking the selection values for the different sections. Well, clearly we didn't do this, or I wouldn't have pulled the chips off the circuit board. Instead I decided to move the 1of8 to my prototype breadboard and run the 8 lines of output from that chip to the output pins of the now missing socket. The main reason for this is that I can solder a connector in place where the chip used to be and use the connector to receive a cable from the protoboard which seemed cleaner to me than soldering to the inputs of an in place chip.

This leaves only a few interesting connections than can be made on the output side of the now removed PAL chip. We will drop a connector rail down on the CPU board to accept a cable for these lines as well.

humb_pinrails_soldered.JPG

Ok, step back and consider what we have. The CPU board is now setup up to accept cables for the data lines D0-D7, the 8 address lines decoded by the 1 of 8 decoder: SWLO, DPSW, BSEL, SWSTB, SW, PLIN, POUT and two important lines from the PAL chip position: IO PORT and IO STB.

To control things, we need to put together a cable that allows us to interface on these 17 signals. For lack of a better solution at the moment, I soldered up a ribbon cable that I had "on hand" with two separate connectors on one end (along with two free wires) to run to the three key locations on the CPU board, and one long rail connector at the other end, carefully labeled, that can be used from a prototyping breadboard.

thumb_cable.JPG thumb_cable_labeled.JPG

This cable is not very good, but it works. We will have to replace it with something a bit more robust fairly quickly, but we should be able to hit a proof of concept using it. With the the cpu board socketed and cable done, we need to pick a way of controlling things. My initial thought was to prototype and do proof of concept work using a PC, running the system via a parallel port. This might work, but gosh it sounds so pedestrian. Also, there is no way possible that running from a parallel port will be the final solution. I'll want to have a either an SBC or microcontroller that I can package up into the back box.

A bit of a look about and I came across another fine product from Parallax, the propeller chip. It is an inexpensive powerhouse of a microcontroller with plenty of easy to use I/O pins. It even has 8 independently running cores which will come in handy. I'm not sure if this little chip can end up as the final controller for the machine, but it is more than capable of working into our proof of concept. I got myself a PropStick USB and dropped it onto a protoboard for a little testing and I'm pretty happy with it.

That's the tale of Cables, Connectors and Controllers for now. Next up we hook all these things together and see what we can do.