Doom8088 performance improvement
HTML-код
- Опубликовано: 30 сен 2024
- Doom was originally designed in 1993 for 32-bit DOS computers with 4 MB of RAM. It's mostly written in C code with very little assembly code. It has been ported to all kinds of systems. Usually these systems are 32-bit or more and have a flat memory model.
Doom8088 is a port for PCs with a 16-bit processor like an 8088 or a 286, and with VGA or MCGA graphics.
This video shows Doom8088 running in 86box emulating a 286 @ 25 MHz.
Download Doom8088 from github.com/Fre...
Impressive, should be interesting to see how well it runs when surface textures are introduced
Texture mapping the walls decreases the performance by 25%.
Wow, you almost made SNES doom 😂. Seriously though this is impressive work 👍
Doesn't Wolfenstein3d run on a 286 and it has textured walls? Maybe with a little more optimization you'll get there, great project btw!
the latest version has textured walls and pc speaker sound effects
This is insanely impressive!!! I'd love to watch progress go by :) is the code open source and are you doing this in assembly or C?
It's all in C right now, but I want to rewrite some math functions in assembly. There's a link the description to the GitHub page where the code is hosted.
"We already have Doom at home."
Bless your wizardry.
"Doom runs on everything"
This makes 320x200 look like 4K
it's not a slideshow anymore!
what'd you do?
I've decreased the horizontal resolution from 120 pixels to 60. And I've rewritten the multiplication and division functions.
@@DookNookim ah awesome ty, awesome project btw!
I understand that you are using flat colors for walls and floors to save on performance (as textures on such hardware are expensive), but could you please use colors that are closer to the general color of the texture they're supposed to replace?
Texture mapped walls are on the to-do list.
I've already looked at how FastDoom determines the color of the flat colored floors.
Can you explain what this project is about? Thanks!!
Hm, not sure, but I guess it's an attempt to port (or, maybe, optimise) Doom to Intel i286
Doom was originally designed in 1993 for 32-bit DOS computers with 4 MB of RAM. It's mostly written in C code with very little assembly code. It has been ported to all kinds of systems. Usually these systems are 32-bit or more and have a flat memory model.
Doom8088 is a port for PCs with a 16-bit processor like an 8088 or a 286, and with VGA or MCGA graphics.
Imagine if Doom was released 5 years earlier to run on that generation of PCs.
@@DookNookim Neat. Subbed.
Very impressive! m
Reminds me of the Atari 2600 Doom hoax from back in the day.
nice
Amazing.
Good game
Nice work but if somebody has still 286 it is better to play Wolfenstein 3d
why not both?
I played Wolfenstein shareware on a 286 over 30 years ago, IIRC it was pretty slow.
Were there any 8086 systems with VGA graphics?
There are some videos of it on RUclips.
Sure. I doubt there were many that were sold like that, but installing an ISA VGA card was always an option.
Speaking from experience, one of the PCs I had growing up was a 10MHz 8088 with a VGA card (upgraded from its original Hercules graphics adapter).
How much memory does this use?
640 kilobytes
Its just gba doom nothing different about it. In all seriousness this is incredible.
Doom8088 is based on GBADoom, the prBoom port for the Game Boy Advance from 2019, not the commercially released Doom port from 2001. So it pretty similar to the original Doom from 1993.
@@DookNookim ok thats really funny
Actually, DOS was a 16-bit operating system. Your video description is wrong.
Would "Doom was originally designed in 1993 for 32-bit computers running DOS with 4 MB of RAM." be more accurate?
@@DookNookim - Still not quite there. The terms 16- and 32-bit usually refer to the OS, rather than the computer itself. The same PC, with the exact same hardware, could have either a 32- or a 64-bit OS installed. This is rare nowadays, of course, as 64-bit OS have become the norm, but for a while both options existed.
BTW, Windows 3.1 was also 16-bit. However, Windows NT 3.1 (the ancient forefather of Windows 10/11) was 32-bit.
@@AlexeiVoronin How about "Doom was originally designed in 1993 for PCs with a 32-bit processor like a 386 or a 486, and with 4 MB of RAM, running DOS."?
@@DookNookim - No need for bits. It should be enough to say it was designed for 386/486 computers running DOS 5.00 or later.
@@AlexeiVoronin I think it's important to note 32-bits. The Doom source code is full code that expects integers to be 32-bits. That all needed to be rewritten. It mostly ment changing int to int32_t.
The code also expects a flat memory model. That needed to be rewritten to a segmented memory model. Right now it's impossible to play E1M6, because it's bigger than 64k.
At that point even Wolfenstein looks and runs better.
Nope. Nothing could look or play worse than that.
@@procactus9109 Catacomb series: