Some games store their colors in an unusual way. I'm not talking about compression. It's like some games cointain colors the system can't actually output.
These colors look perfectly normal when the game is running but, and this is the issue here, are not visible in HivePal's browser, which seems to be the standard tool for Genesis color editing.
Let's take a look at this screenshot. It's the title screen of "Twin Cobra", a game that stores colors in a way HivePal recognizes, and in a way it doesn't.
The top row (1) is how HivePal displays the colors of the helicopter when you explicitly load them (address is 7C94). However, this palette is invisible when you look for it with HivePal's browser. See that nearly blank spot with the red border around? No helicopter colors to be seen. The palettes right and below that red border are recognized just fine.
Lets concentrate on palette (1). Most colors there have unusual values, exception is 0000, which is pure black.
I've confirmed this with HivePal and a Hex Editor. Starting from the left:
0000, 0DCB, OBA9,0987,0765 and so on. Not only are these not recognized by HivePal's browser, these colors aren't even part of the system's master palette as far as I'm aware. When running the game they get rounded to the next color the system can display. To stick with the previous examples:
0000, 0CCA, 0AA8, 0886, 0664 and so on
These are the colors in the bottom row (2), and these are also the color the helicopter has on the screenshot, and on my television screen when I play the game.
Another game that stores colors in this strange way is GODS. The game's full palette data is invisible to HivePal. I was able to find it by making screenshots of the game with a VDP debugger open, then searching for color patterns in a hex editor (white is stored as 0FFF instead of the usual 0EEE, next to white was a flesh tone that was 0007 instead of 0006. So I've searched for 0FFF0007 and found the palettes. If this is used in more games maybe I should write sort of a color conversion table)
Sorry if this doesn't make any sense. It's a really simple matter but I can't find better words to describe it.
This questions remains unsolved for me:
Why save colors with values the Genesis can't output? This somehow makes sense with Twin Cobra, because that is a sloppy port in many ways. GODS on the other hand was ported over to the last detail by a small but dedicated staff. These people knew exactly what the were doing.