Duimon - HSM Mega Bezel Graphics and Presets - Feedback and Updates

Hey @Duimon,

I found this WIP Azahar core.

This is great, because that would mean I can use Azahar with your shaders and won’t have to rely on ShaderGlass, which (if you remember) doesn’t work correctly with your 3DS shaders.

However, when trying to load one of your 3DS shaders with this core, RetroArch crashes.

Do you know if this is just because the core doesn’t work properly, yet, or could it be related to a different issue? I never had RetroArch crash on me for trying to load a shader before.

Thank you!

1 Like

Without a log I couldn’t even make a guess.

But if you can run this core, what’s stopping you from running Citra?

I use my real 3DS nand with Azahar, so I can play online and access all of my legally purchased games. That is not possible with Citra.

Also Citra doesn’t have Vulkan.

I will provide a log asap.

I did not face this issue with either glcore nor vulkan (it could be related to this in some way).

However, there’s another solvable issue that I faced, it seems all 3DS presets are defaulting to HSM_FLIP_VIEWPORT_VERTICAL = "1.000000" regardless of the video driver, and since Azahar core can work with vulkan, there’s no flipping issue to begin with, and this setting is giving the opposite result by flipping a perfectly fine image.

There are 3 steps to solve this properly while keeping the relevant glcore fix in place.

Firstly, remove the flip parameters from Duimon’s 3DS scale params:

Secondly, remove the 3DS flip parameters from Mega Bezel folder (@HyperspaceMadness):

Thirdly, go to: "RetroArch\shaders\shaders_slang\bezel\Mega_Bezel\resource\param_values\core-defaults\video-driver_core\"

Create an empty file and name it “glcore_Azahar.params”. Then open this file with a text editor and add the the following:

#reference "../../viewport-flip/verticalflipped.params"

Duplicate this file for other 3DS cores too if they don’t have a fix already:

glcore_Citra.params
glcore_Citra2018.params
1 Like

Hi,

I’m using your bezels for all handhelds - all look ace! On the (original) GameBoy bezel / shader there seems to be applied a sort of ‘streak’ across the screen which seems to be a way of implementing a form of screen glare.

Is there any way in the parameters to remove this so the screen was basically just ‘green’ with LCD and slight blur (ie just remove the streak / glare)? I can upload a photo later if that helps?

Thank you

Here’s the photo to hopefully illustrate what i’m talking about:

1 Like

There should be no need to remove anything from the Mega Bezel, and If there is a flip parameter in my preset it is a bug that should have been removed when HSM added his wildcard method. I’ll take a look, and add the new core to my planned Mega Bezel hotfix.

Also, don’t be too quick to assume that every hit you get in your search is a bug. For example, if a hardware accelerated core is using glcore as a driver, it will flip even when it shouldn’t, and the Lynx core is wonky about when it flips or rotates.

Or they may be bugs, we’ll have to dig in and look.

1 Like

That is a background from the DMG shader that I borrowed. My intention wasn’t for the result to look like a Gameboy, but to try and look as much like the DMG shader as I could.

Another image could be referenced to get rid of it, but it would have to be a similar color. ( Maybe an intense gaussian blur on a copy of the existing image?)

That’s what I thought at first, but if you try to load one one of the presets in my screenshot (from Mega Bezel folder), you’ll get unnecessary flipping with vulkan driver. They seem like residual params from before wildcards, and only a handful of presets have them.

1 Like

After looking at bit closer, I would have to agree. Looks like HSM and I both missed a couple of baked in flipping parameters.

I will talk to him and probably include fixes for his presets along with the additional wildcard entries I have planned.

2 Likes

Well to me this is the most authentic GameBoy dot matrix shader. Nothing beats It imo. At least in terms of authenticy. It legit looks like a real GameBoy screen. You can even add the blur if you like. There’s obviously other filters out there that may improve the visuals, but I always seek authenticity first.

This awesome filter was made by @Tatsuya79

3 Likes

That’s the one that comes bundled with RetroArch, right? The one in the handheld --> console-border folder?

I gotta agree that his DMG preset really is the best looking. Been using it for years. It’s basically the only non-HSM shader that I use.

@Duimon Wouldn’t you be interested in using this shader as your base for your Game Boy preset?

Thx for the input and additonal info!

I’m not sure if the issue is related to “Black screen and crash after launching a game with a shader preset (with long reference)”.

If it were, what would be the fix? I don’t really understand the issue, tbh.

I set up a clean RetroArch install on the root of one of my drives to test, but it didn’t work there, either. Same issue.

Edit: @Duimon and @Starman99x

Here is the log file when trying to launch the Azahar core with the shader. Maybe you can make sense of it?

retroarch.log

