CRT-Guest-Advanced, HD and NTSC for ReShade!

Looking great! Just a couple of maybe accidentally separated “Color Tweaks” categories:

And “Interlacing Scanlines Saturation” is in the category below where it should be.

@Jobima since your versions are going to be the up to date and best working set from here on out, it would be best to name it back to CRT_Guest_NTSC and have the OG default options set. (as good as your defaults are for a default, my brain is wired to a certain baseline when I make a mistake and revert certain options back to Default, so it’s a big help to not wonder if an option is Guest’s default or not)

I think it’s good your preset is indeed available still though, so maybe a separate file you keep up to date as well?

You two both do incredible work @Azurfel @Jobima, thank you so much for the passion and quality you both bring into the community.

3 Likes

Found another separated into duplicate category accident.

it’s not just the defaults, I did add my port of crt-black_crush-koko to it too

anyone (like Azurfel) feel free to back port it to original CRT_Guest_NTSC

OK…but if he does that, are you going to include it in the branch you update for the future? Like this time with the repeat work for the option organization, following around someone else’s work to double work in the community is a pain and then divergence can happen when one person loses steam.
People’s motivation can run out, people lose interest, or get burnt out, etc.

sure, he can do PRs in github

Fixed.

@Jobima https://pastebin.com/dii2GgZv

Yeah, at some point soon, i will update my fork for CRT_Guest_NTSC, CRT_Guest_PAL, Decoupled_Guest_NTSC, and Decoupled_Guest_PAL.

The most impactful of the recent changes upstream have been the Sega additions, which i don’t consider to be particularly useful for ReShade use tbh. So i hadn’t considered it to be a priority, but fixing the integer scaling bugs is much more critical.

2 Likes

thank you again! done https://github.com/Jobima1st/Jobima-Presets/blob/ManualUpdates/Jobima%20crt%20guest%20advanced%20V8.24c%20presets%20for%20reshade.rar

1 Like

CRT-Guest-NTSC, CRT-Guest-PAL, Decoupled-Guest-NTSC, and Decoupled-Guest-PAL have all been updated to match crt-guest-advanced-2026-07-23-release1 on my branch.

Azurfel/CRT-Guest-ReShade at PAL-ParamReorg-Decouple-Update

@Jobima Looks like there are two #defines that are slightly different from upstream in JobimaCRT_guest_advancedV8 if you want to get those matched up:

#define rgb_m float3x3(0.2989,0.587,0.114,0.5959,-0.2744,-0.3216,0.2115,-0.5229,0.3114)
#define yiq_m float3x3(1.000,0.956,0.621,1.000,-0.272,-0.6474,1.000,-1.106,1.7046) 

I also moved the “float4 InterlacePS” section to match the current technique order. Shouldn’t change anything functionally but it feels more correct.

Beyond that, i think we should be all synced up for simplified comparison and collaboration at this point.

3 Likes

thanks, done https://github.com/Jobima1st/Jobima-Presets/blob/ManualUpdates/Jobima%20crt%20guest%20advanced%20V8.24d%20presets%20for%20reshade.rar

1 Like

All settings names, defaults, and ranges have been fully harmonized with upstream.

Defaults match the following slang shader presets:

  • CRT-Guest-NTSC = crt-guest-advanced-2026-07-23-release1/crt-guest-advanced-ntsc
  • CRT-Guest-PAL = crt-guest-advanced-2026-07-23-release1/crt-guest-advanced-pal
  • Decoupled-Guest-NTSC = decoupled-guest20260911/decoupled-guest-advanced-ntsc 0-Svideo
  • Decoupled-Guest-PAL = decoupled-guest20260911/decoupled-guest-advanced-pal 0-SCART

@Jobima Harmonized settings names and ranges for JobimaCRT_guest_advancedV8.24d, with your defaults left functionally unchanged.

(“NTSC Merge Fields: Auto | No | Yes” and “CRT Mask: 0:CGWG | 1-4:Lottes | 5-14:‘Trinitron’” were adjusted to the harmonized equivalents of your previous defaults.)

1 Like

did you test if this still a problem?

Hmm. Took a bit to find the issue, but it does seem to break the masks with “(Transform to) Shadow Mask” enabled. I’m seeing if i can fix it before reverting.

Edit: Changing float mwidth=mwidths[int(shadow_msk)]; to float mwidth=mwidths[int(shadow_msk+1)]; does fix it, but feels a dash kludgey for my tastes.

I think we should roll with that if we can’t find a better solution tho. Matching upstream’s setting exactly is worth a little kludge if necessary imo.

1 Like

Actually

	float mwidths[15]={2.0,3.0,3.0,6.0,6.0,2.4,3.4,2.4,3.25,3.4,4.4,4.25,7.4,6.25,5.25};
	float mwidth=mwidths[int(shadow_msk)];

seems to work without issue. I could have sworn i had tried that before the +1 hack, but shrug

The important thing is that it works and isn’t at all kludgey.

1 Like

You can test it with slot mask alignment and proper width, since “auto width mode” reads the info from the involved array (slot mask width must be set to “auto”).

Best test candidates are mask 5 and 6, since first is 2-width and next is 3-width.

@Azurfel BTW, I did try with this https://github.com/Jobima1st/CRT-Guest-ReShade/commit/104ac2bf6cd8ea6c29cded547aa0411c8fc7a238 backthen, and it didnt work, maybe you can use the core idea and do refinement

I think

float shadow_msk(float shadow_msk)
{
shadow_msk = shadow_msk + 1;
}

can be replaced with

float shadow_msk()
{
    return shadow_msk + 1;
}

didnt test it, but in worst case we can use some middle name for float shadow_msk() like rsshadow_msk if it not work

I double checked to be sure, and everything looks correct as of my final update last night.

Without knowing exactly what issues @DevilSingh saw, it’s hard to say for sure. Maybe it was specific to CRT-Guest-Advanced and/or CRT-Guest-HD?

But i think this is most likely resolved insofar as it matters for CRT-Guest-NTSC, CRT-Guest-PAL, and JobimaCRT_guest_advancedV8.

@Jobima JobimaCRT_guest_advancedV8.24d with all the fixes.

1 Like

thanks! and done https://github.com/Jobima1st/Jobima-Presets/blob/ManualUpdates/Jobima%20crt%20guest%20advanced%20V8.24e%20presets%20for%20reshade.rar

or maybe it’s something/bug in old versions of reshade?

1 Like