C64 LUGGABLE PROJECT

Internal Wiring

The main areas of C64 luggable consist of the display, the front I/O board, the rear I/O board, the power system, and the mainboard plus its expansion carts. The front and rear I/O boards are covered in detail in their own sections. As is mounting the display and the power system. The front audio system is complex enough that it merits its own section as well.

What that leaves us with is how the internal wiring between these major components comes together. How the display is wired to the mainboard, how the mainboard is securely mounted inside the chassis behind the display, how the networking cable is then fed up to a networking card, and how the keyboard and controller cables are connected to the mainboard. A bit of a smorgasbord.

Display Wiring

The display is a black 15" Samsung LCD, which I acquired absolutely free. In fact, looking at it and thinking about it's size relative to the size of a C64, is what kicked off my original plans for building a portable (luggable) Commodore.

The main issue concerning this display is that it is a VGA display. Its only input connector is a downward pointing VGA jack on the rear of the display. As described in Power Preparation: USB Power Cable my solution to hooking this up to a C64 is with a Portta SVGA to S-Video adapter. I wrote a review for this adapter early in the life of the C64 OS Weblog. It is not 100% reliable, I had mixed results depending on the machine I connected it to. However, I'm hopeful that a LumaFix64 might also be useful in cleaning up the results. In any case the C64c motherboard that is being used in C64 Luggable provided the best results of all the machines I tested it on, so that's all that counts when it comes to its use in this particular project.

No VGA to SVGA adapters seem particularly better or worse to me, it doesn't seem to be a factor of their size, at least. And the most characteristic feature of the Portta is how incredibly tiny it is. It is a mere 20mm thick, and 54mm by 60mm almost square. I also like the fact that it has very flat squared sides and edges. Many other such adapters come in strangly shaped plastic cases.

Portta VGA-S-Video Adapter dimensions

The square and tiny formfactor of the Portta makes ideal for binding directly to the back of the VGA display. How convenient, it doesn't even need a cable, just a gender changer. Here are the parts I needed to be able to effectively convert the VGA display into an S-Video display:

  • Portta VGA to S-Video Adapter
  • VGA to VGA male-male gender changer
  • Package of square riser pads
  • Package of plastic strip fasteners
Portta VGA-S-Video Adapter and male-male gender changer Package of square riser pads Package of plastic strip fasteners

The VGA port on the back of the display points downward, and is surrounded by a squared off molded piece of plastic. If the adapter's VGA port cannot line up with the display's VGA port and also fit within the molded plastic surroundings, then this would not work and we'd need a VGA cable. VGA cables stink, in my opinion. The cable itself is very thick and difficult to twist and bend. They are usually much much longer than the extremely short distance we need for the inside of this chassis, and the actual connectors are often big blocks.

A gender changer on the other hand, is about as small as a VGA cable can get. I started by attaching the gender changer to the port, and then testing to see if the Portta would fit by lining up the adapter's VGA port with the other side of the gender changer. And, to our luck, and thanks to the tiny size of the Portta adapter, it fits perfectly.

The only caveat is that when the adapter is plugged into the gender changer, there is a gap of a few millimeters between the body of the display and the body of the adapter. For that, a couple of square, double-sided sticky riser pads will do the trick of nicely filling that gap.

The VGA port on the display The VGA port with gender changer installed, and a riser pad positioned

The plastic fastener strips are sort of like velcro, but instead of one side of plastic micro hooks and another side of soft matted stringy material, to which those hooks will attach, the plastic fasteners are much more robust. Each side is the same, made of many plastic sticky-outy bits each with a slightly larger rounded head. When you push the two sides together the plastic bits intermingle with each other and the heads prevent them from falling apart again. The superiority of this style of fastener over velcro is manifold:

  • Provides a much stronger bond
  • When together the outer edges are more parallel
  • The relationship between the two edges is much more stable
  • The two halves can be taken apart and put back together more times than velcro without degrading performance