[INFO] RetroArch 1.22.1 (Git 9f9a984) [INFO] === Build ======================================= [INFO] CPU Model Name: Intel® Core™ i7-14700K [INFO] Capabilities: MMX MMXEXT SSE SSE2 SSE3 SSSE3 SSE4 SSE42 AES AVX AVX2 [INFO] Version: 1.22.1 [INFO] Git: 9f9a984 [INFO] Built: Nov 15 2025 [INFO] ================================================= [INFO] [Input] Found input driver: “dinput”. [INFO] [Environ] SET_PIXEL_FORMAT: RGB565. [INFO] [Core] Version of libretro API: 1, Compiled against API: 1 [INFO] [Core] Geometry: 320x240, Aspect: 1.333, FPS: 120.00, Sample rate: 48000.00 Hz. [INFO] [Video] Set video size to: fullscreen. [INFO] [Vulkan] Vulkan dynamic library loaded. [INFO] [Vulkan] Found GPU at index 0: “NVIDIA GeForce RTX 4070 Ti”. [INFO] [Vulkan] Using GPU index 0. [INFO] [Vulkan] Using GPU: “NVIDIA GeForce RTX 4070 Ti”. [INFO] [Vulkan] Queue family 0 supports 16 sub-queues. [INFO] [Vulkan] Got 3 swapchain images. [INFO] [Vulkan] Using resolution 3840x2160. [INFO] [Vulkan] Using RGB565 format. [INFO] [Vulkan] Loading stock shader. [INFO] [XInput] Found XInput v1.4. [INFO] [Input] Found joypad driver: “dinput”. [INFO] [Video] Found display server: “win32”. [INFO] [Audio] Set audio input rate to: 48000.00 Hz. [INFO] [XAudio2] Requesting 64 ms latency, using 64 ms latency. [INFO] [Audio] Started synchronous audio driver. [INFO] [Microphone] Initialized microphone driver. [INFO] [Display] Found display driver: “vulkan”. [INFO] [Playlist] Loading favorites file: “M:\Launchbox\Emulators\RetroArch\RetroArch\playlists\builtin\content_favorites.lpl”. [INFO] [Playlist] Loading history file: “M:\Launchbox\Emulators\RetroArch\RetroArch\playlists\builtin\content_history.lpl”. [INFO] [Playlist] Loading history file: “M:\Launchbox\Emulators\RetroArch\RetroArch\playlists\builtin\content_image_history.lpl”. [INFO] [Playlist] Loading history file: “M:\Launchbox\Emulators\RetroArch\RetroArch\playlists\builtin\content_music_history.lpl”. [INFO] [Playlist] Loading history file: “M:\Launchbox\Emulators\RetroArch\RetroArch\playlists\builtin\content_video_history.lpl”. [INFO] [Content] Updating firmware status for: “M:\Launchbox\Emulators\RetroArch\RetroArch\cores\azahar_libretro.dll” on “M:\Launchbox\Emulators\RetroArch\RetroArch\system”. [INFO] [Core] Using content: “M:\Legend of Zelda, The - Ocarina of Time 3D (USA) (En,Fr,Es) (Rev 1).cci”. [INFO] [Core] Unloading core… [INFO] [Core] Unloading core symbols… [INFO] RetroArch 1.22.1 (Git 9f9a984) [INFO] === Build ======================================= [INFO] CPU Model Name: Intel® Core™ i7-14700K [INFO] Capabilities: MMX MMXEXT SSE SSE2 SSE3 SSSE3 SSE4 SSE42 AES AVX AVX2 [INFO] Version: 1.22.1 [INFO] Git: 9f9a984 [INFO] Built: Nov 15 2025 [INFO] ================================================= [INFO] [Input] Found input driver: “dinput”. [INFO] [Core] Loading dynamic libretro core from: “M:\Launchbox\Emulators\RetroArch\RetroArch\cores\azahar_libretro.dll”. [INFO] [Override] Redirecting save file to “M:\Launchbox\Emulators\RetroArch\RetroArch\saves\Azahar\Legend of Zelda, The - Ocarina of Time 3D (USA) (En,Fr,Es) (Rev 1).srm”. [INFO] [Override] Redirecting save state to “M:\Launchbox\Emulators\RetroArch\RetroArch\states\Azahar\Legend of Zelda, The - Ocarina of Time 3D (USA) (En,Fr,Es) (Rev 1).state”. [INFO] [Environ] GET_CORE_OPTIONS_VERSION. [INFO] [Environ] SET_CORE_OPTIONS_V2. [INFO] [Environ] SET_CONTROLLER_INFO. [INFO] [Environ] GET_LOG_INTERFACE. [INFO] [Content] Content loading skipped. Implementation will load it on its own. [libretro INFO] [ 0.000415] Frontend citra_libretro/citra_libretro.cpp:retro_load_game:435: Starting Azahar RetroArch game… [INFO] [Environ] GET_SAVE_DIRECTORY: “M:\Launchbox\Emulators\RetroArch\RetroArch\saves\Azahar”. [libretro INFO] [ 0.000572] Common.Filesystem common/file_util.cpp:SetUserPath:818: Using M:\Launchbox\Emulators\RetroArch\RetroArch\saves\Azahar/Azahar/ as the user directory [libretro INFO] [ 0.000577] Frontend citra_libretro/core_settings.cpp:ParseStorageOptions:941: User dir set to “M:\Launchbox\Emulators\RetroArch\RetroArch\saves\Azahar/Azahar/”. [INFO] [Environ] SET_INPUT_DESCRIPTORS. [INFO] [Environ] SET_GEOMETRY: 3600x4320, Aspect: 0.833. [INFO] [Environ] SET_PIXEL_FORMAT: XRGB8888. [INFO] [Environ] SET_GEOMETRY. [INFO] [Environ] SET_HW_RENDER, context type: vulkan. [INFO] [HW] Requesting Vulkan context. [INFO] [Environ] SET_HW_RENDER_CONTEXT_NEGOTIATION_INTERFACE. [libretro INFO] [ 0.000745] Frontend citra_libretro/citra_libretro.cpp:retro_load_game:476: Using Vulkan hw renderer [INFO] [RCHEEVOS] Using host: https://retroachievements.org [INFO] [RCHEEVOS] Hardcore disabled [INFO] [RCHEEVOS] Unofficial disabled [INFO] [RCHEEVOS] Encore mode disabled [INFO] [RCHEEVOS] Spectator mode disabled [INFO] [RCHEEVOS] Load started, hardcore not active [INFO] [RCHEEVOS] Attempting to log in SiriusVI (with password) [INFO] [RCHEEVOS] Identifying game: M:\Legend of Zelda, The - Ocarina of Time 3D (USA) (En,Fr,Es) (Rev 1).cci [INFO] [RCHEEVOS] Found 1 potential consoles for cci file extension [INFO] [RCHEEVOS] Trying console 62 [INFO] [RCHEEVOS] Opened Legend of Zelda, The - Ocarina of Time 3D (USA) (En,Fr,Es) (Rev 1).cci [INFO] [RCHEEVOS] Hashing 512 byte NCSD header [INFO] [RCHEEVOS] Detected NCSD header, seeking to NCCH partition at 0000000000004000 [INFO] [RCHEEVOS] Hashing 512 byte NCCH header [INFO] [RCHEEVOS] Hashing 3111936 bytes for ExeFS (at NCCH offset 0000000000000A00) [INFO] [RCHEEVOS] Generated hash a582b6832f7db3c9cc858dc0f8c79761 [INFO] [State] found_last_state_slot: #10. [INFO] [SRAM] Skipping SRAM load. [INFO] [Core] Version of libretro API: 1, Compiled against API: 1 [INFO] [Core] Geometry: 400x480, Aspect: 0.000, FPS: 60.00, Sample rate: 32728.00 Hz. [INFO] [Video] Set video size to: fullscreen. [INFO] [Video] Using HW render, vulkan driver forced. [INFO] [Vulkan] Vulkan dynamic library loaded. [INFO] [Vulkan] Got HW context negotiation interface 2. [INFO] [Vulkan] Found GPU at index 0: “NVIDIA GeForce RTX 4070 Ti”. [INFO] [Vulkan] Using GPU index 0. [libretro INFO] [ 0.025597] Render.Vulkan citra_libretro/libretro_vk.cpp:CreateVulkanDevice:68: CreateDevice callback invoked - negotiating Vulkan device creation [libretro INFO] [ 0.025710] Render.Vulkan citra_libretro/libretro_vk.cpp:AddExtensionIfAvailable:52: Enabling Vulkan extension: VK_KHR_image_format_list [libretro INFO] [ 0.025714] Render.Vulkan citra_libretro/libretro_vk.cpp:AddExtensionIfAvailable:52: Enabling Vulkan extension: VK_EXT_external_memory_host [libretro INFO] [ 0.025716] Render.Vulkan citra_libretro/libretro_vk.cpp:AddExtensionIfAvailable:52: Enabling Vulkan extension: VK_EXT_tooling_info [INFO] [Vulkan] Using GPU: “NVIDIA GeForce RTX 4070 Ti”. [libretro INFO] [ 0.058827] Render.Vulkan citra_libretro/libretro_vk.cpp:CreateVulkanDevice:188: Vulkan device created successfully via negotiation interface (GPU: 0xe432720, Queue Family: 0) [INFO] [Vulkan] Got 3 swapchain images. [INFO] [Vulkan] Using resolution 3840x2160. [INFO] [Vulkan] Using BGRA8888 format. [INFO] [Shaders] Specific shader preset found at “M:\Launchbox\Emulators\RetroArch\RetroArch\config\Azahar\Azahar.slangp”. [INFO] [Slang] Compiling shader: “M:\Launchbox\Emulators\RetroArch\RetroArch\shaders\shaders_slang\bezel\Mega_Bezel\shaders\guest\extras\hsm-drez-none.slang”. [INFO] [Vulkan] Using render target format R8G8B8A8_SRGB for pass output #0. [INFO] [Slang] Compiling shader: “M:\Launchbox\Emulators\RetroArch\RetroArch\shaders\shaders_slang\bezel\Mega_Bezel\shaders\base\cache-info-all-params.slang”. [INFO] [Vulkan] Using render target format R32G32B32A32_SFLOAT for pass output #1. [INFO] [Slang] Compiling shader: “M:\Launchbox\Emulators\RetroArch\RetroArch\shaders\shaders_slang\bezel\Mega_Bezel\shaders\base\text-adv.slang”. [INFO] [Vulkan] Using render target format R16G16B16A16_SFLOAT for pass output #2. [INFO] [Slang] Compiling shader: “M:\Launchbox\Emulators\RetroArch\RetroArch\shaders\shaders_slang\bezel\Mega_Bezel\shaders\guest\extras\hsm-fetch-drez-output.slang”. [INFO] [Vulkan] Using render target format R8G8B8A8_SRGB for pass output #3. [INFO] [Slang] Compiling shader: “M:\Launchbox\Emulators\RetroArch\RetroArch\shaders\shaders_slang\bezel\Mega_Bezel\shaders\dedither\dedither-gamma-prep-1-before.slang”. [INFO] [Vulkan] Using render target format R8G8B8A8_UNORM for pass output #4. [INFO] [Slang] Compiling shader: “M:\Launchbox\Emulators\RetroArch\RetroArch\shaders\shaders_slang\bezel\Mega_Bezel\shaders\hyllian\sgenpt-mix\sgenpt-mix-pass1.slang”. [INFO] [Vulkan] Using render target format R8G8B8A8_UNORM for pass output #5. [INFO] [Slang] Compiling shader: “M:\Launchbox\Emulators\RetroArch\RetroArch\shaders\shaders_slang\bezel\Mega_Bezel\shaders\hyllian\sgenpt-mix\sgenpt-mix-pass2.slang”. [INFO] [Vulkan] Using render target format R8G8B8A8_UNORM for pass output #6. [INFO] [Slang] Compiling shader: “M:\Launchbox\Emulators\RetroArch\RetroArch\shaders\shaders_slang\bezel\Mega_Bezel\shaders\hyllian\sgenpt-mix\sgenpt-mix-pass3.slang”. [INFO] [Vulkan] Using render target format R8G8B8A8_UNORM for pass output #7. [INFO] [Slang] Compiling shader: “M:\Launchbox\Emulators\RetroArch\RetroArch\shaders\shaders_slang\bezel\Mega_Bezel\shaders\hyllian\sgenpt-mix\sgenpt-mix-pass4.slang”. [INFO] [Vulkan] Using render target format R8G8B8A8_UNORM for pass output #8. [INFO] [Slang] Compiling shader: “M:\Launchbox\Emulators\RetroArch\RetroArch\shaders\shaders_slang\bezel\Mega_Bezel\shaders\hyllian\sgenpt-mix\sgenpt-mix-pass5.slang”. [INFO] [Vulkan] Using render target format R8G8B8A8_UNORM for pass output #9. [INFO] [Slang] Compiling shader: “M:\Launchbox\Emulators\RetroArch\RetroArch\shaders\shaders_slang\bezel\Mega_Bezel\shaders\dedither\dedither-gamma-prep-2-after.slang”. [INFO] [Vulkan] Using render target format R8G8B8A8_UNORM for pass output #10. [INFO] [Slang] Compiling shader: “M:\Launchbox\Emulators\RetroArch\RetroArch\shaders\shaders_slang\bezel\Mega_Bezel\shaders\ps1dither\hsm-PS1-Undither-BoxBlur.slang”. [INFO] [Vulkan] Using render target format R8G8B8A8_UNORM for pass output #11. [INFO] [Slang] Compiling shader: “M:\Launchbox\Emulators\RetroArch\RetroArch\shaders\shaders_slang\bezel\Mega_Bezel\shaders\fxaa\fxaa.slang”. [INFO] [Vulkan] Using render target format R8G8B8A8_UNORM for pass output #12. [INFO] [Slang] Compiling shader: “M:\Launchbox\Emulators\RetroArch\RetroArch\shaders\shaders_slang\bezel\Mega_Bezel\shaders\guest\extras\hsm-g-sharp_resampler.slang”. [INFO] [Vulkan] Using render target format R8G8B8A8_UNORM for pass output #13. [INFO] [Slang] Compiling shader: “M:\Launchbox\Emulators\RetroArch\RetroArch\shaders\shaders_slang\bezel\Mega_Bezel\shaders\guest\extras\hsm-sharpsmoother.slang”. [INFO] [Vulkan] Using render target format R8G8B8A8_UNORM for pass output #14. [INFO] [Slang] Compiling shader: “M:\Launchbox\Emulators\RetroArch\RetroArch\shaders\shaders_slang\bezel\Mega_Bezel\shaders\base\intro.slang”. [INFO] [Vulkan] Using render target format R16G16B16A16_SFLOAT for pass output #15. [INFO] [Slang] Compiling shader: “M:\Launchbox\Emulators\RetroArch\RetroArch\shaders\shaders_slang\bezel\Mega_Bezel\shaders\gtu\hsm-gtu-pass1.slang”. [INFO] [Vulkan] Using render target format R16G16B16A16_SFLOAT for pass output #16. [INFO] [Slang] Compiling shader: “M:\Launchbox\Emulators\RetroArch\RetroArch\shaders\shaders_slang\bezel\Mega_Bezel\shaders\gtu\hsm-gtu-pass2.slang”. [INFO] [Vulkan] Using render target format R16G16B16A16_SFLOAT for pass output #17. [INFO] [Slang] Compiling shader: “M:\Launchbox\Emulators\RetroArch\RetroArch\shaders\shaders_slang\bezel\Mega_Bezel\shaders\base\stock.slang”. [INFO] [Vulkan] Using render target format R8G8B8A8_UNORM for pass output #18. [INFO] [Slang] Compiling shader: “M:\Launchbox\Emulators\RetroArch\RetroArch\shaders\shaders_slang\bezel\Mega_Bezel\shaders\guest\hsm-afterglow0.slang”. [INFO] [Vulkan] Using render target format R8G8B8A8_UNORM for pass output #19. [INFO] [Slang] Compiling shader: “M:\Launchbox\Emulators\RetroArch\RetroArch\shaders\shaders_slang\bezel\Mega_Bezel\shaders\guest\hsm-pre-shaders-afterglow.slang”. [INFO] [Vulkan] Using render target format R8G8B8A8_UNORM for pass output #20. [INFO] [Slang] Compiling shader: “M:\Launchbox\Emulators\RetroArch\RetroArch\shaders\shaders_slang\bezel\Mega_Bezel\shaders\dogway\hsm-grade.slang”. [INFO] [Vulkan] Using render target format R8G8B8A8_UNORM for pass output #21. [INFO] [Slang] Compiling shader: “M:\Launchbox\Emulators\RetroArch\RetroArch\shaders\shaders_slang\bezel\Mega_Bezel\shaders\guest\hsm-custom-fast-sharpen.slang”. [INFO] [Vulkan] Using render target format R8G8B8A8_UNORM for pass output #22. [INFO] [Slang] Compiling shader: “M:\Launchbox\Emulators\RetroArch\RetroArch\shaders\shaders_slang\bezel\Mega_Bezel\shaders\base\stock.slang”. [INFO] [Vulkan] Using render target format R8G8B8A8_UNORM for pass output #23. [INFO] [Slang] Compiling shader: “M:\Launchbox\Emulators\RetroArch\RetroArch\shaders\shaders_slang\bezel\Mega_Bezel\shaders\guest\hsm-avg-lum.slang”. [INFO] [Vulkan] Using render target format R8G8B8A8_UNORM for pass output #24. [INFO] [Slang] Compiling shader: “M:\Launchbox\Emulators\RetroArch\RetroArch\shaders\shaders_slang\bezel\Mega_Bezel\shaders\guest\hsm-interlace-and-linearize.slang”. [INFO] [Vulkan] Using render target format R16G16B16A16_SFLOAT for pass output #25. [INFO] [Slang] Compiling shader: “M:\Launchbox\Emulators\RetroArch\RetroArch\shaders\shaders_slang\bezel\Mega_Bezel\shaders\guest\hsm-gaussian_horizontal.slang”. [INFO] [Vulkan] Using render target format R16G16B16A16_SFLOAT for pass output #26. [INFO] [Slang] Compiling shader: “M:\Launchbox\Emulators\RetroArch\RetroArch\shaders\shaders_slang\bezel\Mega_Bezel\shaders\guest\hsm-gaussian_vertical.slang”. [INFO] [Vulkan] Using render target format R16G16B16A16_SFLOAT for pass output #27. [INFO] [Slang] Compiling shader: “M:\Launchbox\Emulators\RetroArch\RetroArch\shaders\shaders_slang\bezel\Mega_Bezel\shaders\guest\hsm-bloom_horizontal.slang”. [INFO] [Vulkan] Using render target format R16G16B16A16_SFLOAT for pass output #28. [INFO] [Slang] Compiling shader: “M:\Launchbox\Emulators\RetroArch\RetroArch\shaders\shaders_slang\bezel\Mega_Bezel\shaders\guest\hsm-bloom_vertical.slang”. [INFO] [Vulkan] Using render target format R16G16B16A16_SFLOAT for pass output #29. [INFO] [Slang] Compiling shader: “M:\Launchbox\Emulators\RetroArch\RetroArch\shaders\shaders_slang\bezel\Mega_Bezel\shaders\guest\hsm-crt-guest-advanced.slang”. [INFO] [Vulkan] Using render target format R16G16B16A16_SFLOAT for pass output #30. [INFO] [Slang] Compiling shader: “M:\Launchbox\Emulators\RetroArch\RetroArch\shaders\shaders_slang\bezel\Mega_Bezel\shaders\guest\hsm-deconvergence.slang”. [INFO] [Vulkan] Using render target format R16G16B16A16_SFLOAT for pass output #31. [INFO] [Slang] Compiling shader: “M:\Launchbox\Emulators\RetroArch\RetroArch\shaders\shaders_slang\bezel\Mega_Bezel\shaders\base\post-crt-prep-image-layers.slang”. [INFO] [Vulkan] Using render target format R16G16B16A16_SFLOAT for pass output #32. [INFO] [Slang] Compiling shader: “M:\Launchbox\Emulators\RetroArch\RetroArch\shaders\shaders_slang\bezel\Mega_Bezel\shaders\base\bezel-images-under-crt.slang”. [INFO] [Vulkan] Using render target format R16G16B16A16_SFLOAT for pass output #33. [INFO] [Slang] Compiling shader: “M:\Launchbox\Emulators\RetroArch\RetroArch\shaders\shaders_slang\bezel\Mega_Bezel\shaders\base\bezel-images-over-crt.slang”. [INFO] [Vulkan] Using render target format R16G16B16A16_SFLOAT for pass output #34. [INFO] [Slang] Compiling shader: “M:\Launchbox\Emulators\RetroArch\RetroArch\shaders\shaders_slang\bezel\Mega_Bezel\shaders\base\linearize-crt.slang”. [INFO] [Vulkan] Using render target format R16G16B16A16_SFLOAT for pass output #35. [INFO] [Slang] Compiling shader: “M:\Launchbox\Emulators\RetroArch\RetroArch\shaders\shaders_slang\bezel\Mega_Bezel\shaders\base\blur-outside-screen-horiz.slang”. [INFO] [Vulkan] Using render target format R8G8B8A8_UNORM for pass output #36. [INFO] [Slang] Compiling shader: “M:\Launchbox\Emulators\RetroArch\RetroArch\shaders\shaders_slang\bezel\Mega_Bezel\shaders\base\blur-outside-screen-vert.slang”. [INFO] [Vulkan] Using render target format R8G8B8A8_UNORM for pass output #37. [INFO] [Slang] Compiling shader: “M:\Launchbox\Emulators\RetroArch\RetroArch\shaders\shaders_slang\blurs\shaders\royale\blur9x9.slang”. [INFO] [Vulkan] Using render target format R16G16B16A16_SFLOAT for pass output #38. [INFO] [Slang] Compiling shader: “M:\Launchbox\Emulators\RetroArch\RetroArch\shaders\shaders_slang\blurs\shaders\royale\blur9x9.slang”. [INFO] [Vulkan] Using render target format R16G16B16A16_SFLOAT for pass output #39. [INFO] [Slang] Compiling shader: “M:\Launchbox\Emulators\RetroArch\RetroArch\shaders\shaders_slang\bezel\Mega_Bezel\shaders\base\reflection.slang”. [INFO] [Vulkan] Using render target format R16G16B16A16_SFLOAT for pass output #40. [INFO] [Slang] Compiling shader: “M:\Launchbox\Emulators\RetroArch\RetroArch\shaders\shaders_slang\bezel\Mega_Bezel\shaders\base\combine-passes.slang”. [INFO] [Vulkan] Creating framebuffer 8192x8192 (max 1 level(s)). [INFO] [Vulkan] Creating framebuffer 8192x8192 (max 1 level(s)). [INFO] [Vulkan] Creating framebuffer 8192x8192 (max 1 level(s)). [INFO] [Vulkan] Creating framebuffer 8192x8192 (max 1 level(s)). [INFO] [Vulkan] Creating framebuffer 8192x8192 (max 1 level(s)). [INFO] [Vulkan] Creating framebuffer 8192x8192 (max 1 level(s)). [INFO] [Vulkan] Creating framebuffer 8192x8192 (max 1 level(s)). [INFO] [Vulkan] Creating framebuffer 8192x8192 (max 1 level(s)). [INFO] [Vulkan] Creating framebuffer 8192x8192 (max 1 level(s)). [INFO] [Vulkan] Creating framebuffer 8192x8192 (max 1 level(s)). [INFO] [Vulkan] Creating framebuffer 8192x8192 (max 1 level(s)). [INFO] [Vulkan] Creating framebuffer 8192x8192 (max 1 level(s)). [INFO] [Vulkan] Creating framebuffer 8192x8192 (max 1 level(s)). [INFO] [Vulkan] Creating framebuffer 8192x8192 (max 1 level(s)). [INFO] [Vulkan] Creating framebuffer 8192x8192 (max 1 level(s)). [INFO] [Vulkan] Creating framebuffer 8192x8192 (max 1 level(s)). [INFO] [Vulkan] Creating framebuffer 8192x8192 (max 1 level(s)). [INFO] [Vulkan] Creating framebuffer 8192x8192 (max 1 level(s)). [INFO] [Vulkan] Creating framebuffer 8192x8192 (max 1 level(s)). [INFO] [Vulkan] Creating framebuffer 8192x8192 (max 4294967295 level(s)). [INFO] [Vulkan] Creating framebuffer 8192x8192 (max 1 level(s)). [INFO] [Vulkan] Creating framebuffer 8192x8192 (max 1 level(s)). [INFO] [Vulkan] Creating framebuffer 8192x8192 (max 4294967295 level(s)). [INFO] [Vulkan] Creating framebuffer 8192x8192 (max 4294967295 level(s)). [INFO] [Vulkan] Creating framebuffer 8192x8192 (max 1 level(s)). [INFO] [Vulkan] Creating framebuffer 8192x8192 (max 1 level(s)). [INFO] [Vulkan] Creating framebuffer 800x8192 (max 1 level(s)). [INFO] [Vulkan] Creating framebuffer 800x600 (max 1 level(s)). [INFO] [Vulkan] Creating framebuffer 800x600 (max 1 level(s)). [INFO] [Vulkan] Creating framebuffer 800x600 (max 1 level(s)). [INFO] [Vulkan] Creating framebuffer 3840x2160 (max 1 level(s)). [INFO] [Vulkan] Creating framebuffer 3840x2160 (max 4294967295 level(s)). [INFO] [Vulkan] Creating framebuffer 3840x2160 (max 1 level(s)). [INFO] [Vulkan] Creating framebuffer 3840x2160 (max 1 level(s)). [INFO] [Vulkan] Creating framebuffer 3840x2160 (max 4294967295 level(s)). [INFO] [Vulkan] Creating framebuffer 800x600 (max 4294967295 level(s)). [INFO] [Vulkan] Creating framebuffer 800x600 (max 1 level(s)). [INFO] [Vulkan] Creating framebuffer 800x600 (max 4294967295 level(s)). [INFO] [Vulkan] Creating framebuffer 128x128 (max 4294967295 level(s)). [INFO] [Vulkan] Creating framebuffer 12x12 (max 1 level(s)). [INFO] [Vulkan] Creating framebuffer 3840x2160 (max 1 level(s)). [INFO] [Vulkan] Creating framebuffer 8192x8192 (max 1 level(s)). [INFO] [Vulkan] Creating framebuffer 8192x8192 (max 1 level(s)). [INFO] [Vulkan] Creating framebuffer 8192x8192 (max 1 level(s)). [INFO] [Vulkan] Creating framebuffer 8192x8192 (max 1 level(s)). [INFO] [Vulkan] Using framebuffer feedback for pass #1. [INFO] [Vulkan] Creating framebuffer 8192x8192 (max 1 level(s)). [INFO] [Vulkan] Using framebuffer feedback for pass #2. [INFO] [Vulkan] Creating framebuffer 8192x8192 (max 4294967295 level(s)). [INFO] [Vulkan] Using framebuffer feedback for pass #19. [INFO] [Vulkan] Creating framebuffer 8192x8192 (max 1 level(s)). [INFO] [Vulkan] Using framebuffer feedback for pass #24. [INFO] [Vulkan] Creating framebuffer 3840x2160 (max 1 level(s)). [INFO] [Vulkan] Using framebuffer feedback for pass #32. [INFO] [Vulkan] Creating framebuffer 3840x2160 (max 1 level(s)). [INFO] [Vulkan] Using framebuffer feedback for pass #33. [INFO] [Vulkan] Creating framebuffer 3840x2160 (max 4294967295 level(s)). [INFO] [Vulkan] Using framebuffer feedback for pass #34. [INFO] [Vulkan] Creating framebuffer 3840x2160 (max 1 level(s)). [INFO] [Vulkan] Using framebuffer feedback for pass #40. [INFO] [Input] Found joypad driver: “dinput”. [INFO] [Video] Found display server: “win32”. [libretro ERROR] [ 3.732191] Service.FS core/file_sys/ncch_container.cpp:LoadHeader:171: 16384 [libretro ERROR] [ 3.838745] Service.NWM core/hle/service/nwm/nwm_uds.cpp:NWM_UDS:1557: Network isn’t initalized [libretro ERROR] [ 3.839159] Service.HTTP core/hle/service/http/http_c.cpp:DecryptClCertA:2107: ClCertA file missing, using default [libretro INFO] [ 3.840188] Render.Vulkan video_core/renderer_vulkan/vk_instance.cpp:operator():433: Enabling extension: VK_KHR_swapchain [libretro INFO] [ 3.840193] Render.Vulkan video_core/renderer_vulkan/vk_instance.cpp:operator():433: Enabling extension: VK_KHR_image_format_list [libretro WARN] [ 3.840194] Render.Vulkan video_core/renderer_vulkan/vk_instance.cpp:operator():442: Extension VK_EXT_shader_stencil_export unavailable. [libretro INFO] [ 3.840195] Render.Vulkan video_core/renderer_vulkan/vk_instance.cpp:operator():433: Enabling extension: VK_EXT_external_memory_host [libretro INFO] [ 3.840196] Render.Vulkan video_core/renderer_vulkan/vk_instance.cpp:operator():433: Enabling extension: VK_EXT_tooling_info [libretro INFO] [ 3.840196] Render.Vulkan video_core/renderer_vulkan/vk_instance.cpp:operator():433: Enabling extension: VK_KHR_timeline_semaphore [libretro WARN] [ 3.840197] Render.Vulkan video_core/renderer_vulkan/vk_instance.cpp:operator():442: Extension VK_KHR_portability_subset unavailable. [libretro INFO] [ 3.840197] Render.Vulkan video_core/renderer_vulkan/vk_instance.cpp:operator():433: Enabling extension: VK_EXT_extended_dynamic_state [libretro INFO] [ 3.840198] Render.Vulkan video_core/renderer_vulkan/vk_instance.cpp:operator():433: Enabling extension: VK_EXT_custom_border_color [libretro INFO] [ 3.840198] Render.Vulkan video_core/renderer_vulkan/vk_instance.cpp:operator():433: Enabling extension: VK_EXT_index_type_uint8 [libretro WARN] [ 3.840199] Render.Vulkan video_core/renderer_vulkan/vk_instance.cpp:operator():437: Extension VK_EXT_fragment_shader_interlock has been blacklisted because it is broken on Nvidia drivers [libretro WARN] [ 3.840199] Render.Vulkan video_core/renderer_vulkan/vk_instance.cpp:operator():437: Extension VK_EXT_pipeline_creation_cache_control has been blacklisted because it is broken on Nvidia drivers [libretro INFO] [ 3.840200] Render.Vulkan video_core/renderer_vulkan/vk_instance.cpp:operator():433: Enabling extension: VK_KHR_fragment_shader_barycentric [libretro WARN] [ 3.840205] Render.Vulkan citra_libretro/libretro_vk.cpp:LibRetroVKInstance:287: Extended dynamic state function pointers not available in LibRetro context, disabling [libretro WARN] [ 3.840205] Render.Vulkan citra_libretro/libretro_vk.cpp:LibRetroVKInstance:295: Timeline semaphore function pointers not available in LibRetro context, disabling [libretro WARN] [ 3.840235] Render.Vulkan video_core/renderer_vulkan/vk_instance.cpp:CreateFormatTable:302: Format B8G8R8Unorm unsupported, falling back unconditionally to R8G8B8A8Unorm [libretro WARN] [ 3.840236] Render.Vulkan video_core/renderer_vulkan/vk_instance.cpp:CreateFormatTable:302: Format R5G5B5A1UnormPack16 unsupported, falling back unconditionally to R8G8B8A8Unorm [libretro WARN] [ 3.840237] Render.Vulkan video_core/renderer_vulkan/vk_instance.cpp:CreateFormatTable:302: Format R4G4B4A4UnormPack16 unsupported, falling back unconditionally to R8G8B8A8Unorm [libretro INFO] [ 3.840268] Render.Vulkan video_core/renderer_vulkan/vk_instance.cpp:CollectToolingInfo:676: VK_DRIVER: NVIDIA 581.80.0.0 [libretro INFO] [ 3.840269] Render.Vulkan video_core/renderer_vulkan/vk_instance.cpp:CollectToolingInfo:677: VK_DEVICE: NVIDIA GeForce RTX 4070 Ti [libretro INFO] [ 3.840269] Render.Vulkan video_core/renderer_vulkan/vk_instance.cpp:CollectToolingInfo:678: VK_VERSION: 1.4.312 [libretro INFO] [ 3.840287] Render.Vulkan citra_libretro/libretro_vk.cpp:LibRetroVKInstance:308: LibRetro Vulkan Instance initialized successfully [libretro INFO] [ 3.840288] Render.Vulkan citra_libretro/libretro_vk.cpp:LibRetroVKInstance:309: Device: NVIDIA GeForce RTX 4070 Ti (NVIDIA) [libretro INFO] [ 3.840288] Render.Vulkan citra_libretro/libretro_vk.cpp:LibRetroVKInstance:310: Driver: 581.80.0.0 [libretro INFO] [ 3.840521] Render.Vulkan citra_libretro/libretro_vk.cpp:PresentWindow:331: Initializing LibRetro PresentWindow [libretro INFO] [ 4.635824] Render.Vulkan citra_libretro/libretro_vk.cpp:PresentWindow:349: LibRetro PresentWindow initialized with 3600x4320 [libretro INFO] [ 4.635839] Render.Vulkan video_core/renderer_vulkan/vk_stream_buffer.cpp:CreateBuffers:198: Creating Stream buffer with size 128 KiB with flags { DeviceLocal | HostVisible | HostCoherent } [libretro INFO] [ 4.707831] Render.Vulkan video_core/renderer_vulkan/vk_stream_buffer.cpp:CreateBuffers:198: Creating Upload buffer with size 524288 KiB with flags { HostVisible | HostCoherent } [libretro INFO] [ 4.708383] Render.Vulkan video_core/renderer_vulkan/vk_stream_buffer.cpp:CreateBuffers:198: Creating Download buffer with size 16384 KiB with flags { HostVisible | HostCoherent | HostCached } [libretro INFO] [ 4.956271] Render.Vulkan video_core/renderer_vulkan/vk_stream_buffer.cpp:CreateBuffers:198: Creating Stream buffer with size 65536 KiB with flags { DeviceLocal | HostVisible | HostCoherent }

