Fixed proper overscan checking for FCEU/Nestopia. If cropping is enabled, it’ll crop out 8px from top, bottom, left, right. I don’t know if there is a “correct” way to do overscan cropping on NES. IIRC, every TV was different, so there’s no golden standard. Please test to see if it’s good enough.
Overscan cropping is not applied in Nestopia if NTSC is used atm.
S9x-next reported broken base size (239px height always), and that should be fixed now as well.
I recommend updating the Windows builds for updater soon. This is a pretty big fix. I guess when 1.0 is released every core will get updated, but there’s no telling when that will happen.
Found a problem for some games. The horizontal cropping can obscure letters. Yet this cropping seems needed for some games like SMB3. It could mean that you might have to have Crop Overscan on for some games, but not others. Or that tweaking the settings could result in it working well for all games. Who knows.
I’m pretty sure there should be no cropping at the left or right sides of the screen, games were designed with the idea of these columns being visible. The blank column in Mario 3 is a feature of the original hardware and is visible on NTSC TV screens when playing on a real console (The master system has a similar feature too).
Yeah, I too am not very convinced about overscan cropping on NES. Sure, some games like Mario 3 display garbage on the sides that many people didn’t see as kids (hence why to this day people still pop up saying the emulator or game must be glitched due to said garbage), but most people back then also had shit TVs anyway, and trying to replicate those conditions doesn’t always work for the best.
Hell, just to test this out, I tried increasing overscan on my own TV enough to cover up those things on Mario 3, but at the end of the day, when playing something like DK64 on the same TV, the overscan was simply too excessive. Several UI elements were completely cut off. It annoyed the crap out of me, so I returned the overscan to how it was before. The garbage pixels on Mario 3 don’t bother me, anyway.
Not at all. Tvs handle overscan cropping differently.They likely aimed their games at the “average tv” of the late 1980’s. People have made posts saying that this overscan is visible on their modern Trinitron CRT TVs, so they conclude that therefore it was likely always visible. I think it’s more likely that modern CRTs were designed differently than those older models.
I certainly don’t remember any weird graphical issues in SMB3 as a kid. But that tv was this little tiny one on my friend’s desk.
Look at this:
The Action area and fully cropped areas are on all sides. Not just the top and bottom.
Read this as well:
That one gives some hints of the broadcast standards at the time and suggest overscan amounts. I think following these guidelines would make sense, as they’re the closest we’ll ever get to finding out what the “standard” is. The wiki article mentions the BBC standard recommendations and the Microsoft Xbox recommendations. Is there any source that discusses Nintendo’s recommendation for the Famicom (NES)?
Another option could be to simply reduce the overscan amount, and see if it works for all games. Another option would be to have a separate option for vertical and horizontal overscan, and to have a custom overscan cropping amount. The reason is that it may be needed for some games, but an issue in others.
As seen in an interview with the Zelda team, Nintendo’s official background planning sheets had a conservative 224x192 pixel title safe area. It reserved 24 lines at the top and bottom and 16 pixels at the left and right as potential overscan. Later in the NES’s commercial life, as TVs became manufactured to tighter tolerances, some developers pushed this out farther.
So it seems that Nintendo may have been working with very high overscan assumptions, and other companies might be working with lower assumptions.
The rest of the article is worth reading as it gives suggestions for overscanning.
Unfortunately, the same code doesn’t work as expected in Cg. Regardless, something like this seems like a better option to me than trying to hardcode it and/or put user-configurable options into RetroArch itself.
Would it make sense to add a few things like this and gamma correction (and anything else I’m not thinking of this second; all defaulting to zero) to the stock.cg shader? If so, I can work on that.
Is there any chance of a setting that would work well for all games? How about trying a horizontal setting of 4 instead of 8? Maybe that would be more compatible?
A shader would be the most flexible solution, but the problem is that there would be no indication to a new user that such a solution even exists, or how to use it.
The most flexible, user-friendly option probably would have to be something akin to how Nestopia handles overscan. There, you can set the exact amount of overscan desired.
Not that the issue pertains to me outside of SNES, of course, nor do I know if such a thing could be easily implemented into RGUI or whatever. Clearly, a universal value is pretty much out the window, that much is true. Too many games get screwed over.
Saw this image on another board showing Castlevania running on a real NES on a CRT TV. Note that it does in fact cut off a little bit of the lettering. Note is it a PAL system.
The strangest I saw with “crop overscan ON” is Castlevania 3 with Nestopia. (Akumajo densetsu as well)
It really cuts too much of the picture, looks like it’s a bug or something.