The plastic fasteners come in strips, they are the same width as the square riser pads. They can easily be cut to any length. So I cut them to be the same size as the square risers. One riser pad and one half of the plastic strip fastener I then connected directly to the display below the gender changer where the adapter will sit.

Cutting the strip fasteners to by square Attached a riser and a strip fastener to the display

Mock positioning the adapter into the gender changer I took some measurements to figure out where the riser and strip fastener should go on the adapter so the two strip fasteners will line up correctly.

Cut out one more strip fastener to be the same square size as the riser pad. And Attached those to the underside of the adapter.

Portta adapter with a riser attached to it Portta adapter with a riser and strip fastener

With the risers and fasteners in place you simply plug the adapter into the gender changer and push down gently to join the fasteners. It works out well, because the gender change itself does not have screws to hold it to either the display or the adapter. Usually a VGA cable has thumb screws so you can attach it in a way that it won't fall out. The fasteners hold the adapter in place to the display, and hold the VGA connection firmly together too.

You can see how close the fit is too. It was really just good luck that the VGA port on the adapter is exactly where it is, and the size of the adapter is exactly as it is. It could easily have been just a few millimeters to big, or the VGA port just a few millimeters closer to the edge of the surrounding plastic molding and it would not have fit.

There is one other fortuitous sizing and positioning. The Portta adapter is powered by a USB Mini-B port, and a short accompanying USB-A to USB Mini-B cable. The USB port on the adapter is on the side that is against the plastic molding of the display, not the open other side. It would have foiled the plan if the USB port were obscured by the display molding, there would have been no way to power the adapter. But, as it happens, the port just clears the molding, and there is enough room to plug in the cable.

Mounted adapter, left view Mounted adapter, bottom view

You can see the USB port in the images above. On the other side of the adapter, into the open space of the display back, there is a small switch to toggle the adapter between the two input types it supports: Composite (the single RCA jack), and S-Video. We'll be leaving the adapter set to input S-Video, but in theory we could use the composite option, but the quality wouldn't be as good.

In the section on Power Preparation: USB Power Cable I showed that I created a cable for connecting an AT power supply's molex connector to a USB-A female connector. The Portta's supplied USB cable connects the Portta adapter to that cable, such that it can be powered off the AT supply. The Portta adapter has no on/off switch, it simply powers on as soon as the AT power supply is switched on.

You still need to connect your Commodore 64 to the S-Video port on that Portta adapter though. To do this, you can either build your own cable, or use one of these two prefabricated solutions.

A search of ebay will reveal that you can purchase a C64 video cable with a standard S-Video connector for around $20. These are useful for hooking up your C64 to a modern TV or video projector that includes an S-Video port. Using this cable, you can connect the S-Video connector directly to the Portta adapter.

An alternative is to pick up one of these Commodore Multimedia Breakout boards, available currently via idoregesz.hu. You can read more about it here in the Commodore 8-Bit Buyer's Guide. It plugs directly into the C64's Audio/Video port and provides three RCA jacks for Composite Video, Left and Right SID audio, as well as an S-Video port, and a standard audio mini jack. Using this breakout board, you can then connect any S-Video cable, even a very short one suitable for the internals of the Luggable chassis, between the two standard S-Video ports. For use with an ordinary C64 shortboard, these is a great option.

This feels like the cleanest and tightest solution, with the least long dangly wires that need to be bundled up inside. Although, it is a bit pricey. The Multimedia breakout board runs about 39 EUR, which is almost 60$ CAD. The S-Video cable cost another 5$.

C64 to S-Video cable Commodore Multimedia Breakout

Another alternative exists. The C64 Reloaded comes with an S-Video port built right in. It is in the place where the RF Modulator would normally sit on a C64. Originally I was going to use a C64c shortboard, but since acquiring a C64 Reloaded MK2, I've put it to use instead. The same short S-Video cable that works well for the Commodore Multimedia Breakout board works perfectly with the C64 Reloaded as well.

Mainboard Mounting

