Question: Why would someone want to connect C64-joysticks to the PC?
I believe the most interesting component in that design is the transistor (BC557). The default form for this is a half-circle-like component.
Sometimes it is very hard to find out which pin is Base, which pin is Collector and which pin is Emitter. Find out before you start to solder!
It also doesn't hurt to write it down.
If you are lucky, you get the same pin functions as I have. The schemes in this document are for that pin functions:
I like to use "experimenting PCBs" with pre-drilled holes and complete connection lines as I think they can save you a lot of soldering. That's why my designs often fits those PCBs.
For adapting one axis you need three "stripes" (right next to each other, a board with an "empty" stripe - like top-left - won't do), so for a normal joystick you should calculate 6 to 7 stripes. You may also want to put the buttons on the board as well, so add one or two additional stripes. Still that won't use the whole board (the small ones I get from Electronic Conrad have about 19 to 20 stripes) so you can cut some stripes. I recently found out that you can break the board at the right line if you're careful, so that could save yourself using a saw.
For a really beautiful adapter you should get a small box. I decided to have the 9-pin-connector directly at the box (to plug in the joystick) and have some inches of cable at the other side with the PC connector at the end. Of course, that's your decision.
I also wanted to be able to connect the extra buttons, but I wanted to be able to disable them (in case the joystick has some other circuits producing problems). That's why I had to use two switches as well. (and of course drill some holes for them into the box)
Now, that's how you can connect one axis to two buttons (of course you need two of those for a complete joystick)
(the small descriptors are the same as in Tomi Engdahls design)
You might be interested in seeing how the resistor value changes when the buttons are pressed:
When soldered to the PCB, the construction looks like that:
If you are using that PCB-line-boards, be sure to break some connections. I use a special tool for this, although a simple cutter or knife can do.
Of course you have to do that twice (for both axis), connect all P5V to each other, then connect the 9-pin-Connector plus add the wires from the 15-pin-connector.
|1||UP||solder to PCB at 0k-button for y-axis|
|2||DOWN||solder to PCB as 100k-button for y-axis|
|3||LEFT||solder to PCB as 0k-button for x-axis|
|4||RIGHT||solder to PCB as 100k-button for y-axis|
|5||extra button||directly to DSub15.7 or switchable|
|6||Button||directly to DSub15.2|
|7||P5V||solder to PCB at one P5V connection point (you can also directly solder to DSub15.1)|
|8||GND||directly to DSub15.4|
|9||extra button||directly do DSub15.10 or switchable|
|1 (+9)||P5V||solder to PCB at one P5V connection point|
|2||Button 1||directly to DSub9.6|
|3||Axis 1 (X1)||solder to PCB at output for x-axis|
|4 (+5)||GND||directly to DSub9.8|
|5 (+4)||GND||bridge to DSub15.4|
|6||Axis 2 (Y1)||solder to PCB at output for y-axis|
|7||Button 2||directly to DSub9.5 or switchable|
|8||(P5V)||Do not connect|
|9 (+1)||P5V||bridge do DSub15.1|
|10||Button 3||directly to DSub9.9 or switchable|
|11||Axis 3 (X2)||Do not connect|
|12||(GND)||Do not connect|
|13||AXIS 4 (Y2)||Do not connect|
|14||Button 4||Do not connect|
|15||(P5V)||Do not connect|
Before you finish everything, connect the adapter (without C64-stick connected) to the PC, activate it as 4-button-gamepad or so and center
the joystick on the screen by tunig the trimmers. You then should connect a C64-stick and see if it functions.
If you are sure that everything works, disconnect the converter from the PC. Now tighten all switches and screws, find a way for the DSub-15-cable, close the box and the DSub-15-shell.
The nice things about those boxes is that they hide all the cables so no one can see the chaos inside.
Unfortunately this converter can't really be tested with the Joystick tester described on that homepage. The resistor value always is very high (near 100 kOhm). It switches to about zero, when the left/up button is pressed, but it only changes very poorly when the right/down button is pressed. (Still you can see measure the difference). Of course the buttons work just fine.