Odroid C2 Crt-Pi Shader - Scanlines and Shadow Mask Won't Display

I recently downloaded and installed the latest Lakka image for the Odroid C2.

Everything seems to have configured and works as expected with the exception of the crt-pi shader.

Applying the shader with the same parameters as the ones I use for the same shader in Retroarch for the PC doesn’t seem to work.

I’ve altered and successfully saved the ‘enable shaders’ option in the retroarch.cfg and checked the crt-pi.glsl to ensure that the line to enable scanlines is uncommented and that the ‘mask type’ is set to 2 which enables the Trinitron (ish) shadow mask.

Neither of these alterations seems to make the shader function as intended.

Is there a particular option or combination of settings that need to be altered for Lakka to allow this shader to work?

Any help would be very much appreciated.

Is the shader not working at all or is it just not looking the way you want it to?

If it’s not working at all, we’ll need to see a log.

If it’s working but your changes aren’t taking effect, make sure you’re loading the same one you’re editing.

Hi, thank you for the reply.

It’s difficult to tell whether it isn’t working or whether it’s just the scanlines that don’t show despite the configuration file for the shader parameters (crt-pi.glsl) being edited in exactly the same way as the shader is on my laptop running retroarch.

I edited the file located at /tmp/shaders/crt/shaders/crt-pi.glsl. The default directories are untouched and the path to the shader has been added to the retroarch.cfg.

With the shadow mask option enabled and working correctly on my main PC, the appearance is very distinctive.

Other shaders that have a more distinctive appearance without modification seem to work and are readily apparent.

I’ll generate a log file as soon as I can and upload it to make it easier to diagnose. It may be something obvious that I’m missing as I’m new to Lakka.

Hi, please see below for a copy of the log that Lakka produces following the steps outlined in the online documentation. I hope that it provides the information you need.

