Hi, I ported DOOM to the Pinebuds Pro earbuds.
It's accessible over the internet, so you can join the queue and play DOOM on my earbuds from your PC!
More info as well as links to the github repos can be found on the site.
How are the PineBuds Pro, anyone have them? The Pine64 IRC network doesn't have a channel for PineBuds discussion so I haven't had an easy opportunity to ask.
Whenever I see another supposedly menial device including enough general purpose hardware to run Doom, I wonder whether I should think of that as a triumph of software over hardware or an economic failure to build cheaper purpose-built hardware for things like sending audio over a radio.
Ah yes the "good old days when we wrote assembly" perspective.
Like, I get it, but embedded device firmware is still efficient af. We end up stuffing a lot of power into these things because contrary to say wired Walkman headphones, these have noise cancellation, speech detection for audio ducking when you start having a conversation, support taking calls, support wakewords for assistants, etc.
A wireless earbud is closer in complexity to a WiFi router than a digital wristwatch.
Bluetooth is complicated. Noise canceling is complicated. Audio compression is complicated. Simply being an RF device is complicated.
It is an unfortunate physical reality that it requires a lot of processing to do all the jobs a Bluetooth earbud has to do. The incredible engineering success is that we can put a GHz class CPU in each earbud and all of that crazy processing happens on microwatts of power.
Putting supercomputers in your ears is mildly absurd on the face of it, but consider that we now have supercomputers that are so small, cheap, and energy efficient that we can put them and their batteries in our ears.
Besides, what's more wasteful, one silicon die or two? It a cortex CPU more wasteful than a 555 timer on equivalent die space? Is it more resource efficient to pay 10x more for a 2x larger die using 40x power and a bigger battery to go with it? Or is it most efficient to use the smallest, most efficient die, and the smallest battery you can get away with?
In the grand scheme of things, the "wasted" resources in the chip are essentially nil. You save far, far more resources by using more efficient processing. It's a few milligrams of silicon, carbon, and minerals. You should be far, far more concerned about the lithium batteries ending up in landfills.
On a tangent: I remember reading John Carmak saying that as game engines became more complex, he had to relinquish the idea of writing all the (engine) code himself, and start to rely on other folks contributions as well (this was in an interview after the release of Doom 3).
I think what really happened is that as Carmack became more senior he got more and more out of touch with the technology. So I don't understand why people still refer to his words as gospel, especially since the domain he's now in is so far outside of his original specialty.
Doom 2016 would've never been possible with him at the helm. Then again now they're adding viking bullshit to it so design by executive committee kills yet another beloved franchise.
Now ... I played the game when I was young. It was addictive. I don't
think it was a good game but it was addictive. And somewhat simple.
So what is the problem then? Well ... games have gotten a lot bigger,
often more complicated. Trying to port that to small platforms is
close to impossible. This makes me sad. I think the industry, excluding
indie tech/startups, totally lost the focus here. The games that are
now en vogue, do not interest me at all. Sometimes they have interesting
ideas - I liked little nightmares here - but they are huge and very
different from the older games. And often much more boring too.
One of my favourite DOS games was master of orion 1 for instance. I
could, despite its numerous flaws, play that again and again and
again. Master of Orion 2 was not bad either, but it was nowhere near
as addictive and the gameplay was also more convoluted and slower.
(Sometimes semi-new games are also ok such as Warcraft 3. I am not
saying ALL new games are bad, but it seems as if games were kind of
dumbed down to be more like a video to watch, with semi-few interactive
elements as you watch it. That's IMO not really a game. And just
XP grinding for the big bad wolf to scale to the next level, deal
out more damage, as your HP grows ... that's not really playing
either. That's just wasting your time.)
> Earbuds don't have displays, so the only way to transfer data to/from them is either via bluetooth, or the UART contact pads.
Bluetooth is pretty slow, you'd be lucky to get a consistent 1mbps connection, UART is easily the better option.
Does this means you can run a doom instance on each bud? Is it viable to make a distributed app to use the computing power of both buds at once?
It's possible to run Zork I-III Frotz under a pen, some FPGA and even interpreting a PostScript file. Even the Game Boy, the C64, MSX... So, Doom is not the most ported game ever.
There's gotta be a Moore's law corollary for "Doom ported to [blank]" milestones. I wonder where this all ends? Doom ported to a mechanical pencil! Doom ported to a clipper card! To a lightbulb??
38 comments
[ 2.3 ms ] story [ 59.8 ms ] threadBut, this probably makes more sense.
Like, I get it, but embedded device firmware is still efficient af. We end up stuffing a lot of power into these things because contrary to say wired Walkman headphones, these have noise cancellation, speech detection for audio ducking when you start having a conversation, support taking calls, support wakewords for assistants, etc.
Bluetooth is complicated. Noise canceling is complicated. Audio compression is complicated. Simply being an RF device is complicated.
It is an unfortunate physical reality that it requires a lot of processing to do all the jobs a Bluetooth earbud has to do. The incredible engineering success is that we can put a GHz class CPU in each earbud and all of that crazy processing happens on microwatts of power.
Putting supercomputers in your ears is mildly absurd on the face of it, but consider that we now have supercomputers that are so small, cheap, and energy efficient that we can put them and their batteries in our ears.
Besides, what's more wasteful, one silicon die or two? It a cortex CPU more wasteful than a 555 timer on equivalent die space? Is it more resource efficient to pay 10x more for a 2x larger die using 40x power and a bigger battery to go with it? Or is it most efficient to use the smallest, most efficient die, and the smallest battery you can get away with?
In the grand scheme of things, the "wasted" resources in the chip are essentially nil. You save far, far more resources by using more efficient processing. It's a few milligrams of silicon, carbon, and minerals. You should be far, far more concerned about the lithium batteries ending up in landfills.
No touch controls though, it just plays the intro loop
I wonder what his feelings are in this age of AI.
Doom 2016 would've never been possible with him at the helm. Then again now they're adding viking bullshit to it so design by executive committee kills yet another beloved franchise.
Now ... I played the game when I was young. It was addictive. I don't think it was a good game but it was addictive. And somewhat simple.
So what is the problem then? Well ... games have gotten a lot bigger, often more complicated. Trying to port that to small platforms is close to impossible. This makes me sad. I think the industry, excluding indie tech/startups, totally lost the focus here. The games that are now en vogue, do not interest me at all. Sometimes they have interesting ideas - I liked little nightmares here - but they are huge and very different from the older games. And often much more boring too.
One of my favourite DOS games was master of orion 1 for instance. I could, despite its numerous flaws, play that again and again and again. Master of Orion 2 was not bad either, but it was nowhere near as addictive and the gameplay was also more convoluted and slower.
(Sometimes semi-new games are also ok such as Warcraft 3. I am not saying ALL new games are bad, but it seems as if games were kind of dumbed down to be more like a video to watch, with semi-few interactive elements as you watch it. That's IMO not really a game. And just XP grinding for the big bad wolf to scale to the next level, deal out more damage, as your HP grows ... that's not really playing either. That's just wasting your time.)
Does this means you can run a doom instance on each bud? Is it viable to make a distributed app to use the computing power of both buds at once?
- Society continues to produce more and more powerful devices.
- More and more of these devices begin running Doom.
- When this reaches the saturation point, society becomes Doom.
https://news.ycombinator.com/item?id=46750419
> shhhh don't look don't look it's ok just join the queue
love it
Also, with DOOM running on all these things now, is it still impossible to get it to run well on a 386?
[1] https://www.decisionproblem.com/paperclips/index2.html