C64 VICE Front-End


Posted on Feb 4, 2014

The aim of this project was to create a front-end for Commodore 64 emulation using VICE. One of the primary problems with emulators (especially for machines from the `80s) is that there was no standard keyboard arrangement. In this project I took a broken Commodore 64 computer and replaced the motherboard with a PIC microcontroller based board whi


C64 VICE Front-End
Click here to download the full size of the above Circuit.

ch interfaces the keyboard and both joystick ports (including ADC for the paddles) to a modern full-speed USB 2. 0 interface. The board is designed to fit inside the original Commodore 64`s `breadbox` case without requiring any modification to the original machine. In fact it is possible to fit this interface and at a later point remove it and replace it with the original motherboard (we have to preserve what we have!) The Commodore 64 keyboard is a straight-forward matrix keyboard with 8 columns and 8 rows giving a total of 64 keys. There is also an additional RESTORE key which (in the original machine) was wired to the CPU to act as a non-maskable interrupt key (or `break` key). In order to wire the keyboard up to the PIC controller I made a simple breakout adaptor for the keyboard connector (a 20-pin SIP female connector) and wired it to my PIC USB reference board (this board is actually a pin-compatible clone of the PICDEM FS USB board which I made myself): The reference board is useful because it acts as a `known working` USB implementation (this is so you know that only your software is wrong when it doesn`t work - otherwise debugging USB code can be a little tricky). Once connected I was able to test the keyboard and the method for connecting it to the PIC. I also decided to test the configuration of the keyboard matrix since this is very important for detecting `ghost keys` as you will see later in this article....




Leave Comment

characters left:

Related Circuits

  • New Circuits

    .

     


    Popular Circuits

    Complementary-output-variable-frequency-inverter
    Circuit Detector and Disconnecting Over Voltage Schematic
    Lm318 Microphone preamplifier with tone control circuit and explanation
    MICROCONTROLLER BASED AUTOMATIC ROOM LIGHT CONTROLLER
    automatic headlight reminder
    Simple Cat.5 Network Tester
    TTL pulse recording for fMRI data collection
    PA Time sequencer
    Current Limiter - Support Material



    Top