The C64's mainboard is clearly one of the most important components of a luggable C64. It's the computer part of the computer, after all. It also played a critical role in determining the size of the main chassis. The chassis is a large rectangular block, so it has three basic dimensions: Width is determined by the width of the LCD Display. Depth is determined mostly by adding up the depths of the AT Power Supply, plus the Front I/O board, its Audio Amplifier and speakers. The display, C64 mainboard and Rear I/O fit into this depth with lots of room to spare. The height of the chassis, though, is determined by the height of the C64 mainboard when stood on its edge, plus room for the power and controller cables to come out the ports that are on the top edge. The only way to make the whole thing squatter would have been to make it much wider, or perhaps a bit squatter by putting the mainboard in on an angle. It seemed simpler to just make the chassis tall enough to fit the mainboard oriented in a vertical but straight position.

You can see how, without the display, front or rear I/O boards, the mainboard can be positioned vertically inside the chassis. What is typically the left edge is flush with the bottom inside of the chassis. What is typically the front edge of a C64 mainboard is flush with the left inside edge of the chassis, (when viewed from the display side as the front.) And it is positioned behind the display. What is typically the rear edge of a C64 mainboard, where most of the ports are, is approximately in the middle of the chassis making it easy to attach cables, cartridges, and more. What is typically the right edge of the C64 mainboard, with the power port, power switch and two control ports, is facing up and ends approximately 2 to 2 1/2 inches below the top inside of the chassis. This was done to provide ample room for the power cord and controller cables to be plugged into the top and stick out some appreciable distance.

Mainboard sizing/positioning 1 Mainboard sizing/positioning 2

In order to keep the mainboard in place, I put a long plastic track down the inside left side of the chassis. This allows the long left edge (typically the front edge) of the mainboard to sit into this track. This holds that entire edge of the mainboard in place, front to back.

Mainboard left side track 1 Mainboard left side track 2 Mainboard left side track 3

Next, the mainboard's opposing right side is mostly floating in the middle of the chassis. It needs to have its two corners anchored somehow. One of those corners is against the bottom of the chassis, so I'll return to that corner later. But the upper right corner is truly floating in the middle of a large empty space. It absolutely needs a solid anchor.

There is the flat cross piece of wood, to which the display is attached. It so happens that the top of this cross piece is nearly even with the top edge of the mainboard, and just about two inches away from that floating top right corner. The problem is that on the other side of that cross piece, the display sits absolutely flush with the wood. There is no way to put an ordinary bolt through that cross piece without it interfering with the back of the display.

But I came up with a pretty good solution. A metal bolt, with a tapered, rather than flat, head could be passed through the cross piece such that it sits absolutely flush with the display side. So, after measuring exactly where the hole should be, I drilled through the cross piece. Then using an exacto blade carved away the display side of the hole such that the metal bolt would sit flush into it.

Cross piece anchor hole 1 Cross piece anchor hole 2

Once the metal bolt with the tapered head was able to sit flush with the cross piece on the display side, it sticks out the back side of the cross piece, but somehow the C64 mainboard has to attach to it in a solid and reliable, and entirely immobile way.

I used two 1 inch extension bolts, connected together to create a 2 inch extension. The first extension is screwed onto the metal bolt, with a flat washer and lock washer to make sure that it is good and held on. This also allows me to tighten that metal bolt to really pull the head as flush with the display side of the cross piece as possible.

Metal bolt flush with display side Extension bolt attached with washer and lock washer

The second extension bolt is simply added onto the first. One nice thing about these bolts is that the extension part is a larger smooth cylinder, 1 inch long, with a narrower short threaded part. This allows for the narrow threaded part to pass through the hole in the floating top right corner of the mainboard. Unfortunately, it wasn't a perfect fit. The bolt was literally less than a millimeter too thick, but even such a tiny difference cannot be forced, because there is just no give at all between either the bolt or the hole in the PCB.

