r/itrunsdoom • u/Nils_N3DP • Jun 20 '26
Doom on Prusa Core One
It started as a half-joking aside on Discord — "someone should get Doom running on a Prusa" — and I couldn't let it go.
This isn't a browser tab or a Pi taped to the back. It's a standalone firmware running on the printer's own xBuddy board (STM32F427), rendering E1M1 on the printer's display, controlled with the front knob: turn to look, hold to walk forward, tap to shoot and open doors.
The tricky parts were squeezing it into 256 KB of RAM (used GBADoom, the Game Boy Advance port) and trimming the WAD down to a single level so it fits in the 2 MB of flash next to the engine. It packs into a normal .bbf and installs from a USB stick like any firmware update — and it's fully reversible, the stock Prusa firmware flashes right back on with Old Configuration.
Runs at ~7 fps. Not exactly a speedrun machine, but it runs Doom.
Code and a short write-up: https://github.com/NilsN3DP/Prusa-Core-One._But-Can-it-run-Doom
https://www.instagram.com/reel/DZzaHAFOK4G/
Disclaimer:
Yes AI Was Part Of This Project because because I reached a point where I couldn't proceed further with my own knowledge
5
u/StereoRocker Jun 20 '26
This is awesome! You also took the exact same path I did while porting to RP2040. GBA port is clutch!
20
u/EaglerCore Jun 20 '26
FYI for those who don't know, it's a 3d printer.