The Amiga No One Wanted

The Amiga has a lot of fans, and rightly so. The machine broke a lot of ground. However, according to [Dave Farquhar], one of the most popular models today — the Amiga 600 — was reviled in 1992 by just about everyone. One of the last Amigas, it was supposed to be a low-cost home computer but was really just a repackaged Amiga 1000, a machine already seven years old which, at the time, might as well have been decades. The industry was moving at lightspeed back then.

[Dave] takes a look at how Commodore succeeded and then lost their way by the time the 600 rolled out. Keep in mind that low-cost was a relative term. A $500 price tag was higher than it seems today and even at that price, you had no monitor or hard drive. So at a $1,000 for a practical system you might as well go for a PC which was taking off at the same time.

By the time Commodore closed down, they had plenty of 600s left, but they also had refurbished 500s, and for many, that was the better deal. It was similar to the 500 but had more features, like an external port and easy memory expansion. Of course, both machines used the Motorola 68000. While that CPU has a lot of great features, by 1992, the writing was on the wall that the Intel silicon would win.

Perhaps the biggest issue, though, was the graphics system. The original Amiga outclassed nearly everything at the time. But, again, the industry was moving fast. The 600 wasn’t that impressive compared to a VGA. And, as [Dave] points out, it couldn’t run DOOM.

There’s more to the post. Be sure to check it out. It is a great look into the history of the last of a great line of machines. Maybe if Commodore had embraced PC interfaces, but we’ll never know. [Dave’s] take on the end of the Amiga echos others we’ve read. It wasn’t exactly Doom that killed the Amiga. It was more complicated than that. But Doom would have helped.

A CaptionCall Phone Succumbs To Doom, Again

Pour one out for yet another device conquered. This one’s a desk phone for conferences and whatnot, a colour display, a numpad, and a bog standard handset with a speaker and mic. Naturally, also running Linux. You know what to expect – [Parker Reed] has brought Doom to it, and you’d be surprised how playable it looks!

This is the second time a CaptionCall device has graced our pages running Doom — CaptionCall patched out the previous route, but with some firmware dumping and hashcat, root has been acquired once again. [Parker] has upgraded this impromptu gaming setup, too – now, all the buttons are mapped into Doom-compatible keyboard events coming from a single input device, thanks to a C program and an Xorg config snippet. Feel free to yoink for your own Doom adventures or just general CaptionCall hacking!

If you’re interested in the hacking journey, get into the exploitee.rs Discord server and follow the hack timeline from password recovery, start to finish, to Doom, to the state of affairs shown in the video. Now, as the CPU speeds have risen, should the hackerdom switch away from Doom as the go-to? Our community remains divided.

Continue reading “A CaptionCall Phone Succumbs To Doom, Again”

What Game Should Replace Doom As The Meme Port Of Choice?

DOOM. The first-person shooter was an instant hit upon its mrelease at the end of 1993. It was soon ported off the PC platform to a number of consoles with varying success. Fast forward a few years, and it became a meme. People were porting Doom to everything from thermostats to car stereos and even inside Microsoft Word itself.

The problem is that porting Doom has kind of jumped the shark at this point. Just about every modern microcontroller or piece of consumer electronics these days has enough grunt to run a simple faux-3D game engine from 1993. It’s been done very much to death at this point. The time has come for a new meme port!

Good Game

Doom became a popular meme port for multiple reasons. For one, it’s just complex and resource-intensive enough to present a challenge, without being so demanding as to make ports impractical or impossible. It’s also been open-source for decades, and the engine has been hacked to death. It’s probably one of the best understood game engines out there at this point. On top of that, everybody plays Doom at some point, and it was one of the biggest games of the 90s. Put all that together, and you’ve got the perfect meme port.

However, you can always have too much of a good thing. Just as The Simpsons got old after season 10 and Wonderwall is the worst song you could play at a party, Doom ports have been overdone. But what other options are there? Continue reading “What Game Should Replace Doom As The Meme Port Of Choice?”

Screenshot of Linux in a PDF in a browser

Nice PDF, But Can It Run Linux? Yikes!

The days that PDFs were the granny-proof Swiss Army knives of document sharing are definitely over, according to [vk6]. He has managed to pull off the ultimate mind-bender: running Linux inside a PDF file. Yep, you read that right. A full Linux distro chugging along in a virtual machine all encapsulated within a document. Just when you thought running DOOM was the epitome of it. You can even try it out in your own browser, right here. Mind-boggling, or downright Pandora’s box?

Let’s unpack how this black magic works. The humble PDF file format supports JavaScript – with a limited standard library, mind you. By leveraging this, [vk6] managed to compile a RISC-V emulator (TinyEMU) into JavaScript using an old version of Emscripten targeting asm.js instead of WebAssembly. The emulator, embedded within the PDF, interfaces with virtual input through a keyboard and text box.

The graphical output is ingeniously rendered as ASCII characters – each line displayed in a separate text field. It’s a wild solution but works astonishingly well for something so unconventional.

Security-wise, this definitely raises eyebrows. PDFs have long been vectors for malware, but this pushes things further: PDFs with computational power. We know not to trust Word documents, whether they just capable of running Doom, or trash your entire system in a blink. This PDF anomaly unfolds a complete, powerful operating system in front of your very eyes. Should we think lightly, and hope it’ll lead to smarter, more interactive PDFs – or will it bring us innocent looking files weaponized for chaos?

Curious minds, go take a look for yourself. The project’s code is available on GitHub.

Continue reading “Nice PDF, But Can It Run Linux? Yikes!”

Running Doom On An Apple Lightning To HDMI Adapter

As a general rule of thumb, anything that has some kind of display output and a processor more beefy than an early 90s budget PC can run Doom just fine. As [John] AKA [Nyan Satan] demonstrates in a recent video, this includes running the original Doom on an Apple Lightning to HDMI Adapter. These adapters were required after Apple moved to Lightning from the old 30-pin connector which had dedicated pins for HDMI output.

As the USB 2.0 link used with Lightning does not have the bandwidth for 1080p HDMI, compression was used, requiring a pretty beefy processor in the adapter. Some enterprising people at the time took a hacksaw to one of these adapters to see what’s inside them and figure out the cause of the visual artifacts. Inside is a 400 MHz ARM SoC made by Samsung lovingly named the S5L8747. The 256 MB of RAM is mounted on top of the package, supporting the RAM disk that the firmware is loaded into.

Although designed to only run the Apple-blessed firmware, these adapters are susceptible to the same Checkm8 bootROM exploit, which enables the running of custom code. [John] adapted this exploit to target this adapter, allowing this PoC Doom session to be started. As the link with the connected PC (or Mac) is simply USB 2.0, this presumably means that sending keyboard input and the like is also possible, though the details are somewhat scarce on this aspect.

Continue reading “Running Doom On An Apple Lightning To HDMI Adapter”

You Can Now Play DOOM In Microsoft Word, But You Probably Shouldn’t

DOOM used to primarily run on x86 PCs. It later got ported to a bunch of consoles with middling success, and then everything under the sun, from random embedded systems to PDFs. Now, thanks to [Wojciech Graj], you can even play it in Microsoft Word.

To run DOOM inside Microsoft Word, you must enable VBA macros, and ignore security warnings, to boot. You’ll need a modern version of Word, and it will only work on Windows on an x64 CPU. As you might imagine, too, the *.DOCM file is not exactly lightweight. It comes in at 6.6 MB, no surprise given it contains an entire FPS. It carries inside it a library called doomgeneric_docm.dll and the whole doom1.wad data file. Once the file is opened, a macro then extracts all the game data and executes it.

If you think that Microsoft Word doesn’t really have a way of displaying live game graphics, you’d be correct. Instead, that DLL is creating a bitmap image of the game state for every frame, which is then displayed inside Word itself. It uses the GetAsyncKeyState function to grab inputs from the arrow keys, number keys, and CTRL and space so the player can move around. It certainly sounds convoluted, but it actually runs pretty smoothly given all the fuss.

While this obviously works, you shouldn’t get in the habit of executing random code in your word processor. It’s just not proper, you see, like elbows on the dinner table! And, you know. It’s insecure. So don’t do that.

Continue reading “You Can Now Play DOOM In Microsoft Word, But You Probably Shouldn’t”

Nice PDF, But Can It Run DOOM? Yup!

DOOM is a classic game to implement on a variety of platforms, but doompdf by [ading2210] is one we didn’t see coming. It runs a bit slow and controls are a little awkward but it does run. Entirely within a PDF file, at that.

How is this possible? PDFs are technically capable of much more than just displaying static content, and support JavaScript with their own library of functions. Adobe Acrobat implements the full spec, but modern web browsers implement at least a subset of the functionality in a sandboxed JavaScript runtime environment. Input and output are limited to things one might expect from a fancy PDF form (text input boxes, clickable buttons, things of that nature) but computation-wise, just about anything goes.

Continue reading “Nice PDF, But Can It Run DOOM? Yup!”