Raspberry Pi Powers Commodore 64 Expansion Cartridge, Plays Doom

A Commodore 64 with a RAD expansion unit
(Image credit: emulaThor)

Commodore was a big name in the 1970s, 80 and early parts of the 1990s. Its range of home computers spanned the decades, but one, the Commodore 64, shines just a little brighter than others. Frntc aka Carsten has devised a Raspberry Pi-powered cartridge, RAD Expansion Unit, which emulates a RAM expansion and provides a CPU boost for the 40+ year machine. And the classic means to test it has to be "Does it run Doom?" Well it does, but the Raspberry Pi is doing most of the heavy lifting. Still,  the graphics and sound are all thanks to the Commodore's custom chips.

The RAD Expansion Unit connects to the Commodore 64 (or 128) cartridge port and uses a Raspberry Pi 3A+, 3B+ or Zero 2 W to emulate a RAM expansion unit of the era. It also bypasses the main MOS Technology 6510 / 8500 CPU (running at a mighty 1.023 MHz for NTSC, and 0.985 MHz for PAL) to provide the full power of the Raspberry Pi's Arm CPU. RAD can emulate up to 16MB of RAM, many times the original 64KB of RAM on a stock model. This means that RAD provides the horsepower to play a Doom tech demo, but we can only see it thanks to the onboard graphics chip, VIC-II. 

Capable of 16 colors at 320 x 200 pixels, this chip can still push the Doom marine around at a stable 50 fps. The Commodore 64 was famous for its SID (Sound Interface Device) sound chip. To this day there are musicians who covet the 40-year-old chip for their projects. The SID chip is pressed back into service to render the game audio as only it can do. Playing back 22050 Hz samples using the SID (or a clone if your SID has broken) renders clean audio in the YouTube video. If you want MIDI music, then RAD can also do that. Of course, to play Doom we really need a mouse, and yes you can use your mouse with the Commodore 64. 

There are two versions of the PCB:  larger board for the Raspberry Pi 3A+ and 3B+ and a smaller version for the Raspberry Pi Zero 2 W. The GPL-3.0 licensed project can be built from scratch, and the files to do so are in the GitHub repository, or you can pick up a pre-built board from an official seller. If you've got one of the best 3D printers, then you can print a case to protect your board. And yes, they do sell filament to match the various shades of vintage computing plastic.

Carsten has spent many years developing open-source software and hardware that bridges the Raspberry Pi and Teensy microcontrollers with various 8-bit Commodore computers. All of that can be found via their GitHub account.

Les Pounder

Les Pounder is an associate editor at Tom's Hardware. He is a creative technologist and for seven years has created projects to educate and inspire minds both young and old. He has worked with the Raspberry Pi Foundation to write and deliver their teacher training program "Picademy".

  • King_V
    Typo . . NTSC version of the 6510 runs at 1.023MHz, not 1.923

    That said, while I wasn't much of a fan of Doom, this is making me wish I still had either my old C64 or C128.
  • King_V
    True, it's just the RPi running it through the VIC-II chip and the SID . . still a bit interesting, if only for nostalgia purposes.
  • Jerry_W14
    walterg74 said:
    There are so many things wrong with this article... No, the c64 does not "run doom".

    Anything's valid to get folks to click I guess...
    When the C64 was out it did play cartridge games. What is the difference here? Why would you insist on trying to run the game on a processor it doesn't support? You boot up the C64 run the game and enjoy. When you are done you unplug it The game is being played on a C64. I see no difference except there isn't a 5 1/2" floppy hooked up.
  • TerryLaze
    Jerry_W14 said:
    When the C64 was out it did play cartridge games. What is the difference here?
    I get what you mean, and in the end this is just for fun and I agree with you mostly, but the old cartridges had only the game on them not an android/arm device that would play the game through emulation.
    Again I agree with you, but it's still a very big different.
  • Every electronic device has a basic desire to play doom 😀

    I bet data from star trek even plays doom on himself

    I know I would
  • King_V
    I mean, it's not like they didn't have something similar in the past, just at a smaller scale.

    Think of the Flash 8 Cartridge, for example, among other accelerators.