Ideal visual settings for N64?

Yeah i don’t think they do. You’d need to go down the route of getting a Transcoder and installing CRT Emudriver which can be difficult to wrap your head around at first.

You won’t be able to unfortunately. 480i already has scanlines. They’re half the size of 240p scalines and they are jumping all over the screen instead of being stable, so when you ad in a scanline shader over the top of that it just creates chaos.

I think the only 240p solution on your system is to go down the route of acquiring a Transcoder and installing CRT Emudriver which is quite daunting at first.

I was under the impression that 480i didn’t have scanlines. At least, meaning to say it doesn’t have the blank/dead lines between the images. It’s my understanding that’s what 240p is. 240 lines are displaying the image without theinterlace flicker, and the other 240 alternating lines are just empty.

With 480i, I believe all 480 lines are being used, it’s just flickering even/odd lines at a high-rate. Theoretically then, if that’s the case, you could get it to run every other line as just solid black. This would ensure even with interlacing nothing would display on those lines.

The biggest hiccup would be the lines that DID have content would be flickering. Though, I wonder if the untrained eye would even notice.Seems like a compromise of sorts.

Hmm i think you’re probably right, but my point stands in that adding a scanline shader to a SD CRT (wether or not it’s running 240p or 480i) will clash horribly :slightly_smiling_face:

Yeah, for sure. Your not wrong.

I’m just scrambling to get a decent looking signal from HDMI to a CRT. Thinking out loud, so to speak.

Coming back to N64 emulation and reading this I decided to give ParaLLEl N64 another go again and I’m stunned.

I got literally perfect performance with angrylion + cxd4 just like with m64p and Project64.

I started to experiment a little and came up with this combination angrylion + cxd4 + angrylion VI overlay + 640x480 + NTSC 320px S-Video shader.

It looked just as crappy as it did 1996 when I played on a 1989 CRT TV, and that does it for me, ParaLLEl N64 is here to stay for a while!

1 Like

If you want something spectacular then I recommend this setup with ParaLLEl-N64:

angrylion + cxd4 + angrylion VI overlay ON + 640x480 + ntsc-320px-svideo.glsl + motionblur-simple.glsl

or if you want to skip the ntsc-320px-svideo.glsl shader just use motionblur-simple.glsl, you’ll LOVE IT!

motionblur-simple.glsl have made me reborn and changed everything.

Not that it changes much visually but you’ll notice a whole other flow/motion during the gameplay that gives me GOOSE BUMPS.

I have applied motionblur-simple.glsl to all systems I emulate in RetroArch and I will never go back, never!

I’m motionblur-simple.glsl addicted!

1 Like

something spectacular

looks just as crappy

I guess if that’s what you’re going for it definitely delivers:

But everyone’s opinion is different.

Also even on a 6-core Haswell-E i7 this threaded angrylion/cxd4 combination only runs at 30fps for me… but mupen seems to always be fullspeed.

Personally I like increasing the internal resolution instead… this is mupen at 1280x960 with hq2x texture enhancement:

1 Like

Oh yeah baby it delivers alright, feels like I’m back at late 90’s again! Everything that takes me back to my youth and makes my experience more authentic is always welcome and enabled.

That blurry pixel mess you just posted above is like nerd porn to me, and seeing it in action is even better.

Motionblur + NTSC shaders = :+1: :ok_hand:

So, I load up the NTSC presets and then add that motionblur-simple at the end… but whenever I ad motionblur it’s like it disables the visual effects of NTSC.

Like, I’m standing in the castle-lobby on SM64, and I turn on NTSC and notice how Mario’s hat now kind of blurs out into the background (color-bleed?, artifacts? I don’t know what to call it)

Then, I turn on motionblur-simple and that effect on the hat is completely gone.

Scratch that ^^^^

So, I ended up throwing ntsc-256px-svideo-gauss-scanline.glslp + motionblur-color.glsl + crt-geom.glsl at it.

I turned down the scanlines, the dot mask off, and tweaked the corners/overscan to my liking. It looks gorgeous, and it’s nice to know I can flip the toggle for curvature if I’m feeling like using that.

Looks quite a lot like one of my old TV’s would have back in the day.

Note - I only didn’t use the s-video variants of NTSC 'cause I honestly used RF signals back in the day so the ‘worse’ the ‘better’ for me.

What’s the equivalent of motionblur-simple in Slang shaders ?

Actually don’t scratch it @SkyHighGam3r because the .glslp shader file preset needs to look like this:

shaders = "3"

shader0 = "shaders/motionblur-simple.glsl"
filter_linear0 = "false"
scale_type0 = "source"
scale0 = "1.0"

shader1 = "shaders/ntsc-pass1-svideo-2phase.glsl"
filter_linear1 = "false"
scale_type_x1 = "absolute"
scale_type_y1 = "source"
scale_x1 = "1280"
scale_y1 = "1.0"
frame_count_mod1 = "2"
float_framebuffer1 = "true"

shader2 = "shaders/ntsc-pass2-2phase-gamma.glsl"
filter_linear2 = "false"
scale_type2 = "source"
scale_x2 = "0.5"
scale_y2 = "1.0"

