Commodore 64 piggybacks on Raspberry Pi to run Doom at 50fps

Daniel Sims

Posts: 1,288   +43
In brief: Hobbyists will try to run Doom on anything, but a new Commodore 64 conversion is unique. The effort utilizes a Raspberry-based attachment to run the game surprisingly well in a way neither piece of hardware could do alone. The mod includes instructions, so Commodore owners can set up the demo and run other Raspberry-enhanced software for themselves.

Modder "frntc" recently unveiled an expansion cartridge for the Commodore 64 that lets the iconic home computer and its relatives operate software once thought unimaginable for the 8-bit platform. What better way to test the device than by getting it to play Doom?

Technically, there is already a Linux-based Commodore Doom port. Despite the required SuperCPU upgrade, it runs with degraded colors at a barely playable framerate due to its complete lack of optimization around the old hardware.

Comparing the version on frntc's RAD Expansion Unit reveals a night-and-day difference. The hobbyist's system uses a copy of Doom that looks similar to the DOS version's low-detail mode running in 320x200 resolution. Made for PAL CRTs, it runs at a smooth 50fps – significantly faster than the original DOS-booted game.

Based on a Raspberry Pi, the expansion cartridge does most of the legwork, bypassing the Commodore's CPU in favor of the RP's ARM processor. The C64 converts the frame buffer to bring an image to the display, handles input through its keyboard and mouse, and pushes impressive 22050Hz sample audio through its SID chip.

Expansion chips that enhance a platform's basic capabilities were fairly prolific for computers and game consoles in the 80s and 90s. The Super NES version of Doom utilizes the SuperFX chip, which was most famous for enabling the console to render 3D polygons in the original Star Fox.

Curious users can buy or build RAD cartridges through frntc's instructions. The device, which supports the Commodore 64 and 128, comes in two interchangeable variants: one based on Raspberry Pi 3A+/3B+ dimensions and another patterned after the Raspberry Pi Zero 2. Building requires a 3D printer for some components. (German) offers pre-built units for around 20€.

The RAD version of Doom is also available on frntc's GitHub with simple instructions to start playing. It requires the shareware version of Doom on the doom1.wad.

Permalink to story.

This is what StarFox etc. did on the SNES -- the cartridge actually included a chip that did all the 3D polygon graphics, and essentially used the SNES for it's framebuffer and access to the game controllers.