Saturday, 16 August 2014

Commodore 64 USB Keyboard with Mode Switch

I've been making Commodore 64 USB keyboards for quite a while, and they have been very popular.
The Commodore 64 is an iconic looking machine, with a very usable mechanical keyboard. With most of the USB Keyboards, particularly the Spectrum, I've been offering two modes, a remapped one which is best for general use, and one tailored to fit better with emulators. This could be changed via a jumper inside the keyboard, but it was basically one mode or the other.
I've recently updated the Spectrum USB keyboard with Raspberry Pi to include a rear mounted switch to change mode. This concept seems to work well, so I've updated the Commodore 64 USB keyboard in a similar manner.
Rather than a slide switch as in the Spectrum, I've used a push button on the rear to change modes. The power LED on the Commodore 64 then changes according to mode.
When the LED is the normal red, this indicates C64 emulator mode. Here the mapping is the reverse of the Vice default positional map. You press '+' on the C64 keyboard, that actually sends '-' to the PC, Vice the remaps that as '+'. So the keys on the C64 work inside the emulator as they would if there were a Commodore 64 motherboard inside. (actually, they work a bit faster, so you can type more quickly).
That's pressing the keys one by one from using the default positional mapping (win_pos.vkm).
The power LED on green indicates remapped mode. This is best for normal use such as typing this blog article. Here the keys should work as per the markings on the keycaps. Where possible, I've added missing keys such as \, using right shift + /. Function keys F1, F3 ,F5 and F7 give F2, F4, F6 and F8 with left shift, and F9, F10, F11 and F12 using right shift. Home and End are the Home and Restore keys, and with shift, these give Page Up and Page Down. The top left key is Escape, and Run Stop becomes Alt. Left shift + Right shift + Del gives Ctrl + Alt + Delete. Shift '-' gives '_', and shift £ gives € if you're so inclined. Full mappings here.
As usual, these keyboards are available to order from my Etsy store, or contact me if you'd like a custom one.