EDIT: 2

I got it working by forcing the API to OpenGL in the Azahar graphics settings. But when switching to Vulkan, I can’t get it to work.

Any idea why it would work with OpenGL and not with Vulkan?

1 Like

Of course I would, but with the Mega Bezel, the shaders have to be surgically added by HSM.

The DMG was an option for about a year during the journey to v1.0 but was dropped for various reasons. Adding it back in was always on his list, but I think @kokoko3k’s dot matrix code looks quite good and is way more versatile than the DMG. Odds are much greater that HSM will integrate that instead at some point.

Authenticity is great but versatility is a Mega Bezel specialty.

2 Likes

Just so you can be sure, try this version where they fixed that issue today (make it a separate installation, don’t replace your current one until the next stable release).

1 Like

@Starman99x I tried all three versions, but it didn’t solve my issue. Vulkan still crashes whenever I try loading any of the Duimon Shaders =/. Other shaders, such as simple CRT shaders, do work with Vulkan however.

Edit: Are you on Windows?

@SiriusVI Yes I’m on Windows 11. Did you try a different device? I noticed that Vulkan drivers can be picky sometimes. Try to test on a different PC/Phone if you can, preferably something higher end than your current setup. This had helped me figure out a similar issue before.

I can try on my second PC, but my main one is pretty high end already, so I’m pretty sure it’s not a performance issue.

