Uploaded February 2022 | Updated September 2026, 1 week ago
This is a fun little C++ project, inspired by the legendary 8088 Corruption/Domination programs.
Windows cmd.exe can only display standard ASCII characters in 16 colors. Using a 12x7 pixel font and shading characters 176 ░, 177 ▒ and 178 ▓, I can increase the number of colors to 616 using dithering. Contiguous characters of the same colors are combined into blocks to minimize the number of color change commands.
What's new in version 2?
- lookup table for color conversion instead of doing nearest-neighbor-search algorithm just-in-time
- compare downsampled frame with previous frame and only draw the pixels/characters that have changed; draw changed characters in contiguous segments to minimize std::cout and color change commands
- framerate is now between 40% to 400% higher (best for scenes with stationary background)
Version 1 video: youtu.be/fkgwCvZiqmg
Streaming video through SSH from a remote server in Windows Subsystem for Linux: youtu.be/72VGIiWKMEU
Code Snippets:
- Colors in Console with C++: stackoverflow.com/a/67195569/9178992
- Dithering: stackoverflow.com/a/68460068/9178992
- Screen Recording in C++: stackoverflow.com/a/68483943/9178992
8088 Corruption/Domination
- youtu.be/L6CkYou6hYU
- youtu.be/MWdG413nNkI
Time Stamps:
0:00 Intro
0:10 Tron Legacy (2010), Flynn vs Rinzler scene
0:51 Tron Legacy (2010), Lightbike scene
2:03 The Matrix (1999), "Dodge This" Scene
2:54 Spongebob, "Tea at the Treedome" (1999), "I don't need it" scene
4:09 :D
Video References:
- Tron Legacy (2010), Flynn vs Rinzler scene, youtu.be/YyoKXfBQgXw
- Tron Legacy (2010), Lightbike scene, youtu.be/SqSuRdkglxM
- The Matrix (1999), "Dodge This" scene, youtu.be/ggFKLxAQBbc
- Spongebob, "Tea at the Treedome" (1999), youtu.be/m5uayeTCYJQ
- Rick Astley - Never Gonna Give You Up (1987), youtu.be/dQw4w9WgXcQ
This is a fun little C++ project, inspired by the legendary 8088 Corruption/Domination programs.
Windows cmd.exe can only display standard ASCII characters in 16 colors. Using a 12x7 pixel font and shading characters 176 ░, 177 ▒ and 178 ▓, I can increase the number of colors to 616 using dithering. Contiguous characters of the same colors are combined into blocks to minimize the number of color change commands.
What's new in version 2?
- lookup table for color conversion instead of doing nearest-neighbor-search algorithm just-in-time
- compare downsampled frame with previous frame and only draw the pixels/characters that have changed; draw changed characters in contiguous segments to minimize std::cout and color change commands
- framerate is now between 40% to 400% higher (best for scenes with stationary background)
Version 1 video: youtu.be/fkgwCvZiqmg
Streaming video through SSH from a remote server in Windows Subsystem for Linux: youtu.be/72VGIiWKMEU
Code Snippets:
- Colors in Console with C++: stackoverflow.com/a/67195569/9178992
- Dithering: stackoverflow.com/a/68460068/9178992
- Screen Recording in C++: stackoverflow.com/a/68483943/9178992
8088 Corruption/Domination
- youtu.be/L6CkYou6hYU
- youtu.be/MWdG413nNkI
Time Stamps:
0:00 Intro
0:10 Tron Legacy (2010), Flynn vs Rinzler scene
0:51 Tron Legacy (2010), Lightbike scene
2:03 The Matrix (1999), "Dodge This" Scene
2:54 Spongebob, "Tea at the Treedome" (1999), "I don't need it" scene
4:09 :D
Video References:
- Tron Legacy (2010), Flynn vs Rinzler scene, youtu.be/YyoKXfBQgXw
- Tron Legacy (2010), Lightbike scene, youtu.be/SqSuRdkglxM
- The Matrix (1999), "Dodge This" scene, youtu.be/ggFKLxAQBbc
- Spongebob, "Tea at the Treedome" (1999), youtu.be/m5uayeTCYJQ
- Rick Astley - Never Gonna Give You Up (1987), youtu.be/dQw4w9WgXcQ










