New CRT shader from Guest + CRT Guest Advanced updates

Cheers, and like you said, as most games and demos don’t use interlacing (except for maybe a few static loader screens), it’s not very important.

Btw, these are the only occurrences I can remember from many years of Amigaing :slight_smile:

Games: Shadow of the Beast (static intro picture), Fish! (static intro picture), Hollywood Poker Pro (yeah…), the updated versions of all Magnetic Scrolls adventures with the windowed interface (I much prefer the originals)

Demos: Spaceballs – 9Fingers (loading screen), Andromeda – Seven Seas (last scroller part)

1 Like

New Release Version (2022-12-07-r1):

Notable changes:

  • scanline saturation has now 2 operating modes (one for positive, other for negative values), current presets aren’t affected by changes.
  • substractive sharpness parameter value increased to 2.0 (standard, fast, fastest versions), the filtering with this mode is improved.
  • edit: some finesse tweaking

Download link:


Nice. First I see a YouTube video about my shader presets and now a new shader update from the man himself, what a good day to be on the forum. I’ll be checking this out real soon thank you for always improving this shader guest.

What exactly is the difference between negative and positive values for scanline saturation?


I updated the above shaders with some minor refinement tweaks, just to mention it.

Positive scanline saturation is the old implementation (a bit stronger, compared with new), while the new, negative, implementation saturates more on the edges and less in the middle of the scanline. It depends on preset priorities which one to use i guess.

Here is an example of the new feature upgrades, like cleaner edges and scanline saturation:


12 posts were split to a new topic: NTSC shaders redux

2 posts were merged into an existing topic: NTSC shaders redux

Hey @guest.r, a couple of questions.

What would be the way to achieve a “3-2-3 pixels per scanline” pattern, instead of the 2-1-2 of your slot? I’ve tried various combination, with different masks, but haven’t found the right one.

Do you think it would be possible to further reduce the visibility of the other subpixels when the predominant colour is used? Like, for a full red, make the green and the blue even less noticeable ?

I would like to achieve something like this photo:


In general, slotmask width should match the current mask width. Density of slotmask is determined by the Slot Mask Height parameter.

Scanline saturation is to be used exactly for this, can be nicely combined with vertical deconvergence for positioning. Depends on the mask mitigation technique though (oridinary, bloom, mask bloom, halation) and scanline shapes which ammount or/and type looks best for you.


Thatlooks a-ma-zing. Thank you so much for the hard work, man. Your shaders are truly incredible.


Thanks @Squalo. :smiley:

Meanwhile i tried how good the HD version is at downsampling and was pleasantly surprised.

Downsampled 3x:

The procedure is quite simple.

  • Increase emu-core internal resolution to, let’s say 3x
  • load the crt-guest-advanced-hd shader
  • increase first internal resolution parameter to 3.0
  • increase the “Internal Resolution Y: 0.5…y-dowsample” to 3.0

Also texture filtering can be used.


I don’t understand what the actual purpose of the first internal resolution parameter is. All I’m seeing at first glance is that it makes the image blurrier, which seems counterintuitive?

You can match the increased internal resolution of the core with it or with possible pre-scalers added. So it’s referencing the actual (increased) internal resolution used. It’s a tradition in parameter naming scheme @Hyllian invented for the aa-shader 4.0 etc. … :grin:

I actually also don’t quite understand how the downsampling parameter works. I mean, obviously I can achieve a look I prefer but what is actually happening in this scenario:

I’m running at 5x PS1 resolution so =1200p (matches my monitor). If I set the parameter at 5.0 then I get normal scanlines and a look where I would suppose it’s downsampling to native (=240p).

Now when I set the parameter lower, the scanlines become thinner, and I think the scaling isn’t quite clean (expected). However, when I set the parameter to 1.0, the scanlines become thick again, the output is different from 5.0 though.

1 Like

You must really match the internal resolution here or pixel alignment is off. Parameter value 1.0 means downsampling to 224.0p, because 1.0 is a “neutral divider” and would otherwise bring no effect.

You can maybe get more playing room with cores which aren’t that pixel sensitive, for example N64 or Dolphin core, maybe PCSX2.

1 Like

Well, some minor scaling artifacts I could live with. I like a look that’s based on 2x internal resolution (no downsampling) for games that are mainly 3D, but that doesn’t go cleanly in 5x of course.

The cores mentioned do their own weird scaling things, e.g. the PCSX2 core seems to be fixed to 640x448. Not a problem for most NTSC games I suppose, but it’s likely suboptimal for the 512px stuff, not to mention PAL games, which why I’m only going for standalone and reshade now.

1 Like

Wow! I love it! :smiley:


Hello Guest, meanwhile congratulations for your fantastic work and thanks for sharing it with us. Assuming that I’m a noob in terms of shader customization, I wanted to ask you what value I had to act on to try to smooth the image and make the pixels less harsh. Thank you very much for your attention.

1 Like

Look under the “[ FILTERING OPTIONS ]”. Different shader variants have different options here, but it’s the place to look in you want to adjust pixel sharpness or smoothness.


Thanks for the advice, do you have any particular item you can recommend? I would like to use your standard Guest Advance as a reference shader. Maybe there is some guide to your shader entries, so I can study them?

1 Like

It should be enough for most configurations to adjust the horizontal sharpness and substractive sharpness:

Horizontal sharpness // This setting determines the overall image sharpness mostly. Higher values create a sharper image.

Substractive sharpness // This is a nice "hack" that may be used in combination with "horizontal sharpness". Higher values give more sharpness to pixels and mask.