I should also notice that I don’t have any issues with other cores running Vulkan and Duimon shaders. It’s just this Azahar Core.

Which verson of the Azahar core did you try out? The latest one from Oct 1, 7:47 AM GMT+2?

Edit: @Starman99x since the issue appears on a freah retroarch setup with default settings, maybe you could tell me if you changed some settings that could affect this issue somehow.

Also, how did you configure your core options in Azahar?

Wait wait wait, I just encountered the crash myself:

Screenshot_2

It seems this crash happens with Vulkan + Nintendo_3DS presets.

But it DOES NOT happen with Vulkan + Nintendo_3DS_DREZ presets (my setup).

Glcore on the other hand, works well with both preset folders.

The log file shows no errors, this seems like a core issue. Maybe the dev can take feedback here where they are currently testing and reviewing the core. In the meantime, switch to DREZ presets, but first upscale the Azahar internal res (I’m using 2x). The DREZ presets will downsample the image back to the native resolution with the added benefit of some smoothing (similar to Anti-aliasing).

1 Like

@Starman99x Great find! DREZ works for me as well in Vulkan. Alright, so knowing that it’s not a setup issue on my end, I can wait patiently for core updates.

On a sidenote, what settings in Windows did you activate to get the error message window that you posted? On my end, RetroArch just crashes and I have to end the task. I never got any error message like you did.

1 Like