Lakka (community) Version: 2.0
Lakka:~ # systemctl stop retroarch
Lakka:~ # systemctl stop retroarch.service ; retroarch -v
RetroArch [INFO] :: This is RetroArch version 1.5.0 (Git 2a13af5)
RetroArch [INFO] :: === Build =======================================
Capabilities: NEON VFPv3 VFPv4 ASIMD
Built: Apr 24 2017
RetroArch [INFO] :: Version: 1.5.0
RetroArch [INFO] :: Git: 2a13af5
RetroArch [INFO] :: =================================================
RetroArch [INFO] :: Loading default config.
RetroArch [INFO] :: Looking for config in: "/storage/.config/retroarch/retroarch                                                                                        .cfg".
RetroArch [INFO] :: Environ SET_PIXEL_FORMAT: RGB565.
RetroArch [INFO] :: Redirecting save file to "/storage/savefiles/.srm".
RetroArch [INFO] :: Redirecting savestate to "/storage/savestates/.state".
RetroArch [INFO] :: Version of libretro API: 1
RetroArch [INFO] :: Compiled against API: 1
RetroArch [INFO] :: Set audio input rate to: 30012.00 Hz.
RetroArch [INFO] :: Found shader "/tmp/shaders/bilinear.glslp"
RetroArch [INFO] :: Found shader "/tmp/shaders/nearest.glslp"
RetroArch [INFO] :: Found shader "/tmp/shaders/retroarch.glslp"
RetroArch [INFO] :: Found shader "/tmp/shaders/stock.glsl"
RetroArch [INFO] :: Video @ 1920x1080
RetroArch [INFO] :: [EGL]: EGL version: 1.4
RetroArch [INFO] :: Found GL context: mali-fbdev
RetroArch [INFO] :: Detecting screen resolution 0x0.
RetroArch [INFO] :: [EGL]: Current context: 0x40000001.
RetroArch [INFO] :: [GL]: Vendor: ARM, Renderer: Mali-450 MP.
RetroArch [INFO] :: [GL]: Version: OpenGL ES 2.0.
RetroArch [INFO] :: GL: Using resolution 1920x1080
RetroArch [INFO] :: [GL]: Default shader backend found: glsl.
RetroArch [INFO] :: [Shader driver]: Using GLSL shader backend.
RetroArch [WARN] :: [GL]: Stock GLSL shaders will be used.
RetroArch [INFO] :: Found GLSL vertex shader.
RetroArch [INFO] :: Found GLSL fragment shader.
RetroArch [INFO] :: Linking GLSL program.
RetroArch [INFO] :: Found GLSL vertex shader.
RetroArch [INFO] :: Found GLSL fragment shader.
RetroArch [INFO] :: Linking GLSL program.
RetroArch [INFO] :: Found GLSL vertex shader.
RetroArch [INFO] :: Found GLSL fragment shader.
RetroArch [INFO] :: Linking GLSL program.
RetroArch [INFO] :: Found GLSL vertex shader.
RetroArch [INFO] :: Found GLSL fragment shader.
RetroArch [INFO] :: Linking GLSL program.
RetroArch [INFO] :: Found GLSL vertex shader.
RetroArch [INFO] :: Found GLSL fragment shader.
RetroArch [INFO] :: Linking GLSL program.
RetroArch [INFO] :: Found GLSL vertex shader.
RetroArch [INFO] :: Found GLSL fragment shader.
RetroArch [INFO] :: Linking GLSL program.
RetroArch [INFO] :: Found GLSL vertex shader.
RetroArch [INFO] :: Found GLSL fragment shader.
RetroArch [INFO] :: Linking GLSL program.
RetroArch [INFO] :: Found GLSL vertex shader.
RetroArch [INFO] :: Found GLSL fragment shader.
RetroArch [INFO] :: Linking GLSL program.
RetroArch [INFO] :: [GL]: Using 4 textures.
RetroArch [INFO] :: [GL]: Loaded 1 program(s).
RetroArch [INFO] :: Using font rendering backend: freetype.
RetroArch [INFO] :: Graphics driver did not initialize an input driver. Attempti                                                                                        ng to pick a suitable driver.
RetroArch [INFO] :: [udev] Adding device /dev/input/event5 as type ID_INPUT_KEYB                                                                                        OARD.
RetroArch [INFO] :: [udev] Adding device /dev/input/mouse0 as type ID_INPUT_KEYB                                                                                        OARD.
RetroArch [INFO] :: [udev] Adding device /dev/input/event5 as type ID_INPUT_MOUS                                                                                        E.
RetroArch [INFO] :: [udev] Adding device /dev/input/mouse0 as type ID_INPUT_MOUS                                                                                        E.
RetroArch [INFO] :: [udev]: Plugged pad: 8Bitdo FC30 Pro    8Bitdo FC30 Pro (409                                                                                        8:36864) on port #0.
RetroArch [INFO] :: [udev]: Pad #0 (/dev/input/event3) supports 0 force feedback                                                                                         effects.
RetroArch [INFO] :: Autodetect: 179 profiles found.
RetroArch [INFO] :: Autodetect: selected configuration: /tmp/joypads/udev/8Bitdo                                                                                        _Pro_FC30_USB.cfg
RetroArch [INFO] :: Found joypad driver: "udev".
RetroArch [INFO] :: ALSA: Using signed 16-bit format.
RetroArch [ERROR] :: ALSA: Failed to initialize...
RetroArch [ERROR] :: Failed to initialize audio driver. Will continue without au                                                                                        dio.
RetroArch [INFO] :: Found menu display driver: "menu_display_gl".
RetroArch [INFO] :: Using font rendering backend: freetype.
RetroArch [INFO] :: Using font rendering backend: freetype.
RetroArch [INFO] :: SRAM will not be saved.
RetroArch [INFO] :: Loading history file: [/storage/.config/retroarch/content_hi                                                                                        story.lpl].
RetroArch [INFO] :: Loading history file: [/storage/.config/retroarch/content_mu                                                                                        sic_history.lpl].
RetroArch [INFO] :: Loading history file: [/storage/.config/retroarch/content_vi                                                                                        deo_history.lpl].
RetroArch [INFO] :: Loading history file: [/storage/.config/retroarch/content_im                                                                                        age_history.lpl].
RetroArch [INFO] :: [GL]: VSync => on
RetroArch [INFO] :: [EGL]: eglSwapInterval(1)
RetroArch [ERROR] :: failed_to_start_audio_driver
RetroArch [INFO] :: [GL]: VSync => on
RetroArch [INFO] :: [EGL]: eglSwapInterval(1)
RetroArch [INFO] :: This is RetroArch version 1.5.0 (Git 2a13af5)
RetroArch [INFO] :: === Build =======================================
Capabilities: NEON VFPv3 VFPv4 ASIMD
Built: Apr 24 2017
RetroArch [INFO] :: Version: 1.5.0
RetroArch [INFO] :: Git: 2a13af5
RetroArch [INFO] :: =================================================
RetroArch [INFO] :: Loading default config.
RetroArch [INFO] :: Looking for config in: "/storage/.config/retroarch/retroarch                                                                                        .cfg".
RetroArch [INFO] :: Environ SET_PIXEL_FORMAT: RGB565.
RetroArch [INFO] :: Redirecting save file to "/storage/savefiles/.srm".
RetroArch [INFO] :: Redirecting savestate to "/storage/savestates/.state".
RetroArch [INFO] :: Version of libretro API: 1
RetroArch [INFO] :: Compiled against API: 1
RetroArch [INFO] :: Set audio input rate to: 30012.00 Hz.
RetroArch [INFO] :: Found shader "/tmp/shaders/bilinear.glslp"
RetroArch [INFO] :: Found shader "/tmp/shaders/nearest.glslp"
RetroArch [INFO] :: Found shader "/tmp/shaders/retroarch.glslp"
RetroArch [INFO] :: Found shader "/tmp/shaders/stock.glsl"
RetroArch [INFO] :: Video @ 1920x1080
RetroArch [INFO] :: [EGL]: EGL version: 1.4
RetroArch [INFO] :: Found GL context: mali-fbdev
RetroArch [INFO] :: Detecting screen resolution 0x0.
RetroArch [INFO] :: [EGL]: Current context: 0x40000001.
RetroArch [INFO] :: [GL]: Vendor: ARM, Renderer: Mali-450 MP.
RetroArch [INFO] :: [GL]: Version: OpenGL ES 2.0.
RetroArch [INFO] :: GL: Using resolution 1920x1080
RetroArch [INFO] :: [GL]: Default shader backend found: glsl.
RetroArch [INFO] :: [Shader driver]: Using GLSL shader backend.
RetroArch [WARN] :: [GL]: Stock GLSL shaders will be used.
RetroArch [INFO] :: Found GLSL vertex shader.
RetroArch [INFO] :: Found GLSL fragment shader.
RetroArch [INFO] :: Linking GLSL program.
RetroArch [INFO] :: Found GLSL vertex shader.
RetroArch [INFO] :: Found GLSL fragment shader.
RetroArch [INFO] :: Linking GLSL program.
RetroArch [INFO] :: Found GLSL vertex shader.
RetroArch [INFO] :: Found GLSL fragment shader.
RetroArch [INFO] :: Linking GLSL program.
RetroArch [INFO] :: Found GLSL vertex shader.
RetroArch [INFO] :: Found GLSL fragment shader.
RetroArch [INFO] :: Linking GLSL program.
RetroArch [INFO] :: Found GLSL vertex shader.
RetroArch [INFO] :: Found GLSL fragment shader.
RetroArch [INFO] :: Linking GLSL program.
RetroArch [INFO] :: Found GLSL vertex shader.
RetroArch [INFO] :: Found GLSL fragment shader.
RetroArch [INFO] :: Linking GLSL program.
RetroArch [INFO] :: Found GLSL vertex shader.
RetroArch [INFO] :: Found GLSL fragment shader.
RetroArch [INFO] :: Linking GLSL program.
RetroArch [INFO] :: Found GLSL vertex shader.
RetroArch [INFO] :: Found GLSL fragment shader.
RetroArch [INFO] :: Linking GLSL program.
RetroArch [INFO] :: [GL]: Using 4 textures.
RetroArch [INFO] :: [GL]: Loaded 1 program(s).
RetroArch [INFO] :: Using font rendering backend: freetype.
RetroArch [INFO] :: Graphics driver did not initialize an input driver. Attempti                                                                                        ng to pick a suitable driver.
RetroArch [INFO] :: [udev] Adding device /dev/input/event5 as type ID_INPUT_KEYB                                                                                        OARD.
RetroArch [INFO] :: [udev] Adding device /dev/input/mouse0 as type ID_INPUT_KEYB                                                                                        OARD.
RetroArch [INFO] :: [udev] Adding device /dev/input/event5 as type ID_INPUT_MOUS                                                                                        E.
RetroArch [INFO] :: [udev] Adding device /dev/input/mouse0 as type ID_INPUT_MOUS                                                                                        E.
RetroArch [INFO] :: [udev]: Plugged pad: 8Bitdo FC30 Pro    8Bitdo FC30 Pro (409                                                                                        8:36864) on port #0.
RetroArch [INFO] :: [udev]: Pad #0 (/dev/inp

