Hackers made Doom run on a $15 Ikea smart lamp
One of the most rewarding challenges a hacker can take on is to run a game like Doom on a device that was never intended to run games, using as little extra hardware as possible to make it happen. That now includes the lowly Ikea smart lamp, which is an impressive achievement that will most likely be followed by even crazier attempts.
There are very few things out there that have not already been made to run one version of Doom or another — everything from calculators, iPods, inkjet printers, a Porsche 911, a single keyboard key display, the Touch Bar on Apple MacBooks, a McDonald’s cash register, John McAfee’s “unhackable” crypto wallet, the Playdate handheld console, the Commodore 64, and various ATMs.
There’s even custom silicon designed to run nothing else but Doom, and a CAPTCHA that is actually fun to complete.
Perhaps one of the most impressive attempts yet is that of a team of hackers over at next-hack led by software engineer Nicola Wrachien, who was able to run Doom on the hardware that powers a $15 smart lamp from Ikea.
Initially, Wrachien wanted to use an older Ikea Trådfri Zigbee lamp with a low-power embedded platform based around the Arm Cortex-M4 that runs at 40 MHz and 32 KB of RAM, but that quickly proved to be an impossible challenge.
After a few months, Ikea released an updated model that’s equipped with an Arm Cortex-M33 embedded CPU with 108 KB of RAM and 1 MB of NAND flash storage. To fit the game, the team needed more space, so they also used 8 MB of additional NAND flash storage. The screen they used has a resolution of 160 by 128 pixels, and the controller is a simple protoboard with eight push-buttons.
There’s no sound, however, and Wrachien explained in a now-deleted post that he needed to use a modified version of an existing Game Boy Advance port of Doom in order to make it run well on the resulting contraption. But this is possibly one of the cheapest ways to run Doom on a device that was never designed to do so.