Doom on CGA (monochrome), 16-color EGA and the NES
Sign in to YouTube
Sign in to YouTube
Sign in to YouTube
Uploaded on Jan 22, 2011
This video illustrates running the PC game Doom on the CGA, EGA and NES displays*. It is a continuation to this video that I uploaded previously: http://www.youtube.com/watch?v=9YoqUM...
The different display modes featured in this video are listed below.
-- 1: CGA monochrome 640x200 mode (QBASIC's SCREEN 2) on a RGB display. There are exactly two colors: Black and White. One of the colors could be changed to any of the standard 16 CGA colors (for the entire screen at once), but I chose to stick with white.
-- 2: EGA 640x350 16-color mode (QBASIC's SCREEN 9). Palette was hand-chosen from the 64-color available selection on the EGA.
-- 3: Nintendo Entertainment System. Uses 256x224 display, divided into 16x16 tiles, each being a 2-bit bitmap + a 2-bit index to a list of palettes. A total of 4 palettes per screen, each palette being 3-color + one global background color (black here). Basically 13 colors were chosen from the NES's available 53 colors. Sprites were not utilized. Technically, this would be possible to do on the NES, except for the fact that the NES PPU's memory is not nearly fast enough to update the screen this fast. Maybe if you had a cartridge with a custom mapper that remaps VROM instantaneously so all you'll have to do is update the attribute tables once per frame. But then there's also the per-screen limit of unique tiles (tile number), which is not addressed in this video.
I am positively surprised how good each of these turned out, especially the EGA one. Doom would have been totally playable on the EGA! Marginally playable also on the CGA. Handhelds designers, take note!
* Or rather, it is a recording of shareware Doom being played on VGA mode 13h earlier, that I postprocessed to conform to the hardware constraints of each output device. It contains the same video clip three times, rendered with different color features. It is NOT a palette hack on 256-color Doom; no extra WADs or TSRs were loaded.
All the colorization, quantization and dithering was done with animmerger, http://bisqwit.iki.fi/source/animmerg...
I used positional dithering, because it is very well suited for animation, and because I like its appearance. Non-positional error-diffusion dithering methods, such as floyd-steinberg, produce massive amounts of *jittering* garbage.
One thing which I wanted to do, but I don't have the technology for it yet, is that I wanted to make the music & sound in the NES section sound like it would actually be on the NES. That is, two square wave channels, one triangle wave, one noise generator and one DPCM channel is all you get. But doing this would have delayed this video probably indefinitely; I've been wanting this for years so far but I have yet to make a breakthrough. I also contemplated on transforming the sound like it comes through the PC speaker (using the 6-bit PCM PIT trick) and using that in the CGA sections (I've tested similar conversions earlier successfully), but somehow I didn't feel it is necessary.
P.S. I think Doom's sound effects, especially the monster sounds, are awesome.
Here is the explanation of new the original dithering algorithm that I use in this video: http://bisqwit.iki.fi/story/howto/dit...
Standard YouTube License
- 28:11 LGR - Oddware - IBM 5151 Monochrome CRT, MDA, Hercules Overviewby Lazy Game Reviews Featured 29,460
- 15:00 Creating a raytracer for DOS, in 16 VGA colorsby Bisqwit10,414 views
- 14:56 256 colors is enough for everyoneby Bisqwit12,139 views
- 18:11 NES Memory Visualization: Super Mario Bros. 3by Bisqwit1,664 views
- 9:45 Doom on CGA (4-color and composite/colorburst mode) and EGAby Bisqwit7,101 views
- 20:04 The life of Doomguyby Archvile7826,318 views
- 12:57 DEATH BATTLE! - Fox VS Buckyby ScrewAttack!715,284 views
- 9:47 Indianapolis 500 The Simulation Graphic Modes & PC vs Amigaby Nocito8713,871 views
- 8:05 Keep Dreaming - Sega Dreamcast Development Hardware Collection - Adam Koralikby AdamKoralik63,168 views
- 0:39 POV-Ray animation "Dropping capsules" [HDRI Version]by Bisqwit1,107 views
- 14:58 DEATH BATTLE! - He-Man VS Lion-Oby ScrewAttack!1,048,064 views
- 17:07 MAC CONCEALER | Is it the BEST?by Destiny Godley59,361 views
- 11:47 DEATH BATTLE! - Master Chief VS Doomguyby ScrewAttack!3,367,219 views
- 32:40 DEATH BATTLE! - Goku VS Supermanby ScrewAttack!10,146,673 views
- 8:10 Video in old graphics modes (CGA, EGA, VGA, textmode)by JendaLinda3,418 views
- 15:01 Top Sixteen Worst Sega Genesis Games (OLD)by Kreastricon6284,272 views
- 11:00 NES Memory Visualization: Metroidby Bisqwit2,934 views
- 5:14 Prince of Persia with CGA graphics and internal speakerby Laukku12,138 views
- 2:51 Homebrew 6809 Computer: Color Video! (TMS9918A)by Matt Sarnoff13,597 views
- 10:15 DEATH BATTLE! - Link VS Cloudby ScrewAttack!3,329,463 views
- Loading more suggestions...