I have implemented Gamma setting using LIBGL_GAMMA env. var. and some of my pnds read ".gamma" if it exist to set starting gamma.
Also, SDL2 is hacked so it set gamma on the Pandora when using regular SDL2 Gamma function.
Last point, I have added a Hint in gl4es to set gamma on the fly. Use glHint(GL_GAMMA_HINT_GL4ES, XX); to set gamma to X.X
also #define GL_GAMMA_HINT_GL4ES 0xA10F
(Yes, that non-standard call, but it will just do nothing on other platform as it's just Hint...)