8088 MPH: The final version
scalibq.wordpress.com
scalibq.wordpress.com
https://www.google.at/search?q=cga+graphics&tbm=isch
.. and what do you see? Mostly Cyan/Magenta graphics, which was 'the norm' for that era. It took another few years before we got EGA - and then, finally VGA - graphics, which we've all become very accustomed to in this day and age.
But seeing 16 - and then 256 colors - being produced by a CGA is truly a feat of technical wonder. For anyone who doesn't get why this demo is so important, you have to understand: we never, ever thought such capabilities were possible with CGA hardware.
The 'impossibilities' are mainly on the software side: we require DOS 2.x, which didn't exist yet in 1981 (although it will run on a 1981 machine). You would also need DOS 2.x to support the 360KB double-sided 5.25" floppies. They existed in 1981, but early DOS only supported 120KB per side, and early PCs were fitted with single-sided floppy drives.
But this could all be worked around (and some parts could be modified to require less memory as well), so all of the audiovisual effects you see in 8088 MPH are possible on an actual stock 1981 machine, with DOS 1.0 and a single-sided 5.25" floppy drive.
Making it in 1981 would have been a lot more difficult - we cross-compiled (or cross-assembled) most of it on modern hardware and the graphics conversions would have been very slow without a modern PC. Not to mention the modern tools used for composing the music and drawing the art, or how much we used the internet for research, or how we built on many years of demoscene research. But there's no theoretical reason why it couldn't have been done then.
I remember pulling the 16 color trick in high school on the old original IBM PC's, but our CGA cards displayed a TON of snow whenever I updated the characters. Was never sure how to work around that, but it felt pretty elite to get nice colors out of that cyan-magenta-white CGA st show.
Getting 256 colors at no extra cost and 1024 colors with lotsa shepherding is so amazing.
For those who don't know the previous version (8088 Domination):