The size that the hole needed to be expanded by, though, was so slight that I simply passed through the existing hole with a matching drill bit, and just wiggled it around a bit to shave off the tiniest amount of the PCB on the inside of the hole. One of the design goals of this project was that every part would remain whole and intact such that it could be swapped out for another part. Therefore, as a rule, I'm very opposed to making physical modifications to anything and especially the C64 mainboard. However, in this case, the enlarging of that hole was so slight that if you take the mainboard out and put it back into a regular C64c plastic chassis, you would not even be able to tell that the back right (when in a C64c chassis) hole had been enlarged.

Once that corner could be passed onto the threaded part of the extension bolt, it beautifully and robustly stops at the larger cylindrical shaft of the bolt. After I had it on there for a bit and tested out moving it with my hand, I found that PCB on metal was not optimal. So I actually cut out a small piece of thin rubber, punched a hole in it and put it on the extension bolt first. This acts as a soft washer to buffer the PCB against the extension bolt shaft.

On the otherside of the mainboard, I put a nut with a rounded head. The rounded head was not necessary, but it makes it look nicer. The rubber washer on the other side helps to be able to tighten the outer nut so it sits snuggly and won't work its way off as the machine is lugged about.

Mainboard mounted 1 Mainboard mounted 2
Mainboard mounted 3 Mainboard mounted 4

This brings us back to the last corner. In the images above you can see that I've wedged a thin piece of cardboard under the bottom edge of the mainboard. Just that tiny, less than a millimeter thick, piece in place prevents that bottom corner from sliding back and forth. However, it was only a temporary solution.

That bottom corner is also right next to the bottom plate of the chassis. I found a simple plastic L-bracket that can be screwed down into the bottom plate, and have a bolt pass through the PCB's existing hole and through the whole in the bracket. Easy as pie. That mainboard is now mounted in there very securely. It doesn't budge, but can be easily removed if necessary.

L-Bracket anchoring bottom right corner to chassis

Network Wiring

This section on network wiring is truly short and sweet, almost nothing to it. As you can see in the Rear I/O: Network Ports section, the network ports consist of a modified wall mountable pair of ethernet jacks. That mountable panel has a terminal block that you punch ethernet lines down onto. Once connected, the network line really cannot be removed. I cut the end off an ethernet cable, leaving the plug connected to about a foot and a half of cable. Where does that cable lead to though? Well, now that the mainboard is mounted into the chassis we can see where that cable goes.

Network Cable 1 Network Cable 2

In these photos I've put a 64NIC+ in the cartridge port. The network cable is long enough to leisurely go up the length of the mainboard, wrap around the cross piece that holds the display and plug into the upward facing ethernet port.

At the time these photos were taken I hadn't yet decided on exactly what expansion hardware I would be using. I assumed that maybe the 64NIC+ would be the ethernet solution. It is not 100% ideal however, because, if I also wanted an REU, or cartridge I'd need a cartridge port expander.

I finally decided to splurge on a 1541 Ultimate II+. It is a fantastic device, but one of its built in features is an ethernet adapter. It is quite a compact cartridge considering all that it has packed into it, and the ethernet port is in approximately same place as when the 64NIC+ is plugged in.

Network Cable 3 Network Cable 4

The display is not shown here. However, when the display is connected to the cross piece, only the middle of the cross piece is flush with the display. Because the back of the display is curved, as you move away from the center there is a gap between the display and the cross piece. This gap isn't huge, but it is enough to let the network cable pass through and loop over to find the network port. Doing this makes the inside wiring look a bit more neat and tidy.

The network cable is effectively just a straight extension from the 64NIC+ or 1541 Ultimate's ethernet port down to the Rear I/O panel.

Controller Wiring

Fortunately, the internet, thanks mostly to ebay and Amazon, puts all the worlds connectors, cables, parts and tools at ones fingertips. I need ultimately to wire the two joystick ports to the Front I/O panel. To do this I primarily use ribbon cable, but the ribbon cable needs to be connected to some DB9 connectors.

The joystick ports on the side of a C64 are male, so we need at least 2 female connectors. However, I would also like to have some passthrough connectors so that the MicroMys mouse adapter can be connected at the same time that a joystick may be connected off the front panel. This requires two male adapters that can be added onto the cables midway.

DB9 Female Connector Closed DB9 Female Connector Open
DB9 Male Connector Front DB9 Male Connector Back

These little connectors are super convenient. They're cheap, you buy them in packs, they clamp down onto ribbon wire without any soldering necessary. The outer clip piece has a slot which you can feed the ribbon cable through. This allows you to orient the cable such that the pins of the connector are parallel to the wires of the cable itself. If you choose not to use this outer slip, as I did, the cable is oriented at 90° to the connector pins. As we'll see, the 90° turn is actually very convenient for how I want to use them.

Pack of 2 DB9 Male Connectors Pack of 5 DB9 Female Connectors

Here are the ones I actually received in the mail. I got a 2-pack of male connectors, although they do get cheaper if you buy them in larger quantities. And I got a 5-pack of female connectors. If I bought two 2-packs they would have been more expensive than just getting a pack of 5 and having one left over.

Why do I need 4 female connectors, instead of just two? There are only two joystick ports right? Good question. I've also put a 4-player adapter on the userport, and those ports will be forwarded to an array of 4 joystick ports on the front panel. But I'll discuss those extra ports in the next section that details the front panel.

Holding a DB9 Female Connector Vise Grip pressing a DB9 Connector

Let's start with a female connector, on the first ribbon cable for the main joystick port. After cutting a length of ribbon wire about a foot and a half long, I want the female connector to be at the very end of that cable. There is an orientation issue to worry about. When the connector is inserted into a joystick port, one side of the connector faces the top of the mainboard, the side covered with ICs. The other side of the connector faces the bottom, the side that faces the back of the display inside the luggable chassis. You want the cable to come out of the connector away from the IC side so that it can go back and behind the mainboard, falling between the back of the mainboard and the display.

So you simply insert the cable into the slot, lining up the ends of the wires with the edge of the connector. Gently pressing the clip closed with your fingers you can see how the little metal clamps on the inside neatly line up with wires of the ribbon cable. One pin on the connector is marked as 1, it will be on one of the sides depend on which way you look at the connector, but never in the middle. You should make sure that the first line on the ribbon cable, which is usually marked to indicate it is line 1, is going to connect to pin 1 of the connector. That will be convenient down the road.

I actually took a ribbon cable with 30 or 40 lines, and just pulled it apart into two 9-line strips. So, only one of those cables had the 1-line marked with red. I used a sharpy to mark the 1-line manually on the other cable.

When you've got it lined up as you want, you can then crimp it on by crushing the clip down, which will force the wires to be pushed onto each metal clip. This requires considerable force, and the clips are plastic, so they can be broken or damaged if you don't apply steady even pressure. I used my vise grips for this.

Vise Grip closeup crimping DB9 female connector First DB9 Female Connector attached

The vise grips work very well for this task. The internal surfaces are parallel to each other, and they pull together evenly. The entire contraption has a squeezable handle which allows you to put as much or as little pressure as you want, at whatever speed you want. You can watch the clip smoothly compress down onto the cable, and stop whenever you feel its ready.

And boom, that's one connector on. It's very secure, the connections are perfect, no solder, it could not be easier.

Male Mid Connector 1 Male Mid Connector 2 Male Mid Connector 3

Now, we want to have a male passthrough connector that is somewhere midway along the ribbon cable. The most important thing is that you need pin 1 on the second connector to be on the same side as the 1-line on the ribbon cable. That's why it's handy if the 1-line is marked.

There are four possible ways to connect this connector, two of those ways will be wrong and completely broken, the other two ways will be right and either is okay, it just depends on how you want the connector oriented. The be honest, I feel like I oriented mine the wrong way. It's not a super big deal, but a little later I'll describe why I should have put them on facing the other direction.

When the ribbon cable is lying flat on the table, and the first connector has its pins (or pin holes) facing up, the male connector can be added to the cable such that its pins will either face up or face the opposite direction, down towards the table. As you can see in the images, mine are both oriented up. For now, I actually recommend you orient the male connector down.