I don’t see it trying to load the shader anywhere. Did you go into quick menu > shaders > load shader preset and actually load it yet?

Yes, as far as I’m aware. I’ve just tried it again.

Selected and loaded the shader preset; clicked apply changes; and then exited back to the game (R-Type 3 running on the SNES9X 2010 core).

Lakka (community) Version: 2.1-rc4
Lakka:~ # systemctl stop retroarch.service ; retroarch -v
RetroArch [INFO] :: This is RetroArch version 1.5.0 (Git 882fe09)
RetroArch [INFO] :: === Build =======================================
Capabilities: NEON VFPv3 VFPv4 ASIMD
Built: Jul 22 2017
RetroArch [INFO] :: Version: 1.5.0
RetroArch [INFO] :: Git: 882fe09
RetroArch [INFO] :: =================================================
RetroArch [INFO] :: [Config]: Loading default config.
RetroArch [INFO] :: [Config]: loading config from: (null).
RetroArch [INFO] :: Looking for config in: "/storage/.config/retroarch/retroarch                                                                                        .cfg".
RetroArch [INFO] :: Environ SET_PIXEL_FORMAT: RGB565.
RetroArch [INFO] :: Redirecting save file to "/storage/savefiles/.srm".
RetroArch [INFO] :: Redirecting savestate to "/storage/savestates/.state".
RetroArch [INFO] :: Version of libretro API: 1
RetroArch [INFO] :: Compiled against API: 1
RetroArch [INFO] :: [Audio]: Set audio input rate to: 30012.00 Hz.
RetroArch [INFO] :: Found shader "/tmp/shaders/retroarch.glslp"
RetroArch [INFO] :: Found shader "/tmp/shaders/slang-conversion-template.glsl"
RetroArch [INFO] :: Found shader "/tmp/shaders/stock.glsl"
RetroArch [INFO] :: [Video]: Video @ 1920x1080
RetroArch [INFO] :: [EGL] Falling back to eglGetDisplay
RetroArch [INFO] :: [EGL]: EGL version: 1.4
RetroArch [INFO] :: [GL]: Found GL context: mali-fbdev
RetroArch [INFO] :: [GL]: Detecting screen resolution 0x0.
RetroArch [INFO] :: [EGL]: Current context: 0x40000001.
RetroArch [INFO] :: [GL]: Vendor: ARM, Renderer: Mali-450 MP.
RetroArch [INFO] :: [GL]: Version: OpenGL ES 2.0.
RetroArch [INFO] :: [GL]: Using resolution 1920x1080
RetroArch [INFO] :: [GL]: Default shader backend found: glsl.
RetroArch [INFO] :: [Shader driver]: Using GLSL shader backend.
RetroArch [WARN] :: [GL]: Stock GLSL shaders will be used.
RetroArch [INFO] :: [GLSL]: Found GLSL vertex shader.
RetroArch [INFO] :: [GLSL]: Found GLSL fragment shader.
RetroArch [INFO] :: [GLSL]: Linking GLSL program.
RetroArch [INFO] :: [GLSL]: Found GLSL vertex shader.
RetroArch [INFO] :: [GLSL]: Found GLSL fragment shader.
RetroArch [INFO] :: [GLSL]: Linking GLSL program.
RetroArch [INFO] :: [GLSL]: Found GLSL vertex shader.
RetroArch [INFO] :: [GLSL]: Found GLSL fragment shader.
RetroArch [INFO] :: [GLSL]: Linking GLSL program.
RetroArch [INFO] :: [GLSL]: Found GLSL vertex shader.
RetroArch [INFO] :: [GLSL]: Found GLSL fragment shader.
RetroArch [INFO] :: [GLSL]: Linking GLSL program.
RetroArch [INFO] :: [GLSL]: Found GLSL vertex shader.
RetroArch [INFO] :: [GLSL]: Found GLSL fragment shader.
RetroArch [INFO] :: [GLSL]: Linking GLSL program.
RetroArch [INFO] :: [GLSL]: Found GLSL vertex shader.
RetroArch [INFO] :: [GLSL]: Found GLSL fragment shader.
RetroArch [INFO] :: [GLSL]: Linking GLSL program.
RetroArch [INFO] :: [GLSL]: Found GLSL vertex shader.
RetroArch [INFO] :: [GLSL]: Found GLSL fragment shader.
RetroArch [INFO] :: [GLSL]: Linking GLSL program.
RetroArch [INFO] :: [GLSL]: Found GLSL vertex shader.
RetroArch [INFO] :: [GLSL]: Found GLSL fragment shader.
RetroArch [INFO] :: [GLSL]: Linking GLSL program.
RetroArch [INFO] :: [GL]: Using 4 textures.
RetroArch [INFO] :: [GL]: Loaded 1 program(s).
RetroArch [INFO] :: [Font]: Using font rendering backend: freetype.
RetroArch [INFO] :: [Video]: Graphics driver did not initialize an input driver.                                                                                         Attempting to pick a suitable driver.
RetroArch [INFO] :: [udev] Adding device /dev/input/event5 as type ID_INPUT_KEYB                                                                                        OARD.
RetroArch [INFO] :: [udev] Adding device /dev/input/mouse0 as type ID_INPUT_KEYB                                                                                        OARD.
RetroArch [INFO] :: [udev] Adding device /dev/input/event5 as type ID_INPUT_MOUS                                                                                        E.
RetroArch [INFO] :: [udev] Adding device /dev/input/mouse0 as type ID_INPUT_MOUS                                                                                        E.
RetroArch [INFO] :: [udev]: Plugged pad: 8Bitdo FC30 Pro    8Bitdo FC30 Pro (409                                                                                        8:36864) on port #0.
RetroArch [INFO] :: [udev]: Pad #0 (/dev/input/event3) supports 0 force feedback                                                                                         effects.
RetroArch [INFO] :: [Autodetect]: 186 profiles found.
RetroArch [INFO] :: [Autodetect]: selected configuration: /tmp/joypads/udev/8Bit                                                                                        do_Pro_FC30_USB.cfg
RetroArch [INFO] :: [Joypad]: Found joypad driver: "udev".
RetroArch [INFO] :: ALSA: Using signed 16-bit format.
RetroArch [ERROR] :: ALSA: Failed to initialize...
RetroArch [ERROR] :: Failed to initialize audio driver. Will continue without au                                                                                        dio.
RetroArch [INFO] :: [Menu]: Found menu display driver: "menu_display_gl".
RetroArch [INFO] :: [Font]: Using font rendering backend: freetype.
RetroArch [INFO] :: [Font]: Using font rendering backend: freetype.
RetroArch [INFO] :: SRAM will not be saved.
RetroArch [INFO] :: Loading history file: [/storage/.config/retroarch/content_hi                                                                                        story.lpl].
RetroArch [INFO] :: Loading history file: [/storage/.config/retroarch/content_mu                                                                                        sic_history.lpl].
RetroArch [INFO] :: Loading history file: [/storage/.config/retroarch/content_vi                                                                                        deo_history.lpl].
RetroArch [INFO] :: Loading history file: [/storage/.config/retroarch/content_im                                                                                        age_history.lpl].
RetroArch [INFO] :: [GL]: VSync => on
RetroArch [INFO] :: [EGL]: eglSwapInterval(1)
RetroArch [ERROR] :: failed_to_start_audio_driver
RetroArch [INFO] :: [GL]: VSync => on
RetroArch [INFO] :: [EGL]: eglSwapInterval(1)
Lakka (community) Version: 2.1-rc4
Lakka:~ # systemctl stop retroarch.service ; retroarch -v
RetroArch [INFO] :: This is RetroArch version 1.5.0 (Git 882fe09)
RetroArch [INFO] :: === Build =======================================
Capabilities: NEON VFPv3 VFPv4 ASIMD
Built: Jul 22 2017
RetroArch [INFO] :: Version: 1.5.0
RetroArch [INFO] :: Git: 882fe09
RetroArch [INFO] :: =================================================
RetroArch [INFO] :: [Config]: Loading default config.
RetroArch [INFO] :: [Config]: loading config from: (null).
RetroArch [INFO] :: Looking for config in: "/storage/.config/retroarch/retroarch                                                                                        .cfg".
RetroArch [INFO] :: Environ SET_PIXEL_FORMAT: RGB565.
RetroArch [INFO] :: Redirecting save file to "/storage/savefiles/.srm".
RetroArch [INFO] :: Redirecting savestate to "/storage/savestates/.state".
RetroArch [INFO] :: Version of libretro API: 1
RetroArch [INFO] :: Compiled against API: 1
RetroArch [INFO] :: [Audio]: Set audio input rate to: 30012.00 Hz.
RetroArch [INFO] :: Found shader "/tmp/shaders/retroarch.glslp"
RetroArch [INFO] :: Found shader "/tmp/shaders/slang-conversion-template.glsl"
RetroArch [INFO] :: Found shader "/tmp/shaders/stock.glsl"
RetroArch [INFO] :: [Video]: Video @ 1920x1080
RetroArch [INFO] :: [EGL] Falling back to eglGetDisplay
RetroArch [INFO] :: [EGL]: EGL version: 1.4
RetroArch [INFO] :: [GL]: Found GL context: mali-fbdev
RetroArch [INFO] :: [GL]: Detecting screen resolution 0x0.
RetroArch [INFO] :: [EGL]: Current context: 0x40000001.
RetroArch [INFO] :: [GL]: Vendor: ARM, Renderer: Mali-450 MP.
RetroArch [INFO] :: [GL]: Version: OpenGL ES 2.0.
RetroArch [INFO] :: [GL]: Using resolution 1920x1080
RetroArch [INFO] :: [GL]: Default shader backend found: glsl.
RetroArch [INFO] :: [Shader driver]: Using GLSL shader backend.
RetroArch [WARN] :: [GL]: Stock GLSL shaders will be used.
RetroArch [INFO] :: [GLSL]: Found GLSL vertex shader.
RetroArch [INFO] :: [GLSL]: Found GLSL fragment shader.
RetroArch [INFO] :: [GLSL]: Linking GLSL program.
RetroArch [INFO] :: [GLSL]: Found GLSL vertex shader.
RetroArch [INFO] :: [GLSL]: Found GLSL fragment shader.
RetroArch [INFO] :: [GLSL]: Linking GLSL program.
RetroArch [INFO] :: [GLSL]: Found GLSL vertex shader.
RetroArch [INFO] :: [GLSL]: Found GLSL fragment shader.
RetroArch [INFO] :: [GLSL]: Linking GLSL program.
RetroArch [INFO] :: [GLSL]: Found GLSL vertex shader.
RetroArch [INFO] :: [GLSL]: Found GLSL fragment shader.
RetroArch [INFO] :: [GLSL]: Linking GLSL program.
RetroArch [INFO] :: [GLSL]: Found GLSL vertex shader.
RetroArch [INFO] :: [GLSL]: Found GLSL fragment shader.
RetroArch [INFO] :: [GLSL]: Linking GLSL program.
RetroArch [INFO] :: [GLSL]: Found GLSL vertex shader.
RetroArch [INFO] :: [GLSL]: Found GLSL fragment shader.
RetroArch [INFO] :: [GLSL]: Linking GLSL program.
RetroArch [INFO] :: [GLSL]: Found GLSL vertex shader.
RetroArch [INFO] :: [GLSL]: Found GLSL fragment shader.
RetroArch [INFO] :: [GLSL]: Linking GLSL program.
RetroArch [INFO] :: [GLSL]: Found GLSL vertex shader.
RetroArch [INFO] :: [GLSL]: Found GLSL fragment shader.
RetroArch [INFO] :: [GLSL]: Linking GLSL program.
RetroArch [INFO] :: [GL]: Using 4 textures.
RetroArch [INFO] :: [GL]: Loaded 1 program(s).
RetroArch [INFO] :: [Font]: Using font rendering backend: freetype.
RetroArch [INFO] :: [Video]: Graphics driver did not initialize an input driver.                                                                                         Attempting to pick a suitable driver.
RetroArch [INFO] :: [udev] Adding device /dev/input/event5 as type ID_INPUT_KEYB                                                                                        OARD.
RetroArch [INFO] :: [udev] Adding device /dev/input/mouse0 as type ID_INPUT_KEYB                                                                                        OARD.
RetroArch [INFO] :: [udev] Adding device /dev/input/event5 as type ID_INPUT_MOUS

Above is the log that was produced after I exited to the in-game menu after checking to see whether the shader had taken effect. Sorry, I mistakenly forgot to paste as plain text first time around and made it difficult to read. I noticed that the audio seems to have failed as well. Something in the log output regarding ‘failing to initialise driver’.

I just checked the retroarch.cfg file and it seems to keep resetting the enable shader line to “false”. I stopped the retroarch service (systemctl stop retroarch) before editing the retroarch.cfg file but it doesn’t seem to persist. video_shader_enable=“false” is there the next time that I access the .cfg file. The config save on exit option is set to true, so I’m not sure where I’m going wrong.

The .cfg file seems to reset if I follow what you first mentioned, that is, to access the quick menu and select the shader preset; apply changes; and then exit the menu and resume the game.

It looks like it’s just loading the default config each time, as if it’s not finding the config file in the first place. Where is the config file you’re editing located?

The config file I’ve been editing in nano is /storage/.config/retroarch/retroarch.cfg

Is this different to the default directory path?

The config directory in the GUI menu lists: /storage/.config/retroarch/config but typing that into nano results in a blank directory.

It will always look for ~/.config/retroarch/retroarch.cfg unless you pass -c /path/to/config.cfg on the command line.

So, it sounds like you’re hitting the right one. I wonder if there’s a permission issue or something…? Can you try chmod -755 on it?

Sure. I’m sorry if this is a really stupid question but how do you use that command?

Is that placed before the path to the config file?

chmod -755 resulted in an ‘invalid mode -755’ message.

I tried chmod 755 /storage/.config/retroarch/retroarch.cfg which the command prompt seemed to accept and the shader enabled option is still set to “true” in the config but the shader still doesn’t seem to load.

whoops, yeah, don’t need the minus sign.

Ok, so, your settings will stick now? Can you set video_shader to /path/to/your/shaders/crt-pi.glsl?

No; sorry, if I try to load the shader preset, the retroarch.cfg file still resets to video_enable_shader=“false”. If I boot Lakka and launch a ROM with the retroarch.cfg set with the video_enable_shader=“true” and don’t go into the GUI menu and cause it to reset, it still doesn’t load.

The path to the shader is specified in the retroarch.cfg file as:

video_shader = “/tmp/shaders/crt/shaders/crt-pi.glsl”

There’s a line in the retroarch.cfg file that reads auto_shaders_enable=“true”. I don’t know if that’s relevant, I tried changing the value but it doesn’t seem to make any difference.

As far as I know, the crt-pi shader included with Lakka is exactly the same as the one found in Retroarch, so the parameters have been set exactly the same. The difference with the shadow mask parameter set to ‘2’ is easy to see, so I’m sure that the shader is either not loading or that that parameter is not being applied.

