GithubHelp home page GithubHelp logo

tebl / c64-joykey Goto Github PK

View Code? Open in Web Editor NEW
19.0 4.0 4.0 72.25 MB

WASD-style joystick for vintage computers. With an added Arduino Pro Micro you can use it as a USB-keyboard, so if you wanted a DIY streamdeck or Macro-keyboard - then the C64 JoyKEY can do that as well.

License: Other

C++ 75.71% C 24.29%
commodore-64 joystick keyboard commodore-amiga sega-master-system atari-st atari2600 atari commodore atari-7800

c64-joykey's Introduction

C64 JoyKEY

The C64 JoyKEY was born out of the desire to build my own joystick, and after having a look at the various options available I chose to build one using Cherry MX keyboard switches. They are around a dollar per piece, so after getting it all to work properly on my beloved Commodore 64 I looked into using it with a whole selection of vintage computer systems as well. There are two main versions of the C64 JoyKEY, the keyboard-variant already described and a board designed for use with Sanwa arcade parts instead.

Last build Last arcade

With options to handle multiple types of systems comes complexity, you'll have to make a few decisions on what you want out of the C64 JoyKEY. Do I only want to use it as a joystick replacement on vintage systems, ideally with 2-3 fire buttons where supported? If so, then you won't need the Arduino Pro Micro.

Want to use it on a modern system as a WASD-style keyboard or a gamepad, then install it - a common use of these types of devices is as a macro-keyboard or a stream-deck. Note that compared to many similar solutions, the microcontroller is not required for use with any of the vintage systems - the adapters actually follow the original circuit descriptions for controllers used with the actual vintage computers. What that means is that there is truly no chance of lag added by the controller. Ever.

The pictures below show the unit when connected to my Commodore 64, including the jumper settings used with it. As I've tried to keep things as close to the standard usually associated with Atari-style joysticks, there are two joystick connectors - this is because a lot of the Commodore 64 games supported using a second joystick for specific game functions.

Commodore 64 C64 Configuration

As with most C64 games port 2 is the one to use, port 1 is just there to connect additional fire buttons. When in doubt, just connect a cable for port 2 and you should have a good time. This was labelled after the way the controller is used on the Commodore 64.

Getting one

I won't be selling these, so if you want one you will probably have to build it yourself (or call your favourite friend, ideally someone with a reasonable quality soldering iron). I've created a separate documents on building a C64 JoyKEY, this is also where you'll find the BOM for this project (a list of needed parts and links to where PCBs can be ordered).

As with all things you're soldering together by yourself, the one who soldered it takes responsibility for it. I'll try answer any opened tickets as far as I am able, but know that this is a hobby-grade project and I might be busy on spending the little energy I have on other things (be patient, check out the schematic while you wait).

Setting it up

The C64 JoyKEY has a handful of jumpers that need to be set correctly in order to: A - function, B - not destroy your precious vintage computer and/or consoles. The necessary details have been put into a separate configuration-document, check it out for some information on the systems I've attempted to use the C64 JoyKEY with.

c64-joykey's People

Contributors

tebl avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

c64-joykey's Issues

Not an issue, just a question...

Just got some of these boards made to use with my c64 and such, nice little creation. :)

Oddly enough, amongst all my parts I have zero 270 ohm resistors anywhere, 220 and 360 are probably the closest I have on hand. haha

Is there any other value I can safely use in their place? or can I just omit them totally until I get some?

Also got your Pi1541 hat made too which works a treat. :)

Missing libraries

Hi,

I recently built the circuit. I also tried to program my arduino pro micro. Unfortunately I can't because some h-files are missing, e.g. the joystick.h. led.h etc. Would you be so kind to publish the missing libs?

Regards,
Achim

Underglow LED without arduino.

i noticed that because the arduino controls the underglow led's there will be no keycap light when not using the arduino.

I figured out that its basicly just sending vcc to the base pin of the transistor thru a 1k resistor so linking any VCC to R13 makes it work, is there any better way of doing this? or any technical reason why i should not solve it that way?

( i have the version before you added the 3 push buttons at bottom left )

thanks /Fletch

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.