As far as getting the pins aligned correctly, it doesn't matter whether you connect it with the pins on the same side, or opposite sides. Which ever side you choose, it is just a matter of rotating the connector 180° to make sure that pin 1 of the connector is on the same side as the 1-line of the cable. Once you've got it where you want it, crimping it on is as easy as ever if you use something like the vise grips.

Cable connection to a joystick port Cable orientation as it comes down the back side

That first connector's orientation matters, because now we can see that as we put the female connector into one of the joystick ports, the rest of the cable goes backwards and behind the mainboard. It will go down between the back of the mainboard and the display, and is then ready to be connected to the front panel.

Here's the reason why, in my opinion, I made a mistake with the orientation of the midpoint male connector. By putting it on same side as the female connector, where it dangles it is now a piece of conductive metal right next to all the through-hole solder connections of all the ICs on the back of the mainboard. Oops.

You don't need, nor do you want, the ribbon cable to be twisted or folded whence it comes out of the female connector in the joystick port whither it will connect to the front panel. It would have been better if the passthrough ports were oriented towards the front. Let's just move along to see how this plays out.

Both cables connected to the joystick ports The two ribbon cables coming out under the display

Now we can see that I've made the second cable, and attached both female connectors to the two joystick ports. And out the front, below the monitor come the two ribbon cables for joystick ports one and two.

Their orientations are perfect, by the way, coincidentally and conveniently. From the front view, the leftmost one will be joystick port one (the natural order, left to right, for the four front ports). And if you imagine where that cable ends up, it's the one that's furthest from the power jack, which is joystick port 1 on your C64. So that just worked out perfectly.

And, probably for the same reason, but equally conveniently, the 1-line of each ribbon cable is also leftmost. So connecting these ribbon cables to the front panel port adapters will not require twisting or folding the cable.

Mouse adapter hookup 1 Mouse adapter hookup 2 Mouse adapter hookup 3

I put passthrough connectors onto both cables, from joystick port 1 and port 2. Although I only really needed to put one on the cable from port 1. I wanted to have the ability to open the back, reach around and with a minimum of fuss, move the mouse from port 1 to port 2. This however means that one of those male connectors will be back there, politely out of view, but in danger of short circuiting something from the back of the mainboard.

I wrapped the unused connector in a small antistatic bag, and taped the openings shut. That's not ideal but it works, and you don't see it because it's behind the mainboard.

The MicroMys mouse adapter has a nice, I'd say, 6 to 7" cable. This cable can be screwed onto the male adapter of the cable leading to joystick port 1, and then neatly tucked back behind the mainboard. Conveniently, having this connector attached to the male DB9 connector makes it unlikely for anything metal to touch the back of the mainboard. If you're worried about it though you could use a little electrical tape, or I suppose, another antistatic bag.

Mouse adapter end to MicroMys board 1 Mouse adapter end to MicroMys board 2

The cable of the mouse adapter can then sneak around the edge of the mainboard, somewhere down near the bottom, and easily reaches over to connect to the MicroMys board, where it is mounted on the Rear I/O panel.

And there you have it, the main controller ports are wired up, ready for connection to the front panel. And the MicroMys PS/2 mouse adapter is wired up in parallel, leading to the PS/2 port on the back.

Keyboard Wiring

In a typical C64, the middle of the mainboard has a block of 20 pins for connecting the keyboard. One pin missing to help orient the cable that connects to it. The mainboard sits in the bottom half of the chassis, and the keyboard is attached to the top half of the chassis. The connection that comes off the keyboard is just a giant mess of lines, lightly bundled together. This mess of lines is never meant to be seen, because it's neatly sandwiched away between the bottom of the keyboard and the top of the mainboard, all internal to the chassis.

I wrote a detailed blog post in October 2017, outlining how the keyboard in a C64 works.