Perhaps there is something else that I’m missing?

Other settings that I’ve altered, such as setting the screen refresh rate through the GUI or altering the audio_out_rate to “44100” don’t seem to change. Although that might not be too useful as the audio doesn’t work at the moment! Correction: Altering the audio_out_rate back to the default value of “48000” restores the sound but I’m not sure why that is an issue.

Would it help if I included a copy of the retroarch.cfg file?

So other settings changes stick okay, just not video_shader_enable? Do other shaders work?

I think so, yes. I’ve tried to enable several other shaders, some of which made the performance drop dramatically, but you could definitely see that they loaded and worked.

Trying to load a shader preset doesn’t seem to work, as the quick menu doesn’t update with the shader name. I manually selected the crt-geom.glsl shader, which worked but killed the performance. Literally slowed everything down to a virtual standstill.

The retroarch.cfg file also changed. The shader path was something like /tmp/shaders/retroarch.glslp once the crt-geom.glsl shader applied. It overwrote the path I manually entered as previously listed for the crt-pi shader: /tmp/shaders/crt/shaders/crt-pi.glsl

Yes; for some reason, that line in the config file, video_shader_enable, seems to reset when I try to apply the crt-pi shader.

I thought the crt-pi shader would be the best option for the Odroid, due to it being lightweight, and also the fact that I use it on my PC and like the results. It would be good to be able to get it to work on my C2.

