Interface Your C64 With Arduinos Through Firmata

Microcontrollers are cool, but sometimes the user interface options they can deliver are disappointing. The platform in question may not have the horsepower required to drive a decent screen, and often a web interface is undesirable for security or complexity reasons. Sometimes you just need a good software interface between chip and computer. Firmata is a protocol that’s designed to do just that, and [nanoflite] has brought it to the Commodore 64.

It’s a fun project, which allows one to use the C64’s charming retro graphics to interface with an Arduino-based project. Connection is achieved at 2400bps over the user port, which is plenty fast for most UI applications. [nanoflite] demonstrates the interface with an Arduino Uno and a Grove shield. The C64 is able to display the state of the LED, relay and servo outputs, as well as read the Arduino’s button and potentiometer inputs.

It’s an excellent way to integrate a Commodore 64 into a microcontroller setup without reinventing the wheel. We think it would make an awesome vintage interface to a home automation system or similar build. If you’re interested, but you don’t have a C64 of your own to play with, never fear – you can just build a new one.

Component Video For The Commodore 64

Of all the retro systems, the Commodore 64 had the best video system. The VIC-II chip in the C64 was the best example of why Commodore was the best, but in terms of video output, the C64 was still a consumer device: the only output was S-video, or composite video, or something like it. The professional stuff uses YPbPr, an RGB video signal that separates the red, green, and blue colors. On a modern LCD, the difference between composite and YPbPr is noticeable, and if you’re going to run your C64 on the big screen, it would be very helpful to use a professional video standard.

In an effort to bring the C64 into the future, [c0pperdragon] created an FPGA-based modification for the VIC-II chip. The end result is getting YPbPr signals directly from the computer, and outputting it to a TV in glorious 480p.

Inside the Commodore 64, the VIC-II creates the chrominance signal in a way that is impossible to convert it back to any form of RGB. The solution to get RGB out of this information is to listen in to 22 pins of the VIC-II to determine what signals it intends to generate. This is done with a smallish Altera FPGA connected to the VIC-II through a ribbon cable. On the FPGA, the luminescence and all the color information is generated, then converted into true YPbPr. For the complete mod, the RF modulator is removed, and the original A/V jack is still functional. This is effectively a very in-depth mod that rids the C64 of the TV connector and channel selector (that no one uses anymore) and replaces it with a professional-grade video output.

When it comes to C64 mods, we thought we’ve seen it all. We’ve seen C64s resurrected from the dead, and we’ve seen drop-in replacements for the SID that still don’t have working filters oh my god. This is on another level. This is using FPGAs to drag the C64 into the modern era, and if you don’t care about the rusting RF box, it’s a reversible mod.

The Rotary Joystick Can Take A Beating

It’s a well-known fact amongst the older set that games used to be harder. Back in the 1980s, most home computers had awful keyboards, barely adequate joysticks, and the games had to be difficult to have any longevity, because there’s only so much you can fit into a single sided disk. Some of these games became known as joystick killers, due to the repetitive thrashing movements required to win. [Jan] was tired of letting Decathlon and its ilk get the better of him and his controllers, so built a joystick that was up to the task.

The basic concept of [Jan]’s rotary joystick is that many games required a fast and repetitive left-right motion to be executed by the player, but weren’t too concerned if a few up or down movements were in the mix. Thus, instead of a traditional shaft-based joystick, instead a rotary mechanism was employed. The player rotates the joystick’s wheel, which has a magnet fitted. This triggers a series of four reed switches, for up, down, left and right. By rotating the wheel quickly, it simulates the rapid left-right motion well enough to beat most of the vintage C64 games that were giving [Jan] trouble, and it makes an ideal controller for the 2018 release, Crank Crank Revolution.

We like the spirit behind any build that uses hardware to overcome intractable gaming problems. We’ve seen similar approaches used to beat Guitar Hero. Remember Guitar Hero? That was a thing. Video after the break.

Continue reading “The Rotary Joystick Can Take A Beating”

A Portal Port Programmed For Platforms Of The Past

If you still have a Commodore 64 and it’s gathering dust, don’t sell it to a collector on eBay just yet. There’s still some homebrew game development happening from a small group of programmers dedicated to this classic system. The latest is a Portal-like game from [Jamie Fuller] which looks like a blast.

The Commodore doesn’t have quite the same specs of a Playstation, but that’s no reason to skip playing this version. It has the same style of puzzles where the player will need to shoot portals and manipulate objects in order to get to the goals. GLaDOS even makes appearances. The graphics by [Del Seymour] and music by [Roy Widding] push the hardware to its limits as well.

If you don’t have a C64 laying around, there are some emulators available such as VICE that can let you play this game without having to find a working computer from the 80s. You can also build your own emulator if you’re really dedicated, or restore one that had been gathering dust. And finally, we know it’s not, strictly speaking, a port of Portal, but some artistic license in headlines can be taken on occasion.

Continue reading “A Portal Port Programmed For Platforms Of The Past”

Ants, Dirt, Rain, And The Commodore 64 That Wouldn’t Quit

