GameBoy - yellow-ish tint

I’m using Gambatte as Gameboy (Color) core which is running excellent. But I’m used to the yellow-ish tint on my (non color) Gameboy games running on GBC.emu by Robert Broglia. Is that something that I can achieve with RetroArch as well?

if your device is powerful enough, you can use the shaders in shaders_glsl/hunterk/handheld. The gameboy shader should get you covered.

Many thanks again hunterk! I’m going to have a look. I’m running RetroArch on a GPD XD. Hopefully it’s powerful enough. :slight_smile:

I have tried using shaders, probably I’m doing something wrong… But I’m getting a black screen when using a Gameboy shader. The sound is still there but the screen is black.

This is a confusing situation, so bear with me: there are 2 sets of handheld shader directories, one in the normal shaders_glsl directory and one in shaders_glsl/hunterk. The first one definitely will not work with your mobile device. The second one probably will (assuming you tried the wrong one before).

Unfortunately, mobile GPUs are very untrustworthy and whether a shader works as expected on them is basically a crapshoot, so even the second one may not cut it.

EDIT: whoops, radius may have already merged the shaders so the ‘hunterk’ stuff doesn’t really apply anymore. In that case, you’d have used the correct one, and if it’s still giving you a black screen, there’s not really anything to be done about it :confused:

Ok, thanks for the heads up! Indeed it was merged already. :slight_smile:

I whipped up another option for you. Copy this into a text file named something like “gameboy-colors.glslp” in your main shaders_glsl directory:

shaders = "2"
feedback_pass = "0"
shader0 = "misc\color-mangler.glsl"
wrap_mode0 = "clamp_to_border"
mipmap_input0 = "false"
alias0 = ""
float_framebuffer0 = "false"
srgb_framebuffer0 = "false"
shader1 = "retro/shaders/retro-v2.glsl"
filter_linear1 = "false"
parameters = "display_gamma;target_gamma;sat;lum;cntrst;r;g;b;rg;rb;gr;gb;br;bg;blr;blg;blb"
display_gamma = "2.200000"
target_gamma = "2.200000"
sat = "1.000000"
lum = "1.000000"
cntrst = "1.000000"
r = "0.650000"
g = "1.000000"
b = "0.100001"
rg = "0.000000"
rb = "0.000000"
gr = "0.000000"
gb = "0.000000"
br = "0.000000"
bg = "0.000000"
blr = "0.015000"
blg = "0.020000"
blb = "0.000000"

Make sure you use integer scaling and 1:1 PAR aspect ratio (should be the core-provided one already, I think).

It looks like this:

Wow, thanks for this! Gonna have a try / look tomorrow. Keep you posted!

I can’t seem to get it to work… I have copied the text in to a text editor saved it as “gameboy-colors.glslp” (without the quotes of course). After that I copied the file on my android device in the shader folder. When I open up a GB game and go to shader option I can browse to the new shader but it won’t get loaded. Doesn’t do anything.

[UPDATE] I got it sort of working now. I had to use the full path name for the shader files. “misc\color-mangler.glsl” was not enough.

At the moment is working half. I have the “dot matrix” screen but it’s still grey not yellow-ish.

Doesnt gambatte have some core options to change colorization? open the menu.

Yes it has colorization options but as far as I can see it’s Gameboy Color stuff. So if you are playing a Gameboy game on a Gameboy Color hardware. What I want is the yellow-ish/monochrome color like if you are playing on an actual Gameboy. GBC.emu does this.

Go to core options, change gb colorization to internal and on the option internal palette select Special 1 to get a yellowish color on gb games, it works at least on my device.

Also I recommend using the gb borders overlay it looks awesome.

YES! Thank you. This works! :slight_smile: Cheers for that.

Got that working too. Nice!

Glad it worked, btw you can also add your own custom palettes for gb games: http://libretro.com/forums/showthread.php?t=5051

I will have a look. Thanks!