Needless to say, a C64's keyboard is not intended to be used outside of the full bodied, mainboard-enclosing, chassis. The keyboard itself, when removed from that chassis, is an ungainly sight, but the worst part is that splay of multi-colored wires. It's only about a foot long and terminates in a 1x20 dupont-style pin block. You simply cannot take a C64 keyboard and put it on a desk in front of a computer like C64 Luggable, and expect it to look good.

From the very first moment of conception, I knew that C64 Luggable would use a PS/2 Keyboard adapter. At the very least, PS/2 keyboards are designed to sit in isolation on the desk, with only a long thin wire leading back to the computer.

The C=Key is such a PS/2 keyboard adapter. It principally consists of two crosspoint switch ICs that allow the PS/2 scancodes to be mapped into an array of switches that mimic the behaviour of the Commodore keyboard matrix.

The C=Key is roughly square, about 2" by 2", with the PS/2 port on one side. The section on Rear I/O: C=Key Adapter goes into detail on how it is mounted to the Rear I/O panel. Besides the main two crosspoint switch ICs, and a handful of supporting components, there is a 1x20 pin block with one pin missing. Actually the reverse side of the board also has a female version of this connector that passes through. You are free to use either of these to connect the adapter to the C64's keyboard pin block.

On the C=Key, the female block is on the bottom, and is embedded into a trench carved in the Rear I/O board, only the male pin block on top is accessible. And given the orientation of the C64 mainboard, I need a 1x20, male-to-male, ribbon cable to connect them. Surprisingly, I was unable to find a cable of this description an ebay. The closest I got was this:

Arduino 1x40 dupont wire, too short

Each wire has its own single dupont connector. There are 40 wires, so I could easily tear it in half. But, this cable ended up being much too short. I completely underestimated the distance from the adapter to the mainboard when I ordered this from ebay. I tried searching for a longer one and to this day cannot find what I really want.

Once I learned of the terminology, dupont connector, for example, I got it in my head that I could build my own such cable. Here's all needed: (these are the parts I actually ordered.)

10 meters of rainbow ribbon cable 2 from a pack of 25 1x20 dupont connector housings a string of about 100 dupont connectors

Around 10 meters of colorful 10-pin ribbon wire. A 25-pack of 1x20 dupont housing blocks, and a string of around 100 dupont connectors. How hard could this be? I'll just cut the ribbon wire into two strips around the right length, strip them and attach the dupont connectors.

Cutting two strips ribbon cable Stripping the wires of the ribbon cable Soldering on, like an animal, connectors designed to be crimped

So I cut the ribbon wire into two strips about 14" long each. Then, like an animal, a naive and laughably inexperienced animal, I proceeded to strip the wires and solder the dupont connectors onto the ribbon wire. It seemed to go okay, but I couldn't figure out what the heck those little oddly shapped metal wings were supposed to be used for.

The problems really arose when it came time to insert the dupont connectors into the housing block. Damn! They just don't want to fit! I ended up cramming them in there with a thumb tack. And in the process exposed how incredibly fragile and cheaply constructed those little dupont housing blocks really are. It was an infuriating wasteful process and I'd only really completed one fourth of the number I had to make.

Crappy fit on the mainboard 2 Crappy fit on the mainboard 1 Cramming connectors into the housing block

The real problem was only just beginning. After getting one quarter of it done, I figured I should test out how it looks and feels when connecting to the pin block on the mainboard. The first problem is that, it looked like shit. It looked like it had been put together by a child. But the main problem was that, it didn't fit! It just did not want to plug into the mainboard. I didn't want to force it either.

What had happened is that I was a bit too overzealous in my use of solder, and on some of the dupont connectors the solder had flowed up into the cavity that was meant to be occupied by a pin. Now what was I supposed to do? You can't get those connectors back out of a housing block once you've crammed it in, was I going to have to do it all over again?