Ok, it sounds like there may be something up with the Odroid not liking that particular shader for some reason, though I would have expected it to print any compiler errors to the log.

Just to be clear: you were able to load other *.glsl shaders manually but crt-pi.glsl doesn’t work this way, and no presets work for you?

Hi; I’ve just tried some of the shaders I hadn’t previously selected and they do seem to load from the preset option. I don’t know whether the previous ones didn’t genuinely work or whether they aren’t very distinctive at their default setting.

crt-pi doesn’t seem to work either way. The parameters are set in the .glsl file exactly as they are in the version on my PC and you can clearly see the difference between the two. The scanlines and the shadow mask are readily apparent on the Retroarch PC version I use; uncommenting the same lines for those parameters in the shader file on the Odroid produces no difference at all.

Selecting ‘load shader preset’ for crt-pi.glslp does nothing. It doesn’t seem to work for crt-caligari either. If I select crt-pi manually; apply it; and then select another shader preset like crt-caligari.glslp and click to apply it, nothing changes.

Hi; thank you for the time you’ve already given relating to this problem.

I performed a clean installation of the following Lakka image today: Lakka-Odroid_C2.arm-2.1-rc4 and the problem with the crt-pi.glsl shader not loading is resolved.

You can select the load shader preset option and it correctly applies it to the shader pipeline. The shader parameters also appear in the quick menu as they should.

1 Like

Oh, that’s nice. I’m glad it’s working as intended now :slight_smile: