News DOOM can now run on a quantum computer with Quandoom port — seminal FPS blood and gore mixed with spooky action

The article said:
the QASM code requires 72,376 qubits and 80 million gates. ... Thankfully DOOM fans can sidestep the physical hardware requirements on their home PCs by running the code in a QASM simulator.

Even with the simulator running on a humble laptop PC, Quandoom can achieve 10-20 FPS,
It seems pretty clear that however he's using the qubits, it's in some kind of cheesy way, or else you wouldn't be able to simulate it on a classical computer! I'd be curious to know more about what he's doing and whether it truly qualifies as quantum computing. It feels to me like maybe the most he's doing is just using qubits to hold state, but otherwise just using classical, sequential logic to run the game.
 
I love this wireframe effect.

eeXXeFHAkBWWK5waZcZWNB-970-80.gif
 
  • Like
Reactions: Sluggotg
I love this wireframe effect.
Well, it lacks hidden line removal, which makes it kind of a cheat - not to mention a little harder to visually interpret, when the scene gets more busy.

I believe there are GPU debuggers that can force regular games into wireframe mode, if that really interests you. Then again, the meshes in modern games will probably be too dense for it to have the same visual effect. Probably games from 20+ years ago would look better that way.
 
It seems pretty clear that however he's using the qubits, it's in some kind of cheesy way, or else you wouldn't be able to simulate it on a classical computer! I'd be curious to know more about what he's doing and whether it truly qualifies as quantum computing. It feels to me like maybe the most he's doing is just using qubits to hold state, but otherwise just using classical, sequential logic to run the game.
I agree, otherwise it would seem ridiculous that a game built for a x286 processor requires so many qubits…I could have sworn I read somewhere that qubit computation power stacked exponentially, as in, 1 additional qubit will double the performance…

Also, it seems that, if this was truly written as a quantum program and the qubit requirement is legitimate and not some sort of inefficient use case like your “hold state” hypothesis, it is difficult to make quantum logic act like classical logic, yet pedestrian to make classical logic act like quantum logic via that quantum emulator. I’m not familiar enough with quantum computing to know if my assertions are accurate or not though. Just thinking out loud.
 
I agree, otherwise it would seem ridiculous that a game built for a x286 processor requires so many qubits…
Did it run on a 286?? I first played it on a 386SX (16 MHz, I think) and had to shrink down the viewport a few steps for playable frame rates. It definitely required a VGA monitor, and I think it was pretty rare to see those on a 286. I don't doubt there were some, but by the time VGA clones started popping up, I think 386's had become fairly mainstream.

I could have sworn I read somewhere that qubit computation power stacked exponentially, as in, 1 additional qubit will double the performance…
I'm no expert on quantum computing, but I think that's specifically for combinatorical searches.
 
  • Like
Reactions: NinoPino
Did it run on a 286?? I first played it on a 386SX (16 MHz, I think) and had to shrink down the viewport a few steps for playable frame rates.
You are right. It was Wolfenstein that was developed for 286 while Doom was 386 only.

It definitely required a VGA monitor, and I think it was pretty rare to see those on a 286. I don't doubt there were some, but by the time VGA clones started popping up, I think 386's had become fairly mainstream.
Monitors were not a problem because it requires a simple 320x200 resolution that can be achieved also with a CGA or EGA monitor. At Doom release date, also high resolution (for the time) monitors were widespread.
 
  • Like
Reactions: bit_user
Monitors were not a problem because it requires a simple 320x200 resolution that can be achieved also with a CGA or EGA monitor. At Doom release date, also high resolution (for the time) monitors were widespread.
IIRC, DOOM ran at 320x240. It was a non-standard resolution, but supported by all fully-compliant VGA hardware.

Regardless, the reason I claim Doom didn't support less than VGA is just due to its color palette. I cannot imagine DOOM at EGA's 16 colors, much less CGA's 4 colors! Anyway, if you were going to require a 386, then VGA was almost a given. As I said, I think the 386 didn't really become popular before VGA did. It came out in late 1993, and my dad already had a XGA (1024x768) graphics card and monitor a couple years prior.
 
