Crt-Royale Kurozumi Edition Help


1200p, 1440p and 2160p monitors are great for retro gaming, 224p and 240p resolutions (or 448i and 480i) are a perfect fit.
But 1440p also fits 480p perfectly, so it is the preferred choice for PC monitors for emulation.


with my 1080p display, if i set the aspect ratio to custom and integer scale on, will it keep even scanlines as i increase the vertical and horizontal resolution?

on a sidenote i played through super metroid for the first time with this shader, made for a great experience!


Yes, you can make an integer scale image that’s larger than your actual screen and the lines will still be even. 5x height and 6x width looks quite nice.


I am getting green vertical lines on a black screen using the glsl shader on my nvidia 1070. The cg one works fine. Just wondering if it’s a known issue?


Hi there, i guess, if you got the bug in GLSL, if you use vulkan and the slang version, the bug is there, too? Can you cross check that?

I found some bugs in glsl/slang version, too, about two months ago, but don’t know either, yet, if something has changed since then (been very busy with my day job).

Besides that i’m honest, i usually previously fixed the stuff, occouring with parameters that broke f.e. some resolutions etc. (parameter related stuff)

The guy that made the glsl and slang versions possible, is hunterk * kudos again * , so if in the shader programming is something utterly wrong, he would be the man.

If i got some spare time, i try to recreate your problem, which renderer do u use?


Is the slang version still in the buildbot? I just updated my shaders and went to look for this but I can’t seem to find it. Has it been renamed or something?


It’s in the ‘presets’ directory


All I have in the presets folder are core specific settings I’ve saved.


dunno what to tell you:


Ah, found it! I was looking at the presets folder in the shaders directory, not the other presets folder in the crt sub-folder. Thanks for the assist.


I’ve been getting a bug whereby the top 1/2 of the screen has green bars. Doesn’t matter what core.


Is that screenshot supposed to show it? because it looks fine to me.


Hi, hunterk :sweat_smile:

Yes. You don’t see vertical pinstripes at the top 1/2 of the screen?


Ohhh, I see it now. It’s only visible on my crappy monitor from certain angles.

That said, I don’t know how the shader would cause that. Do any other shaders do it? What about non-kurozumi royale?


As far as I’ve tried, nothing else does this. crt-aperture, crt-geom, crt-lottes, crt-hyllian, etc they don’t do this. (I just deleted my shaders directory and re-downloaded the files but I get the same result).

Regular Royale doesn’t do this (OpenGL, btw)


I’m not sure what exactly causes this but setting Mask - Type to 2 or Mask - Sample Mode to 1 fixes this.


Oh boy that looks weird, i try to replicate that and see what’s causing it. On which Video Driver/Shader version does this happen?


Hi, Kurozumi. I use Driver: gl and GLSL shader inside the presets folder. As NecroPoster said, changing Sample mode to 1 fixes it but I’m not sure why.


So reading through this entire thread, can someone posts the recommended settings for a 4k display with this shader? Or is the current preset good enough? I’m confused if mask_triad_size_desired still needs a value of 3, and the convergence offsets require values of 0.


@Forscythe : The thing is, Mask_triad_size_desired scales with the resolution itself. That’s what makes it a little bit tricky to make it look nice for everyone. So f.e. if you have a resolution of 800x600 a value of 3 would look way coarser as the same value on 1080p. On 1440p a value of 3 would give a again a higher TV line look than on 1080p, that goes on and on with the resolutions.

So the BVMs have a pretty high TV line count (the vertical mask pitch/subpixel lines), about 900 or 1000+ (Consumer TVs of the late 80s / 90s had 480, or later 600 tv lines), which makes a good aperture grille emulation almost impossible until you get pretty high resolutions, in this case 2160p or more.

The standard value of 1 is absolutely fine, even at 4k, but the most accurate one would be a value of 3 at that resolution. Especially on a pretty big 4kTV you would recognize the difference, on a 75inch TV it looks like this:

If you look closely you can see each scanline is made out of tiny little vertical lines, if you had a value of 1, you wouldn’t see it. That’s why i wrote wayback , on less then 4k i would use a value of 1, on 4k or more i would use 3 .

As for the convergence, the values that are in the shader should be pretty accurate. Every BVM i’ve seen, even if it was tweaked and calibrated to death, never had the 100% perfect convergence. The “signature thing” going on the BVMs (the ones i’ve seen; and macro screenshots often tell the same) if something white on 240p is displayed you almost always have a slightly green top and a magenta bottom, even if the convergence otherwise is spot on. The values that are in there will give you that.

It’s the same thing with diffusion and halation, the 1000 line 16:9 one doesn’t have much of it, but if you don’t turn it on at all, it makes the shader look artificial… It’s kinda a bit tricky to make it really “right”, and please everyone.

But in the end, hey, you gotta have fun, so edit it to your liking :slight_smile:

@c9f5fdda06 (and maybe @hunterk ): I tried every renderer with every shaderversion i could. It has to be the combination of OpenGL and GLSL i guess, because if i recall correctly the slang version and the glsl version should be always the same. So if it breaks on slang, it should break on glsl, too.

The thing is, the only renderer i could choose the glsl version is gl, otherwise the shader file would not show, if i want to load it. But on all renderers the slang version works fine, that’s why i’m assuming what i’ve stated before, and why i think there’s something different going on.

I tried it with the regular royale, it’s broken too, you didn’t see it if you tried it, i know, but it seems it’s not the sample mode itself, it’s the halation weight. On regular Royale it’s off (if you turn it on one click, the same bug instantly appears), and what’s really weird about it, the bug scales vertically up and down with the TV lines you choose.

As far as a workaround for now, if i would be stuck on opengl, i would choose the cg version for now, or turn the halation value down to zero on your machine. My problem honestly is, i always try to help, if i can, and i could fix it sometimes or create workaround settings (when glsl and slang didn’t work right at all), but for the really weird stuff, @hunterk was “the hero”.

I’ll run some more tests, but at the moment i guess we search a needle in the haystack