SNES NTSC Composite Video Filter
Moderator: ZSNES Mods
-
- ZSNES Shake Shake Prinny
- Posts: 5632
- Joined: Wed Jul 28, 2004 4:15 pm
- Location: PAL50, dood !
The 'real' PAL filter would also stretch less the input buffer vertically while keeping the same resolutiion as output, so that the black bars appear.
皆黙って俺について来い!!
Pantheon: Gideon Zhi | CaitSith2 | Nach | kode54
Code: Select all
<jmr> bsnes has the most accurate wiki page but it takes forever to load (or something)
-
- Hazed
- Posts: 61
- Joined: Mon Mar 13, 2006 1:44 am
-
- Rookie
- Posts: 11
- Joined: Fri May 19, 2006 5:36 am
The filter is awesome. However, I have some questions. To get the best results, which settings should I use ? I run at 60 Hz and I use Zsnes in fullscreen with 800 x 600. I also noticed that using Vsync can disable the "pixel dancing". What about tripple buffering ? Is it supposed to do something, while using NTSC I mean ?
-
- Seen it all
- Posts: 2302
- Joined: Mon Jan 03, 2005 5:04 pm
- Location: Germany
- Contact:
Triple Buffering is a special version of VSync, using an additional buffer to speed up the drawing.
vSNES | Delphi 10 BPLs
bsnes launcher with recent files list
bsnes launcher with recent files list
-
- Seen it all
- Posts: 2302
- Joined: Mon Jan 03, 2005 5:04 pm
- Location: Germany
- Contact:
-
- New Member
- Posts: 6
- Joined: Fri Mar 24, 2006 12:05 am
The only thing I wish ZSNES would do was change the refresh rate to 60Hz when switching to fullscreen mode with this filter on.
I've noticed that if you use 768x672 DR W and turn on the filter, the screen stretches out to 1152x864 or something. Using it with 800x600 W makes it shrink to something smaller than 640x480, and 1024x768W makes it stretch out to the same size it stretched to with 768x672. Pretty much every single windowed resolution is wonky (and it no longer lets you use it with 512x448)
I've noticed that if you use 768x672 DR W and turn on the filter, the screen stretches out to 1152x864 or something. Using it with 800x600 W makes it shrink to something smaller than 640x480, and 1024x768W makes it stretch out to the same size it stretched to with 768x672. Pretty much every single windowed resolution is wonky (and it no longer lets you use it with 512x448)
pass the command line -T to zsnes.exe
Last edited by franpa on Sat May 27, 2006 1:54 am, edited 1 time in total.
Core i7 920 @ 2.66GHZ | ASUS P6T Motherboard | 8GB DDR3 1600 RAM | Gigabyte Geforce 760 4GB | Windows 10 Pro x64
-
- Seen it all
- Posts: 2302
- Joined: Mon Jan 03, 2005 5:04 pm
- Location: Germany
- Contact:
pass the command line parameter -6 to zsnesw.exe
vSNES | Delphi 10 BPLs
bsnes launcher with recent files list
bsnes launcher with recent files list
How do I stretch in 600x448 in fullscreen withoun scaling the scanlines. and
how do I scale this in fullscreen at say 1024x768. Is it possible or do we place black bars around everything so the image is directly 2x scales from 600x448. Because this wouldn't work. We would have 1.80x scaling which causes with DirectDraw filtering a nasty mess.
My solutions are: Scale the image with no scanline and add my own
output the same surface size as res (no interpolation), will require filter to do this. Only limit NTSC filter to reoslutions that can support it and letterbox. 1200x896 would be res after 640x480. Or let me stretch it and add my own scanlines again it will probably be filtered but scanlines would be working
I guess what I am asking is there is a snes_ntsc that can take a source and output any surface size I want? This would solve all my problems.
how do I scale this in fullscreen at say 1024x768. Is it possible or do we place black bars around everything so the image is directly 2x scales from 600x448. Because this wouldn't work. We would have 1.80x scaling which causes with DirectDraw filtering a nasty mess.
My solutions are: Scale the image with no scanline and add my own
output the same surface size as res (no interpolation), will require filter to do this. Only limit NTSC filter to reoslutions that can support it and letterbox. 1200x896 would be res after 640x480. Or let me stretch it and add my own scanlines again it will probably be filtered but scanlines would be working
I guess what I am asking is there is a snes_ntsc that can take a source and output any surface size I want? This would solve all my problems.
The 600x448 size is hardcoded into the filter. Let people bitch about letterboxing. Those of us with eyes will appreciate the proper aspect ratio and non-blurry scanlines.
But, if you insist ... render the 600x448 image to an offscreen plain, then scaled blit that to the screen, and then use another offscreen plain as your scanlines and blit those onto the screen as well. You'd need D3D for the fast hardware alpha blending. You at least have a bit more control over the scanline appearance this way, but you'll never have it looking just right unless you use the ever elusive 1792x1344 video mode :D
But, if you insist ... render the 600x448 image to an offscreen plain, then scaled blit that to the screen, and then use another offscreen plain as your scanlines and blit those onto the screen as well. You'd need D3D for the fast hardware alpha blending. You at least have a bit more control over the scanline appearance this way, but you'll never have it looking just right unless you use the ever elusive 1792x1344 video mode :D
-
- ZSNES Shake Shake Prinny
- Posts: 5632
- Joined: Wed Jul 28, 2004 4:15 pm
- Location: PAL50, dood !
If a proper scanline display is roughly 1/3 line off, why not turn the NTSC filter into a 3x filter ?
皆黙って俺について来い!!
Pantheon: Gideon Zhi | CaitSith2 | Nach | kode54
Code: Select all
<jmr> bsnes has the most accurate wiki page but it takes forever to load (or something)
Because 224*2=672, a height that doesn't exist? :P
The only perfect multiple height resolution for NTSC is 1792x1344, and it also has correct aspect ratio as well. Great mode, horribly taxing even on my GeForce 6600 LE.
PAL is of course easier if you actually like the black bar. 640x480 and above looks acceptable with proper aspect ratio.
The only perfect multiple height resolution for NTSC is 1792x1344, and it also has correct aspect ratio as well. Great mode, horribly taxing even on my GeForce 6600 LE.
PAL is of course easier if you actually like the black bar. 640x480 and above looks acceptable with proper aspect ratio.
I appreciate proper aspect ratio,and I don't mind letterboxing.Actually,I love to see the black bars in PAL mode.The 600x448 size is hardcoded into the filter. Let people bitch about letterboxing. Those of us with eyes will appreciate the proper aspect ratio and non-blurry scanlines.
Having this option will be great. I'll use that mode when it's available.The only perfect multiple height resolution for NTSC is 1792x1344
It really depends on your video card.Having great pixel shader performance does not always give you a better performance in 2D (SNES) emulation.For example,a "mighty" (at the time) DX9 Radeon 9600 (Pro) was actually way slower than a much older DX8.1 Radeon 8500 LE.
-
- ZSNES Shake Shake Prinny
- Posts: 5632
- Joined: Wed Jul 28, 2004 4:15 pm
- Location: PAL50, dood !
Surely you meant 224*3 = 672.byuu wrote:Because 224*2=672, a height that doesn't exist? :P
The only perfect multiple height resolution for NTSC is 1792x1344, and it also has correct aspect ratio as well.
But why would "1792x1344" exist and not "896x672" ? ZSNES can do 768x672, I really don't see why it couldn't do 896x672.
Actually I don't even know what you mean by 'height that doesn't exist'. A height is just a value, why would a number not exist ?
皆黙って俺について来い!!
Pantheon: Gideon Zhi | CaitSith2 | Nach | kode54
Code: Select all
<jmr> bsnes has the most accurate wiki page but it takes forever to load (or something)
-
- ZSNES Developer
- Posts: 3904
- Joined: Tue Jul 27, 2004 10:54 pm
- Location: Solar powered park bench
- Contact:
Might have something to do with DirectDraw/Direct3D not allowing the screen to be any size you can dream of, a limitation OpenGL does not have.grinvader wrote:Surely you meant 224*3 = 672.byuu wrote:Because 224*2=672, a height that doesn't exist?
The only perfect multiple height resolution for NTSC is 1792x1344, and it also has correct aspect ratio as well.
But why would "1792x1344" exist and not "896x672" ? ZSNES can do 768x672, I really don't see why it couldn't do 896x672.
Actually I don't even know what you mean by 'height that doesn't exist'. A height is just a value, why would a number not exist ?
But then again, what do I know from these things?
May 9 2007 - NSRT 3.4, now with lots of hashing and even more accurate information! Go download it.
_____________
Insane Coding
_____________
Insane Coding
pagefault wrote:The windows port in SVN uses 1200x892 as a 2x and it's perfectly aspect ratio correct for the scanlines.grinvader wrote: But why would "1792x1344" exist and not "896x672" ? ZSNES can do 768x672, I really don't see why it couldn't do 896x672.
Actually I don't even know what you mean by 'height that doesn't exist'. A height is just a value, why would a number not exist ?
1200x892 is a tiny bit off, but close enough. Unfortunately, none of my five systems support that resolution :(
I'd love to get a monitor+video card combo that did either 50+60hz or 100+120hz, and supported 1200x892 as well as interlaced modes. Amazing how common NTSC is and yet we don't have any generic resolutions to support playing video made for it. Mode X has plenty, but of course you can't do interlaced / hires modes that way.
I'd love to get a monitor+video card combo that did either 50+60hz or 100+120hz, and supported 1200x892 as well as interlaced modes. Amazing how common NTSC is and yet we don't have any generic resolutions to support playing video made for it. Mode X has plenty, but of course you can't do interlaced / hires modes that way.
Of course. Funny how I proofread all of my posts and still miss things like that.Surely you meant 224*3 = 672.
OpenGL might not have the limitation, but your video card as well as your monitor will. That, or OpenGL is just picking the next highest resolution and interpolating the result. Which would of course ruin the scanlines in the process.Might have something to do with DirectDraw/Direct3D not allowing the screen to be any size you can dream of, a limitation OpenGL does not have.
-
- ZSNES Developer
- Posts: 3904
- Joined: Tue Jul 27, 2004 10:54 pm
- Location: Solar powered park bench
- Contact:
From what I've seen, if the image is too big it won't work. But any size that fits within, it will display that, although it will center the picture within the size next supported by 4:3 or something.byuu wrote: OpenGL might not have the limitation, but your video card as well as your monitor will. That, or OpenGL is just picking the next highest resolution and interpolating the result. Which would of course ruin the scanlines in the process.
May 9 2007 - NSRT 3.4, now with lots of hashing and even more accurate information! Go download it.
_____________
Insane Coding
_____________
Insane Coding