CRT artifacts in "Super Mario Bros."

You can talk about almost anything that you want to on this board.

Moderator: Moderators

User avatar
DRW
Posts: 2225
Joined: Sat Sep 07, 2013 2:59 pm

CRT artifacts in "Super Mario Bros."

Post by DRW »

When I play "Super Mario Bros." on a 13" CRT TV (US/NTSC) with a regular front loader NES and composite connection, and Mario is in front of the standard blue background, his edges look quite frizzy.

When I set sharpness to 100 %, it looks like a thick white border.
When I set sharpness down to 0, the white decreases, but turns red.

Even in the configuration with the least sharpness, I cannot really remove the artifacts. (Even if I could, it would look really washed-out.)

It's only noticeable with Mario on the blue background. It doesn't look strange when he's in front of a green hill or in black levels.

It's best seen when tall Mario is in the motion of jumping. The artifacts are less noticeable when you pause the game.

Also, I wasn't able to recreate these particular artifacts with the NTSC filter in Nestopia.

Do you know what I'm talking about?
Also, does every US CRT TV show it like this?
Or is there a way to remove these specific kinds of artifacts?
My game "City Trouble":
Gameplay video: https://youtu.be/Eee0yurkIW4
Download (ROM, manual, artworks): http://www.denny-r-walter.de/city.html
Sour
Posts: 891
Joined: Sun Feb 07, 2016 6:16 pm

Re: CRT artifacts in "Super Mario Bros."

Post by Sour »

I can kind of see a white outline if I use bisqwit's filter.
Does it look somewhat like this on your TV?
ntsc.png
The right side is what happens if I set the I & Q filter values higher in bisqwit's algorithm. (left side are using the default values)
tepples
Posts: 22708
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Re: CRT artifacts in "Super Mario Bros."

Post by tepples »

First let's take care of the white so that it isn't messing things up.

"Sharpness" on a TV is an artificial edge enhancement. It has uses, but for games on most TVs, you'll usually want to turn it all the way down. In 240p Test Suite, choose the "Sharpness" activity and follow the instructions.
Set the sharpness of your TV to a value that shows clean black and gray transitions without white ghost lines on the side.

Modern TVs' "sharpness" control performs edge enhancement, which is designed for live action SDTV or VHS sources. Most TVs have zero as no change and high as enhancement. A few have middle as no change, high as enhancement, and low as blurring.
Attachments
240p_nes_sharpness_yes.png
240p_nes_sharpness_yes.png (3.33 KiB) Viewed 8223 times
240p_nes_sharpness_no.png
240p_nes_sharpness_no.png (3.38 KiB) Viewed 8223 times
User avatar
DRW
Posts: 2225
Joined: Sat Sep 07, 2013 2:59 pm

Re: CRT artifacts in "Super Mario Bros."

Post by DRW »

Sour wrote:I can kind of see a white outline if I use bisqwit's filter.
Does it look somewhat like this on your TV?
I would need to see this on a moving image. What emulator do I need to use and what values should I set to get this effect?

@tepples:

I would have to check this tomorrow when I have access to my PowerPak.

Also, wouldn't a sharpness of 0 make the image too blurry and wahsed-out?

Besides:
tepples wrote:
Set the sharpness of your TV to a value that shows clean black and gray transitions without white ghost lines on the side.

Modern TVs' "sharpness" control performs edge enhancement, which is designed for live action SDTV or VHS sources. Most TVs have zero as no change and high as enhancement. A few have middle as no change, high as enhancement, and low as blurring.
Why does the quote talk about modern TVs? I play the NES on an authentic CRT TV, not an LCD/HD one.
My game "City Trouble":
Gameplay video: https://youtu.be/Eee0yurkIW4
Download (ROM, manual, artworks): http://www.denny-r-walter.de/city.html
Sour
Posts: 891
Joined: Sun Feb 07, 2016 6:16 pm

Re: CRT artifacts in "Super Mario Bros."

Post by Sour »

