The saga of the color brown in the early years of the PC (2023)
nerdlypleasures.blogspot.com
nerdlypleasures.blogspot.com
A paragraph in praise of its display reads:
"Now lets move on to the display - and what a display it is. No less than 30 colours are available from Basic: white, off-white, cream, dark cream, light tan, light brown, bamboo, medium tan, medium brown, wood brown, sepia, burnt umber, oxtail, mustard (both French and English), khaki, off-brown, chocolate, dark tan, dark brown, dark burnt umber, burnt chocolate, drinking chocolate, ovaltine, light black, medium black, dark black, brown with a hint of green, brown with a hint of red, and brown with a hint of reddy-green. On some televisions these colours tend to look a little muddy, but with a little hunting around compatible sets can be found. For the purpose of this review I am using a VictoriVision Super Compatible available at most good electrical shops in Taiwan."
A very informative blog post about what's possible with CGA colors: https://int10h.org/blog/2015/04/cga-in-1024-colors-new-mode-...
In the case of brown, which should be an "intensity all off" color according to the pattern, the green-base bit (which strong green) is disabled and replaced with the green-intensity bit (which produces weaker green).
Without this, the default color would be #AAAA00, which has it's uses I'm sure, but in the abstract is a difficult color to love.
Brown is just dark orange, but what is interesting is that there exists no dark yellow, which is why IBM had decided to define the paired low intensity color for yellow as the more useful brown.
When the brightness of yellow is reduced without changing the hue, at some threshold the sensation of yellow disappears and the color is perceived as some kind of dark olive green. Changing continuously only the hue at low brightness passes continuously between a dark yellowish green and a greenish brown, without any intermediate color being perceived as yellow.
It seems that the sensation of yellow is produced by the approximate equality of the detected red and green components, but only when their intensity is high enough. This is similar to the sensation of white, which is quite distinct from the sensation of gray, even if these colors differ only in brightness.
How dare you. Brown is beautiful, unique, a flare of joy! You shall not sully its wonder, with such tryptophan-derived fantasy.
Fun fact, human skin is orange - both dark and light. If you saturate the colors of photos of people of any race, everyone is orange. Some AI face detectors use this to help identify where people are in images.
Blog entry on it here. http://blag.fingswotidun.com/2020/07/a-nicer-4-bit-colour-wi...
More recently I had the thought of training a resister-net in pytorch with quantization aware training (quantizing resister values to a few common values) to see if I could produce a set of colours to minimise the average perceptual distance to the closest palette entry from any color.
One day I'd like to make my own 74-logic game console, so this was one of the building blocks. It did make me think that having a cartridge port that as well as ROM, included Analog-in, Analog-out, and digital-in video lines so carts could tweak the colours. To use system default just connect analog-in to analog-out for each of R,G, and B. Cross the wires to get palette variations. Use the digital lines to resister-net your own (or just modulate the default). Or go crazy like a NES mapper.
At least ega could adjust the palette for more color options. This was pretty fun with rip colors and ansi. I'm thinking of making a filter to adjust ansi color codes to their RGB counterparts so art can display properly with modern terminals that have custom pallets.
This genuinely feels like a line out of a scifi novel written by Terry Pratchett.
Not many computer companies really had good industrial design. Except remarkably some business-oriented companies like SGI and (to a slightly lesser extent) Sun whose stuff was awesome for the era. Too bad it was completely unaffordable.