I decided I should educate myself and watch some YouTube videos on how one is supposed to attach these connectors. And that's when I realized... Oh! You're not supposed to use solder at all??! Oops. Those mysterious little wings are designed to be collapsed around the wire and the wire shielding using a crimping tool. No wonder I was having so many problems. Live and learn, right? So I headed back to ebay and ordered an inexpensive ratcheting crimping tool. About 20 minutes after I ordered it, I read people talking about how it's a terrible tool, very difficult to use, and does a poor job at best. The ones everyone was recomending were a non-ratcheting, simpler design, that comes from Japan, and has a much higher quality and precision when inspected under a magnifying glass.

But, I'd already ordered the cheaper, Chinese, ratcheting kind. So I just waited for it to arrive.

Crimped 5 lines, with tool in background Showing two wires crimped Showing 2 wires crimped, and others that were shorter due to failed crimps

If you thought trying to cram soldered dupont connectors into a cheap dupont housing block was frustrating, you cannot even begin to imagine the frustration using this crimping tool. I blew through over 20 dupont connectors, just experimenting, trying to figure out how to get one good crimp out of them. But, eventually, I started to get the hang of it, or so I thought.

I eventually was able to get to the point where I was good enough to start crimping good connections one after the next. So I cut out my ribbon wire, the length I wanted, split the wires near the end and stripped them. You don't need to strip much shielding off when crimping, only a few millimeters of wire needs to be exposed. Then I started crimping. I got to the point where I had 5 lines done. It's a miracle, I'm actually making progress.

Then something unexpected happened. One of the five that I'd beautifully crimped, just fell off in my hand. So I gave a tug at the others, and two more just fell off in my hand. ARG! The crimper had crimped the thing so hard that it crushed it into oblivion, and the connector was just hanging on by a thread. So I tried stripping the wire again, but the problem is that now some of those lines are shorter than the others. I tried crimping again on one of those already shortened wires. What happened? That crimp fell off again. So I ended up with a motley assortment of oddly lengthed wires.

Not only is crimping itself kind of a pain, and of unreliable consistency of quality, but you must make at least 10 perfect crimps in a row, or you will totally hose yourself, as the lines will end up with inconsistent lengths. And that's just at one end. You have to make another 10 perfect crimps in a row on the other end too. There is a further problem. The pin housing block is perfectly straight, and it wants the pin connectors to go in perfectly straight too. The problem is, if you cut your wires the same length, the outermost ones have to be stretched apart to fit in, while the inner ones end up with a bunch of slack. Even if you do crimp perfectly 10 times in a row, they still don't fit well or look good.

Then something occured to me.

A standard IDE cable, of which I have a multitude of spares, in many different lengths, have 40 lines. Their block connectors are 2x20, but the spacing of the pins in one of those rows of 20 is an exact match for the C64 keyboard connector. You can just stick the IDE cable onto that keyboard connector in such a way that 20 of the 40 lines are in use, and 20 of the lines are not connected to anything. And it works perfectly! It looks good, the lines are all joined neatly together, and you don't have to solder or crimp or assemble anything. [Ahahahaha. {nervous laughter} As I tug at my hair like a person going slightly mad.]

So, that's what I did. I took my dupont connectors, and my dupont housing blocks, and my ribbon wire, and my cheap crimping tool, and I set them off to the side where I can no longer see them… and I walked away.

Summing Up

With the exception of the internal wiring for Power and the Front I/O board, both of which are covered in detail in their own sections, this covers the miscellany of internal parts and how they are generally wired together.

The mainboard is the centerpiece. It is hooked up to power and its joystick ports are hooked up to the Front I/O board, with a passthrough to connect to the PS/2 mouse port on the Rear I/O board. Its keyboard connector is wired to the PS/2 keyboard port on the Rear I/O board, and the networking ports are connected to networking expansion hardware. Its video/audio port, via the multi-media breakout, is wired to the LCD VGA display, made possible with the VGA to S-Video adapter. And the audio from that breakout feeds to the stereo amplifier on the Front I/O board.

And that covers the bulk of what's happening on the inside.


Next Section: Front I/O

Table of Contents



This is a document in progress.
Check back again soon.

Last modified: Sep 20, 2022