thorr wrote: ↑Fri May 17, 2024 6:23 pm
As a follow up, my guess is the composite hardware in the IIc combined with the hardware in the IIc monitor generates the correct colors.
Well, yes.
Composite color is created by artifacting on your NTSC CRT from a pure black & white picture.
Can you try comparing colors between your IIc and the core running in black & white mode?
That should give a much closer result... since it's your real (analog) NTSC hardware producing colors.
(also by the way, there is no color difference in Color 1 vs. Color 2; they are different in how text is handled at the lower part of the screen
... maybe we should rename it to "Color+Text" or something like that)
thorr wrote:
Interestingly, my color photo above more closely matches Newsdee's images above than the MiSTer actually produces out the composite output.
The palettes are designed to work with modern displays using RGB,
so using them with Composite video wouldn't be accurate (it would introduce other deviations).
My image was made by putting together direct video dumps (Win + PrtScr) from MiSTer;
so your comment is encouraging... it suggests the palettes are working as expected
thorr wrote:
Also, are the HGR colors different?
Some posts online say they are but after watching a couple of videos on color theory, I'm convinced simple visual checks are very misleading.
In fact there is no "correct" NTSC palette so to speak. Modern displays are calibrated to produce color as per some standard (such as sRGB), but the early CRT ignored all that; they just let our wetware interpret color based on whatever frequency of light they emit. Composite color is basically white dots appearing at certain frequencies changing the wavelengths emitted.
As a result, perceptions varies greatly per person and the monitors involved. I could calibrate colors by eye to make my LCD modern display exact to my PVM (by my own eyes), but to you it may look completely different. Worse, even for the same person, changing the "knobs" on a display (i.e. brightness, contrast, chroma, etc) can change the result. I like to push high chroma on my PVM for some games, and reduce it for others...
In particular that means that tweaks of one knob affects all colors at once (as it would on a real display) rather than being a per-color adjustment.
What prompted me to improve the Apple II colors for the core was a Reddit post by somebody (Linards) who spent a lot of time going over the maths of how NTSC and color perception works; and came up with a palette that gets as close to the Apple IIgs RGB colors as NTSC can..
That is just one possible palette...but it was determined by finding how to "adjust the knobs" to get those colors, and he provided enough documentation (source code, references, posts) for somebody to go through it and try to challenge / improve the method.
I like that approach a lot; in fact, ideally I'd like to have the core let users adjust the knobs by themselves, but the maths are a bit complex and I'm not sure it would work well in FPGA synthesis (I'm happy to be proven wrong - just not versed enough in HDL and the specific maths to do it right, at least right now).
Note that Linards also compared to a real Apple IIe and found the colors to match; we ought to verify of course
Reddit posts: