frederic-mahe / Analogue-Pocket

An issue tracker for Analogue's Pocket, a handheld FPGA device released in December 2021
57 stars 1 forks source link

Color space in GBA/GBC original LCD mode is inaccurate #21

Open coolbho3k opened 2 years ago

coolbho3k commented 2 years ago

The Pocket appears to currently implement a trivial desaturation filter for the original LCD modes for GBA/GBC. In reality, this is not how the GBA/GBC display actually looked.

The community has done deeper research into replicating the intended look of the original displays. Long story short, for the most accurate colors, the Pocket needs to implement the proper LUTs to transform the video output into the correct color space. Competitive solutions like GBI, MiSTer, and GBA Consolizer have implemented more accurate colors than the Pocket.

See Pokefan's post on this for the technical details: https://forums.libretro.com/t/real-gba-and-ds-phat-colors/1540/159

The LUTs themselves are in the public domain, so it's just a matter of implementing them in the GBA/GBC cores.

It is highly preferable to make any color settings independent from the display mode (like it currently is with the desaturation setting) - we'd like to be able to apply the accurate colors to the Analogue GBA display mode as well as while the Pocket is docked.

Peredonov commented 2 years ago

It is important to note that this issue is also relevant for GBC.

Another source of technical information by Extrems: https://www.gc-forever.com/wiki/index.php?title=Game_Boy_Interface/Standard_Edition#Color_matrix

edit: another older article on this by Near, with a couple of striking examples: https://near.sh/articles/video/color-emulation

16bitstreamer commented 2 years ago

Does anyone have a screen color calibration test that can optically confirm? (I’m talking about something like I would use to calibrate my monitor to match my photography)

bbbbbr commented 2 years ago

This isn't a calibrated test exactly, but you can use this image + rom pair. You could run them side-by-side on a GBC and AP

color_wheel.zip

coolbho3k commented 1 year ago

Is this fixed in the 1.1 update released today?