C64 Mini/Vice – Arcade2USB Converter

Introduction

 

I started this project because I did not like feeling of The64mini joystick at all, and I prefer the Suzo Arcade Joystick. Before I started the project I already ordered an existing converter but that took 1,5 week before I received it, in the meantime I had some spare time, so I decided to make a converter myself..

With this converter you can use an old Arcade joystick on the C64 Mini. It is converting the signal from the old type connector (DB9/Atari-based) to USB. It can be used on a stock C64 Mini machine, without any modifications.

 

Used components:

  • (Arduino) Pro Micro (clone) 16MHz/5v (ebay see image below.. that is what you need to fit in the 3D printed case)
  • DB9 (d-sub 9) male connector (ebay)
  • Push button momentary 7mm (ebay)
Pro Micro (clone)

Pro Micro input signals

The following pins are used on the Pro Micro

2 = Joystick up
3 = Joystick down
4 = Joystick left
5 = Joystick right
6 = Joystick button 1 (fire)
7 = Joystick button 2 (menu button c64menu joystick)

Pins 2-6 are connected to the DB9 connector.
Pin 7 is connected to a separate button which can be used to return to the main screen of the C64 Mini.

 

Let’s do some wiring

 

 

Signal Joystick Pro Micro DB9 connector
(Back view)
Up D2 1
Down D3 2
Left D4 3
Right D5 4
Button (fire) D6 6
+5V ( VCC)** VCC 7
GROUND GND 8

** Not needed, only if joystick has autofire button/modification.

Solder the wires (see table above) to the corresponding pins of the DB9 male (back view) connector.

 

Menu button
For the menu (2nd) button solder a wire from D7 to the button and the other pin of the button to a free ground hole/pin. Both D7 and ground must be soldered to the Pro Micro.

 

Original C64 Mini Joystick

You can use the original C64 Mini joystick for the optional menu buttons/functions.

 

Download project files

https://gitlab.com/iamtsb/c64mini-arcade2usb-converter

Case 3D design

The STL files to print your own case are included on Gitlab.

 

Flashing code into the Pro Micro

Arduino “boards.txt”

To make this converter work, some changes have to be made to boards.txt file.
This converter is loosely based on the Jess Technology controller as mapping device.

The boards.txt file is located in the Arduino installation folder or in your user folder if you are using Windows.

Original lines
leonardo.build.vid=0x2341
leonardo.build.pid=0x8036
leonardo.build.usb_product="Arduino Leonardo"

Search for “leonardo.build.vid=0x2341”, in my boards.txt file it is located on line 297.

Change the lines shown above to:

leonardo.build.vid=0x22BA
leonardo.build.pid=0x1020
leonardo.build.usb_product="C64Mini Arcade to USB converter"

Update 26-01-2019
I accidentally posted a wrong hex value in the “leonardo.build.vid” line that must be changed in the boards.txt file.
The value must be 0x22BA instead of 0x8F0E changed it in the lines above

Compile and upload code

To compile/upload the code into the Pro Micro use the steps below.

  • Click on the menu Tools
  • Select the Board “Arduino Leonardo”
  • Select the Port: [Corresponding port]

  • Click on the menu Sketch
  • Click on Upload

If everything went well, the Pro Micro is ready to be use as converter.

 

Bootloader upload/fix Pro Micro (Arduino Leonardo)

If you accidentally bricked your Pro Micro/Arduino Leonardo you will need to re-flash the bootloader.

see: https://www.tsb.space/knowledge-base/arduino-leonardo-micro-pro-bootloader-flash/

 

TESTING

 

Other machines/software

Vice

It also will work on Vice as well, use configuration as below.

Confirmed working machines

Tested (Vice):

  • The C64 Mini
  • Windows 7, needs manual driver installation, see the manual to do this
  • Windows 10, will auto detect the driver for this converter

Untested (yet):

  • Windows 8.x
  • Linux
  • Other machines like Raspberry PI for example

If someone can confirm that it works on an OS listed in “Untested” please let me know (contact form), so I can update the list.

 

Difference between Arduino Leonardo and Pro Micro (clone)

Arduino Leonardo

 

Pro Micro (clone)

Disclaimer

The project described on this page is a hobby project, I took all the effort to describe all the information on this page as completely and as carefully as possible.

I can not be held responsible for any damage to your equipment, building this project is entirely at your own risk. If you do not have the knowledge to build this project, ask someone who does have this knowledge to prevent damage to your devices.

Use at your own risk.

 

Other Arduino USB HID RetroJoystickAdaptors

https://github.com/mcgurk/Arduino-USB-HID-RetroJoystickAdapter/blob/master/README.md