These " " are absolutely crucial because some .glslp shaders presets that doesn’t contain " " will work, not work or just work sporadically.

So for example:

shaders = “3” - GOOD

shaders = 3 - BAD

shader1 = “shaders/motionblur-simple.glsl” - GOOD

shader1 = shaders/motionblur-simple.glsl - BAD

Good luck!

@Tromzy

Here you go:

You will find motionblur-simple.slangp there

1 Like

Thanks a lot ; I was looking in the “blur” directory, not the “motionblur” one !

How do you embed text like that?

I’ll give that preset a go and see how it looks compared to what I setup.

I’m not sure what the difference between motionblur-simple and motionblur-color is either.

Ok, so I figured a few things out, as this post will show lol

So, loading the motionblur-simple shader first, and then the NTSC would give me horrible discoloration for some reason… so I saved a test.glslp and made some adjustments using your text here.

I now have the following and jesus murphy does it look great

shaders = "6"

shader0 = "W:\Emulators\RetroArch\shaders\shaders_glsl\motionblur\shaders\motionblur-simple.glsl"
filter_linear0 = "false"
scale_type0 = "source"
scale0 = "1.0"

shader1 = "W:\Emulators\RetroArch\shaders\shaders_glsl\ntsc\shaders\ntsc-pass1-composite-2phase.glsl"
filter_linear1 = "false"
wrap_mode1 = "clamp_to_border"
frame_count_mod1 = "2"
mipmap_input1 = "false"
alias1 = ""
float_framebuffer1 = "true"
srgb_framebuffer1 = "false"
scale_type_x1 = "absolute"
scale_x1 = "1280"
scale_type_y1 = "source"
scale_y1 = "1.000000"

shader2 = "W:\Emulators\RetroArch\shaders\shaders_glsl\ntsc\shaders\ntsc-pass2-2phase.glsl"
filter_linear2 = "false"
scale_type2 = "source"
scale_x2 = "0.5"
scale_y2 = "1.0"

shader3 = "W:\Emulators\RetroArch\shaders\shaders_glsl\ntsc\shaders\ntsc-gauss-pass.glsl"
filter_linear3 = "false"
wrap_mode3 = "clamp_to_border"
mipmap_input3 = "false"
alias3 = ""
float_framebuffer3 = "false"
srgb_framebuffer3 = "false"
scale_type_x3 = "source"
scale_x3 = "1.000000"
scale_type_y3 = "viewport"
scale_y3 = "1.000000"

shader4 = "W:\Emulators\RetroArch\shaders\shaders_glsl\ntsc\shaders\ntsc-stock.glsl"
filter_linear4 = "true"
wrap_mode4 = "clamp_to_border"
mipmap_input4 = "false"
alias4 = ""
float_framebuffer4 = "false"
srgb_framebuffer4 = "false"

shader5 = "W:\Emulators\RetroArch\shaders\shaders_glsl\crt\shaders\crt-geom.glsl"
filter_linear5 = "false"
wrap_mode5 = "clamp_to_border"
mipmap_input5 = "false"
alias5 = ""
float_framebuffer5 = "false"
srgb_framebuffer5 = "false"

parameters = "NTSC_CRT_GAMMA;NTSC_DISPLAY_GAMMA;CRTgamma;monitorgamma;d;CURVATURE;R;cornersize;cornersmooth;x_tilt;y_tilt;overscan_x;overscan_y;DOTMASK;SHARPER;scanline_weight"
NTSC_CRT_GAMMA = "2.300000"
NTSC_DISPLAY_GAMMA = "2.300000"
CRTgamma = "5.000000"
monitorgamma = "5.000000"
d = "1.500000"
CURVATURE = "0.000000"
R = "1.500000"
cornersize = "0.051000"
cornersmooth = "80.000000"
x_tilt = "0.000000"
y_tilt = "0.000000"
overscan_x = "103.000000"
overscan_y = "103.000000"
DOTMASK = "0.000000"
SHARPER = "1.000000"
scanline_weight = "0.500000"

So, thus far we are at:

ParraLLEl + angrylion + cxd4 + 640x480 + VI Overlay “ON” + Dithering + the above shader preset.

1 Like

The result looks crappy enough for me to like it, nostalgic levels at high rate :grin:

Basically only the imagination sets the boundaries here!

Those scanlines are uneven. This is like my weak spot. Can’t stand it.

After tinkering a lot with scanlines in general, i decided not to use them anymore in some systems. I just can’t find a way to have a big enough picture and evenly distributed scanlines. You have to use integer scale and that makes the game window too small.

Maybe if i had a panel that displays 1440p or more, it could be better. But with my 1080p TV i have this problem.

You can use a custom aspect ratio with 5x height and 6x width (width may vary by core) to make the image bigger than your screen. You’ll lose some lines to overscan that way, just like with a CRT, but it should typically be within the “safe area” that games were designed around.

1 Like

I second this. I don’t generally use integer scale, but if the scanlines look uneven I do. Most systems you can get just slightly over/under the borders of the screen and have it look great.