DRW wrote:I would need to see this on a moving image. What emulator do I need to use and what values should I set to get this effect?
Mesen - if you go in Options->Video->Picture, you can select between 4 "different" NTSC filters. The one labelled "NTSC" is blargg's filter that is available in most emulators. The other 3 are bisqwit's implementation of a NTSC filter that was discussed in a thread on this forum at one point - it's a fair amount slower and can output in up to 8x res (2048x1920). The filter only has 3 specific settings (Y, I and Q values) - the left side of my screenshot was with the defaults (0/50/50), right side was with higher I & Q values.
User avatar
DRW
Posts: 2225
Joined: Sat Sep 07, 2013 2:59 pm

Re: CRT artifacts in "Super Mario Bros."

Post by DRW »

I need to check this tomorrow at work. The emulator requires a new version of Windows and I only have Windows XP at hand.
My game "City Trouble":
Gameplay video: https://youtu.be/Eee0yurkIW4
Download (ROM, manual, artworks): http://www.denny-r-walter.de/city.html
ccovell
Posts: 1045
Joined: Sun Mar 19, 2006 9:44 pm
Location: Japan
Contact:

Re: CRT artifacts in "Super Mario Bros."

Post by ccovell »

I'm guessing you're using a PAL TV and PAL NES, right? PAL and NTSC artifacts look a little different, from what I've seen. PAL TVs additionally often blend the chroma values of 2 successive scanlines, which NTSC doesn't do.

Perhaps someone from PAL-land can chime in with the specific artifacts for Mario.
Sour
Posts: 891
Joined: Sun Feb 07, 2016 6:16 pm

Re: CRT artifacts in "Super Mario Bros."

Post by Sour »

DRW wrote:I need to check this tomorrow at work. The emulator requires a new version of Windows and I only have Windows XP at hand.
I made a short video of it: https://www.youtube.com/watch?v=RzVkS1w6KCU
tepples
Posts: 22708
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Re: CRT artifacts in "Super Mario Bros."

Post by tepples »

The word "Modern" in the instructions may be incorrect phrasing. Every word after "Modern" in that quotation applies to CRT SDTVs with composite input as well. The "sharpness" on the vast majority of TVs has 0% meaning display the input as is and 100% meaning strong edge enhancement. I have read that a small minority of TVs that actually have a negative sharpness setting that performs blur, but I personally have never seen a TV like this. Perhaps I was hedging against older CRT SDTVs: those with only RF in, those older than on-screen menus, and possibly even those old enough to have a pair of VHF and UHF tuning dials. I will review the use of "Modern" once I'm on a PC with the 240p Test Suite (for NES) repository checked out.
User avatar
DRW
Posts: 2225
Joined: Sat Sep 07, 2013 2:59 pm

Re: CRT artifacts in "Super Mario Bros."

Post by DRW »

ccovell wrote:I'm guessing you're using a PAL TV and PAL NES, right?
No, I use US/NTSC. I'm from Germany, but I hate the stupid PAL crap. That's why I imported my NES and an authentic CRT TV from the United States.
Sour wrote:I made a short video of it: https://www.youtube.com/watch?v=RzVkS1w6KCU
It comes close, but I think my own TV still shows it a bit shittier.
I need to watch it on the emulator myself for a clear comparison. Tomorrow I can do this.

Or, alternately, is it possible to create a video that is pixel-perfect to the emulator output?
Your YouTube video has a resolution of 384x360 and I assume that's not the actual windows size of the emulator when the filter is applied.

Also, I might need some different settings for the sharpness value to judge it correctly:
http://www.mesen.ca/docs/configuration/video.html
http://www.mesen.ca/docs/images/VideoOp ... icture.png

And why does every setup use different sharpness values?

Nestopia uses values from 0.0 to 2.0 with 1.0 being the default.

Mesen obviously uses positive and negative values, with 1 being the default.

My TV uses values from 0 to 64, with 32 being the default.
But the system menu reveals that the actual internal values go from 24-52 (and whatever you choose from that range will be mapped to the value 32 in the regular menu).
In the moment, I have the system value 40. So, both, the system menu and the regular menu use the exact middle value.
tepples wrote:The "sharpness" on the vast majority of TVs has 0% meaning display the input as is and 100% meaning strong edge enhancement. I have read that a small minority of TVs that actually have a negative sharpness setting that performs blur, but I personally have never seen a TV like this.
In my case, the TV's hidden system menu has the definite values that can be configured. They go from 24 to 56 for some reason.