Some electronics gear is built for the roughest conditions. With rugged steel cases, weatherproof gaskets, and cables passing through sealed glands, these machines are built to take the worst that Mother Nature can throw at them, shrugging off dust, mud, rain, and ice. Consumer-grade computers from the start of the home PC era, however, are decidedly not such machines.

Built to a price point and liable to succumb to a spilled Mountain Dew, few machines from that era that received any kind of abuse lived to tell the tale. Not so this plucky Commodore 64C, which survived decades exposed to the elements. As [Adrian Black] relates in the video below, this machine was on a scrap heap in an Oregon field, piled there along with other goodies by one of those “pickers” that reality TV loves so much. The machine was a disaster. It hadn’t been soaked in oil, but it was loaded with pine needles and an ant colony. The worst part, though, was the rust. The RF shielding had corroded into powder in some places, leaving reddish rust stains all over the place. Undeterred, [Adrian] gave the machine a good bath, first in water, then in isopropanol. Liberal applications of Deoxit helped with header connections, enough to see that the machine miraculously booted. It took some finagling, especially with the 6526 I/O controller, but [Adrian] was eventually able to get everything on the motherboard working, even the sound chip.

Whether this machine survived due to good engineering or good luck is debatable, but it’s a treat to see it come back to life. We hope a full restoration is in the works, not least as a way to make up for the decades of neglect.

Continue reading “Ants, Dirt, Rain, And The Commodore 64 That Wouldn’t Quit”

Hackaday Links: September 23, 2018

In the spirit of Nintendo’s NES mini and Super NES mini, Sony is releasing a tiny version of the Playstation. It’s a hundred bucks in December and it comes with Final Fantasy VII, what more do you want? While that’s marginally cool, check out the forums and comments of gaming blogs for some real entertainment — those damn kids won’t get off my lawn and are complaining the included controllers don’t have analog sticks.

This man has solved the range problem for electric cars. He hacked a Prius to run off the overhead wires for San Francisco’s Muni system. Yes, if you want something amazing, here it is. The pantograph/pole/whatever it’s called was acquired ‘somehow’, with the implication that it was stolen. The overhead lines are 600 V, and a Prius’ battery pack is usually 273 V; apparently he “uses up the excess power on a whole lot of resistors, full-time headlights, and a kick-ass stereo system.”. Dear lord, we need a real technical write-up for this one.

get on my level

Humanity’s most impressive accomplishment to date is Twitch Plays Pokemon. This was a cooperative game of Pokemon, with thousands of people mashing buttons. Everyone (eventually) beat the Final Four, but the most impressive part was the Power Plant. We made it through the Power Plant, and we got Zapdos. I was there. It was incredible. Twitch Plays Pokemon has been reborn and rebranded several times, but this one might be good: Twitch Programs a Commodore 64. It’s a (virtual) C64 hooked up to Twitch. If there’s one person watching the channel, you can slowly type out a BASIC program one… character… at… a… time. If there’s more than one person watching, the entire ordeal devolves into the horrors of a democracy, but you might be able to get something done. Have fun.

C64 Keyboard Helps Keep The Memory Alive

To say that the Commodore 64 was an important milestone in the history of personal computing is probably a bit of an understatement. For a decent chunk of the 1980s, it was the home computer, with some estimates putting the total number of them sold as high as 17 million. For hackers of a certain age, there’s a fairly good chance that the C64 holds a special spot in their childhood; perhaps even setting them on a trajectory they followed for the rest of their lives.

At the risk of showing his age, [Clicky Steve] writes in to tell us about the important role the C64 played in his childhood. He received it as a gift on his fifth birthday from his parents, and fondly remembers the hours he and his grandfather spent with a mail order book learning how to program it. He credits these memories with getting him interested in technology and electronic music. In an effort to keep himself connected to those early memories, he decided to build a modern keyboard with C64 keycaps.

As you might expect, the process started with [Steve] harvesting the caps from a real Commodore, in fact, the very same computer he received as a child. While the purists might shed a tear that the original machine was sacrificed to build this new keyboard, he does note that his C64 had seen better days.

Of course, you can’t just pull the caps off of C64 and stick them on a modern keyboard. [Steve] found the STLs for a 3D printable C64 to Cherry MX adapter on GitHub, and had 80 of them professionally printed as he doesn’t have access to an SLS printer. He reports the design works well, but that non-destructively removing the adapters from the caps once they are pressed into place probably isn’t going to happen; something to keep in mind for others who might be considering sacrificing their personal C64 for the project.

[Steve] installed the caps on a Preonic mechanical keyboard, which worked out fairly well, though he had to get creative with the layout as the C64 caps didn’t really lend themselves to the keyboard’s ortholinear layout. He does mention that switches a bit heavier than the Cherry MX Whites he selected would probably be ideal, but overall he’s extremely happy with his functional tribute to his grandfather.

If you’re more of a purist, you can always adapt the C64 keyboard directly to USB. Or go in the complete opposite direction and put a Raspberry Pi into a C64 carcass.