IIRC, DOOM ran at 320x240. It was a non-standard resolution, but supported by all fully-compliant VGA hardware.
VGA 256 colors resolution was 320x200 to stay in a segment of 64kB.
320x240x8bit was not a VGA resolution.
Of course it is a limitation of the VGA graphic card, not of the monitor.
 
Last edited:
VGA 256 colors resolution was 320x200 to stay in a segment of 64kB.
Note how Doom had a control panel at the bottom of the screen. The main part that needed continual updates was at the top.

Also, I doubt the engine did direct draws to the screen. I suspect they probably rendered to an in-memory buffer and then copied it to video memory. As ISA was a 16-bit bus, you'd get better efficiency this way, rather than plotting individual pixels. I think ray-casting algorithm used by Doom walked vertically, which meant you wouldn't naturally be writing horizontally-adjacent pixels.

320x240x8bit was not a VGA resolution.
Of course it is a limitation of the VGA graphic card, not of the monitor.
It wasn't one of the pre-programmed video modes, but standard VGA hardware could be configured to do it. It was coined "Mode X", by Michael Abrash.

If you were willing to dive into the registers, you could actually configure classic VGA hardware to do a range of interesting things. Not quite as fancy as the Amiga's chipset, but some neat hacks were possible.
 
Did it run on a 286?? I first played it on a 386SX (16 MHz, I think) and had to shrink down the viewport a few steps for playable frame rates. It definitely required a VGA monitor, and I think it was pretty rare to see those on a 286. I don't doubt there were some, but by the time VGA clones started popping up, I think 386's had become fairly mainstream.


I'm no expert on quantum computing, but I think that's specifically for combinatorical searches.
Oh you are right, I played it on a 486 years after it came out.
 
  • Like
Reactions: bit_user
Note how Doom had a control panel at the bottom of the screen. The main part that needed continual updates was at the top.

Also, I doubt the engine did direct draws to the screen. I suspect they probably rendered to an in-memory buffer and then copied it to video memory. As ISA was a 16-bit bus, you'd get better efficiency this way, rather than plotting individual pixels. I think ray-casting algorithm used by Doom walked vertically, which meant you wouldn't naturally be writing horizontally-adjacent pixels.
There is no problem in direct writing video memory in mode 13h. A simple mov in asm or a pointer dereference in C.

It wasn't one of the pre-programmed video modes, but standard VGA hardware could be configured to do it. It was coined "Mode X", by Michael Abrash.
Really interesting. I do not remember of this or I never knew of this mode.

If you were willing to dive into the registers, you could actually configure classic VGA hardware to do a range of interesting things. Not quite as fancy as the Amiga's chipset, but some neat hacks were possible.
Anyway I continue to insist that the original Doom had not used such resolution. Also all other games I tried used 320x200 from what I can remember.
After little search I found this : https://retrocomputing.stackexchang...es-used-mode-x-as-described-by-michael-abrash
 
Last edited:
There is no problem in direct writing video memory in mode 13h. A simple mov in asm or a pointer dereference in C.
My point was that if you're writing single pixels, then you're wasting 50% of the ISA bus' bandwidth. So, what you'd prefer to do is write at least a pair of even-addressed pixels at a time.

Anyway, what I said about the HUD being at the bottom was irrelevant for Mode X, since it requires unchaining the planes. If you use Mode X, the entire 256 kiB of VGA's VRAM fits in the 64 kiB aperture window, except that you have to select which of the 4 planes you want to write.

You obviously wouldn't want to switch planes on every pixel access, so using unchained modes would take some careful planning. I seem to recall Abrash had a hack for accelerating flat-shaded polygon drawing, where you could write all 4 planes at once. Hacks like that were one of its main appeals, much more so than just the square pixel thing.

Really interesting. I do not remember of this or I never knew of this mode.
There's even a Wikipedia page devoted to it!

Anyway I continue to insist that the original Doom had not used such resolution.
TBH, I don't know for a fact what resolution it used. I do know that Quake supported some funky 256-color resolutions that definitely should've been accessible only via unchaining.

Also all other games I tried used 320x200 from what I can remember.
It was quite popular. As you mentioned, it was the BIOS mode 19 (0x13 in C; 13h in asm).

Cool link! I heard of & even played a few of them.
 
Last edited:
  • Like
Reactions: NinoPino

TRENDING THREADS