Well, I'm not sure in how far each of us interprets sharpness as blurry and whether the blurriness I'm talking about is actually negative sharpness or just what you would define as normal.
For example, if you use the NTSC filter in Nestopia and set sharpness to 0.0 of 2.0, would you define this as negative sharpness or really just the value of 0%?
My game "City Trouble":
Gameplay video: https://youtu.be/Eee0yurkIW4
Download (ROM, manual, artworks): http://www.denny-r-walter.de/city.html
Sour
Posts: 891
Joined: Sun Feb 07, 2016 6:16 pm

Re: CRT artifacts in "Super Mario Bros."

Post by Sour »

DRW wrote:Your YouTube video has a resolution of 384x360 and I assume that's not the actual windows size of the emulator when the filter is applied.
Odd, it says 512x480 here - either way, might be better for you to test it yourself if you can, since the "native" res for the filter is actually 8x, which makes pretty gigantic video files.
DRW wrote:Also, I might need some different settings for the sharpness value to judge it correctly
That screenshot shows the settings for blargg's filter - bisqwit's has a different set of sliders:
settings.png
settings.png (6.94 KiB) Viewed 8078 times
It has less settings than blargg's because those are essentially the only variables that could be configured in bisqwit's algorithm (it's possible I missed some stuff since I just took the pseudo-code he posted in a forum post and implemented it)

As for why blargg's sliders use -1.0 to 1.0, IIRC, it's just because those are the values that blargg's code used internally.
User avatar
DRW
Posts: 2225
Joined: Sat Sep 07, 2013 2:59 pm

Re: CRT artifacts in "Super Mario Bros."

Post by DRW »

Yeah, I have to test it out tomorrow.

It's just a pity that I cannot check it side by side since my CRT TV is at home and I can only use the emulator at work.

Is there another emulator that uses the same filter?
My game "City Trouble":
Gameplay video: https://youtu.be/Eee0yurkIW4
Download (ROM, manual, artworks): http://www.denny-r-walter.de/city.html
Sour
Posts: 891
Joined: Sun Feb 07, 2016 6:16 pm

Re: CRT artifacts in "Super Mario Bros."

Post by Sour »

DRW wrote:Is there another emulator that uses the same filter?
As far as I know, I'm the only one who implemented it other than the implementation in bisqwit's own emulator (the one coded in quickbasic), not sure if there's a binary release of that available.

Do you only have XP? If you use Linux, Mesen can run on that too. OSX doesn't work, though.
The filter is also available in Mesen's retroarch core (without any YIQ filter sliders, though) which is available on Linux & Windows, too - but I'm not sure if that will run on Windows XP, haven't tried myself.
lidnariq
Posts: 11432
Joined: Sun Apr 13, 2008 11:12 am

Re: CRT artifacts in "Super Mario Bros."

Post by lidnariq »

Bisqwit's IQ filter is also drastically more broadband (more luma-into-chroma crosstalk, and no chroma-into-luma crosstalk) than the standard. (YIQ demodulation uses boxcar averagers, with nulls right at the chroma modulation frequency (Y) and at DC (chroma))

Still less wrong than no artifacts at all, and tremendously more intelligible than nes_ntsc, but.
User avatar
DRW
Posts: 2225
Joined: Sat Sep 07, 2013 2:59 pm

Re: CRT artifacts in "Super Mario Bros."

Post by DRW »

O.k., I tried it out. It's still not quite the same as on my TV. So, I guess I'll have to check tepples' test ROM on the real TV.


I'd still like to know: What exactly would be negative sharpness and when is sharpness considered to be at 0 instead of a negative value?
The NTSC filter in nestopia goes from 0.0 to 2.0. Is 0.0 really 0 here or would you say that 0.0 is negative sharpness and another value is the standard 0?
My game "City Trouble":
Gameplay video: https://youtu.be/Eee0yurkIW4
Download (ROM, manual, artworks): http://www.denny-r-walter.de/city.html
Post Reply