Doom Really Does Run on Anything — Including Apple "Haywire" Lightning to HDMI Cables
A compact computer embedded within Apple's Lightning display adapters proves powerful enough to run id Software's 1993 classic.
The idea that id Software's 1993 classic Doom can run on almost anything even vaguely resembling a computer has been stretched to its limit by mononymous tinkerer John, also known as "Nyan Satan," who has successfully run the game on something truly surprising: an Apple display cable.
"[Apple] Lightning video adapters — also known as Haywire — […] are actually computers that feature Apple Secure Boot and run [the] Darwin kernel," John explains of how the project is possible. There're two kinds of Haywire. Both support up to 1080p video output according to Apple and make use of the same SoC [System-on-Chip] — S5L8747. Its part number is H9TKNNN2GD and according to The iPhone Wiki it has 256MB of RAM. Not much else is known about it."
Designed for devices that predate Apple's shift to USB Type-C connectivity, the two Haywire adapters convert a portable Apple gadget's proprietary Lightning cable to either digital HDMI video and audio or analog VGA video only. They're far more than a simple adapter cable, though: they're a self-contained computer in their own right, running a simple secure boot system that downloads a compact firmware from the connected device each time they're plugged in.
"You can easily connect Haywire [adapters] to [a] PC because it's basically a USB device," John explains. "All you need to [do this] is Lightning and micro-USB female breakout boards and a few connecting wires." Once connected, it's possible to break the secure boot system and send your own firmware — such as, for just one example, a working copy of id Software's 1993 first-person shooter Doom, running entirely on the dongle itself.
The game's performance is surprisingly smooth — roughly equivalent to a decent mid-range desktop PC of the era, and would be much improved by reducing the screen size in the game's settings. Unfortunately, John admits "there is still a lot of work to do" in the project — such as figuring out a way to connect a keyboard so the game can be played, rather than just running through its pre-programmed demo sequences.
The full demonstration is available in the video embedded above and on John's YouTube channel; at the time of writing, source code for the project had not yet been released.