Catch up on stories from the past week (and beyond) at the Slashdot story archive

 



Forgot your password?
typodupeerror
×
IT

Developer Runs Doom On $50 Apple Lightning To HDMI Adapter 64

A developer has successfully run the classic video game Doom on Apple's $50 Lightning to HDMI adapter, exploiting the device's built-in system-on-chip that runs a simplified iOS version.

Developer Runs Doom On $50 Apple Lightning To HDMI Adapter

Comments Filter:
  • by zuckie13 ( 1334005 ) on Wednesday February 05, 2025 @11:12AM (#65143921)

    The iOS SOC in that adapter probably has more capability than the whole desktops that ran it initially, so sure why not.

    • Re: (Score:2, Troll)

      I guess my question is... why the fuck do we need a chip like that in an hdmi adapter
      • by wed128 ( 722152 )
        My guess is that the process of negotiation and conversion for lightning and HDMI is computationally expensive enough, and the chip is inexpensive enough, that it's not worth it to use a lesser processor.
        • Nope. Apple made a custom asic to make the lives of third parties harder
          • Apple made a custom asic to make the lives of third parties harder

            Well, also because Lightning port dates from antiquity (at least in computing terms), and thus doesn't have any capability to carry any display signal at all (as opposed to USB-C in Display Port Altmode, or to MHL-enabled microUSB connector).
            The only way to make an iShiny device display on a screen is to have the device "kind-of-sort-of-AirPlay" its screen to the adapter. And inside the adapter have a miniature computer with an actual HDMI-out run a streaming video player.

            But yes, they did it in the most an

        • My guess is that the process of negotiation and conversion for lightning and HDMI is computationally expensive enough,

          You're on the right track but the details are even worse than that.

          Unlike USB-C (which in "Alt mode" can map Display Port to some of the high speed lanes, instead of USB3), and micro USB (which can be used in "MHL" mode, i.e., the entire port speaks HDMI instead of USB2 and can be connected to a screen's regular HDMI using a special MHL cable), Apple's Lightning doesn't have any capability to carry an actual display signal. At all. Zilch. Nada. No HDMI, No DisplayPost.

          So the only way they could do an HDMI a

      • by edwdig ( 47888 )

        Doom ran on a 386, which released in 1985. There's not much value in mass producing chips weaker than that today.

        • Crawled, more like. It only ran on a 486 DX.

          • Crawled, more like. It only ran on a 486 DX.

            It ran on a Super Nintendo with a co-processor that definitely was not a 486 DX.

            • SNES Doom is a quite different game, that utilizes textures and most of the levels of Doom. It uses a different engine that lacks a lot of graphics features (flats, transparent textures), has monster textures for only one side rather than eight, lacks most of monster AI, etc. And even with that limitations, it shows only a small window with halved resolution.

          • by ed1park ( 100777 )

            Agreed. I remember lurking on BBS forums on my 386 reading about how we would all need to upgrade to a 486 with a whopping 4MB of RAM to play it properly! One of the most anticipated games ever until Quake in those days. Ah the memories.

      • There is insufficient bandwidth for full HDMI. So the iOS device compresses output video and the HDMI adapter decompresses it.
  • Pretty sure I need some controlled supply lines and a way to validate code signatures.
    • and a way to validate code signatures.

      Yes, according to a comment from the author, the magic is hacking around the DRM, and is achieved using exploits for iOS of the same vintage, because that embed computer inside the adapter runs(*) a very stripped down version of iOS.

      (*): Well technically it doesn't have any local storage, so in practice the adapters waits for that stripepd-down iOS to be sent from the iShiny device each time it is initialised (normally allowing for better image quality as the software improves, or sending a hacked firmware

  • by Petersko ( 564140 ) on Wednesday February 05, 2025 @11:14AM (#65143927)

    I looked it up. You can't upgrade the RAM. Or anything else for that matter. Why anybody would lock themselves in like that is beyond me.

  • These have gotten lame now. Any Turing machine runs doom. And no, I don't want to see doom running on tape moving machine. How about doing something else for a change? I like the adaptor hacking part, but then running Doom on it is like whatever. Don't get me wrong I loved Doom back in 1993 or whenever but did we really need to keep rehashing Doom and only Doom? It had a great contribution to gaming and 3D but how about maybe run a demo of Maze war and then show some video game evolution all the way up to a

    • Doing it with a decent framerate at least demonstrates some decent MIPS and I/O capabilities that aren't addressed in the Turning Machine model of computing. That's the problem with a TM. It can't tell you the time of day, because execution time is a side effect that lives outside of that theoretical model.

      • by narcc ( 412956 )

        decent MIPS and I/O capabilities that aren't addressed in the Turning Machine model of computing

        Er, you might want to dig out your old notes. Or borrow someone else's.

        That's the problem with a TM. It can't tell you the time of day

        Don't be so sure [youtube.com]

        because execution time is a side effect that lives outside of that theoretical model

        Hmm... Maybe skip the notes and dust off your old text book.

        • Cute video. not actually using Turing's description. But that's fine, it's enjoyable at least.
          It's was extremely useful for generalizing computational theory and algorithms and in demonstrating the halting problem.

          You might want to check your own notes on what an algorithm is.

          • by narcc ( 412956 )

            You might want to check your own notes on what an algorithm is.

            Where do you believe I've gone wrong?

            • I mean, his username seems to indicate he's a support of a particular political person... and we all know how those people are like... ;)
              • I really must have been an impossibly early adopter of the Orange King's cult to have such a low uid.

        • by wed128 ( 722152 )
          That video is impressive, but if it keeps accurate time (there's no audio description, and the video isn't long enough to see), then either it's receiving an external time signal (not part of the turing model) or it's dependent on the GOL step rate (also not part of the turing model)
    • Thought I suspect you wouldn't know where to start.

    • by Rinnon ( 1474161 )
      Yeah, I too remember when the internet was full of possibilities. Now it's full of memes. Trying to suggest memers "do something more productive" though is a bit... well you get the idea.
    • Re:So what? (Score:5, Informative)

      by ClickOnThis ( 137803 ) on Wednesday February 05, 2025 @11:46AM (#65144051) Journal

      The astounding thing about a waltzing bear is not how gracefully it waltzes but that it waltzes at all. - I think this is from Robert A. Heinlein's Time Enough for Love.

      It seems Doom on obscure platform [whatever] has become the new waltzing bear. Yeah, lame in terms of utility, but good for geek creds.

      Now I'd like to see Doom running as an Excel spreadsheet. Oh, wait. [gamedeveloper.com]

      • Pfff. Excel is Turing complete so that doesn't impress me. What impresses me is now when you wife tells you that you're Doomed for the next 18 years, you don't know if it is because her pregnancy test was positive, or if she was actually simply playing Doom on it. https://www.youtube.com/watch?... [youtube.com]

    • Re:So what? (Score:4, Interesting)

      by smoot123 ( 1027084 ) on Wednesday February 05, 2025 @11:51AM (#65144057)

      These have gotten lame now. Any Turing machine runs doom.

      Well, yes, but. I'm continuously astounded (a) what everyday items have embedded SoC's on them and (b) how creative people get reprogramming those controllers.

      I'm also gobsmacked the easiest way to make the dongle work was to produce a stripped down iOS. I mean, I get it, you've got the OS source just sitting there in your local repo and perhaps sharing key exchange code would be handy. But surely a video dongle could just run some code on the bare silicon in real mode. Why does it need an OS at all?

      • by GoTeam ( 5042081 )

        Why does it need an OS at all?

        So the "right" group can slip something in there if needed... but it'll just be used against the bad guys. For real this time!

        • Why does it need an OS at all?

          So the "right" group can slip something in there if needed... but it'll just be used against the bad guys. For real this time!

          That SoC doesn't even have a ROM. The firmware is loaded every time it's plugged in.

          And wtf would an iPhone-HDMI dongle be an attack vector for, like you couldn't just sneak a SoC into a generic charger adapter instead.

      • by Anonymous Coward

        >Why does it need an OS at all?
        It doesn't, and my cynical opinion, it's probably because whoever did the design at Apple simply didn't know how to write code for an embedded processor without an operating system.
        Think of how many developers design docker images for cloud services that contain bloated operating systems to run a microservice. Or node projects with dozens of dependencies for trivial functions. Or how many "desktop apps" are just bloated 100MB-300MB electron webapps.
        If it works acceptably, i

      • These have gotten lame now. Any Turing machine runs doom.

        Well, yes, but. I'm continuously astounded (a) what everyday items have embedded SoC's on them and (b) how creative people get reprogramming those controllers.

        I'm also gobsmacked the easiest way to make the dongle work was to produce a stripped down iOS. I mean, I get it, you've got the OS source just sitting there in your local repo and perhaps sharing key exchange code would be handy. But surely a video dongle could just run some code on the bare silicon in real mode. Why does it need an OS at all?

        It's not an OS by any definition, the firmware is just a kernel that runs a single process, not even a filesystem. The dev firmware apparently has a little filesystem with some debug utilities, that's what this guy used.

        https://panic.com/blog/the-lig... [panic.com]

    • by Tarlus ( 1000874 )

      I think the bigger takeaway is the absurdity of an HDMI cable requiring an embedded SOC

      • the absurdity of an HDMI cable requiring an embedded SOC

        It comes from how shitty Lightning is. There's no way to output an actual display signal on it. No DisplayPort nor HDMI (as oposed to, say, a USB-C in DP AltMode or a MHL-capable microUSB).

        The only way to get a screen output out of an iShiny device is to "sort-of-kind-of-AirPlay" the display over to the adapter, where a tiny stripped down computer runs a video stream player to generate the actual HDMI signal.

    • The real question is - will it run Crysis
    • Blasphemy
  • by Viol8 ( 599362 ) on Wednesday February 05, 2025 @11:39AM (#65144025) Homepage

    Just to convert from one serial protocol to another? Talk about overkill.

  • by JudgeFurious ( 455868 ) on Wednesday February 05, 2025 @12:43PM (#65144223)

    The older I get the more convinced I am that one day I will see someone running Doom on a hearing aid.

  • by paradigm82 ( 959074 ) on Wednesday February 05, 2025 @03:21PM (#65144789)
    Doom also runs on a Raspberry Pico - the MCU costs $1 and a board with flash etc. can easily be had for $3. That buys you a board with dual-core 133 MHz CPU (+ PIO helper "cores"), 2M flash, RAM. There is not even a dedicated graphics card, but the CPU cores are fast enough that they can bit-bang the video and sound signals: https://www.youtube.com/watch?... [youtube.com]
    • a board with dual-core 133 MHz CPU (+ PIO helper "cores") {...} but the CPU cores are fast enough that they can bit-bang the video and sound signals:

      Well according to the author, it's not the CPU directly bitbanging, but the one of the PIO state-machine cores doing the display:
      https://kilograham.github.io/r... [github.io]

  • Here's a functioning Turing Machine Computer out of Lego:
    https://ideas.lego.com/project... [lego.com]

    That's a good start. And a fantastically interesting video.

Live within your income, even if you have to borrow to do so. -- Josh Billings

Working...