Best Video Setup when playing games at 1280x1024???

General area for talk about ZSNES. The best place to ask for related questions as well as troubleshooting.

Moderator: ZSNES Mods

Pasky
Rookie
Posts: 23
Joined: Thu Dec 08, 2005 11:50 pm
Location: Onett, Eagleland

Best Video Setup when playing games at 1280x1024???

Post by Pasky »

I know its hard to make 2d sprites look as good when upping the resolution and I was just wondering if anyone has any settings to make it look great. Snes9x has some great filters and their scanlines look superior to zsnes's however I prefer zsnes over snes9x.

I usually use interpolation + scanlines 25%, howevr it doesn't look nearly as good at 1280x1024.

I tried using HQx4 and it really helps but it still seems a bit pixalated. 2XSAI looks worse as does super eagle at this resolution.

Just wondering if anyone else plays at this setting, I have a pretty beefy PC and nice monitor and maybe someone else out there does as well.

A64X2 4400+
SLI 7800GTX
2GB of ram
and a 20.1" Samsung LCD monitor.

Is it possible to make a quick change in the source code to actually allow scanlines when using HQx4 ? Or perhaps a way to enable a specific % of scanlines instead of 25, 50, 75, 100.

Thanks for any help.
I think, therefore I am not Barry Burton
Agozer
16-bit Corpse | Nyoron~
Posts: 3534
Joined: Sun Aug 01, 2004 7:14 pm
Location: Nokia Land

Post by Agozer »

Scanlines only look *good* either on 640x480 or 1280x960. Adding stuff to the emulator is almost always anything but quick. Why would someone use scanlines on an emulator anyway?
whicker: franpa is grammatically correct, and he still gets ripped on?
sweener2001: Grammatically correct this one time? sure. every other time? no. does that give him a right? not really.
Image
Pasky
Rookie
Posts: 23
Joined: Thu Dec 08, 2005 11:50 pm
Location: Onett, Eagleland

Post by Pasky »

Fixes up the pixelation quite well.

They do look just dandy at 1280x1024 but the brightness and vibrance is gone when compared to HQx4.

HQx4 + 5-8% scanlines would look perfect.
I think, therefore I am not Barry Burton
Jipcy
Veteran
Posts: 768
Joined: Thu Feb 03, 2005 8:18 pm
Contact:

Post by Jipcy »

It's been requested before: http://board.zsnes.com/phpBB2/viewtopic.php?t=3468

No telling if/when it will ever be implemented.

You might check out bSNES: http://www.byuu.org/. That emulator has infinitely customizable resolutions. Also, the author is greatly concerned with getting the output to look as accurate to the original output as possible. Therefore, he might implement scanlines in some form in the future. Currently, there are no scanline options.
[url=http://zsnes-docs.sf.net]Official ZSNES Docs[/url] | [url=http://zsnes-docs.sf.net/nsrt]NSRT Guide[/url] | [url=http://endoftransmission.net/phpBB3/viewtopic.php?t=394]Using a Wiimote w/ emulators[/url]
blackmyst
Zealot
Posts: 1161
Joined: Sun Sep 26, 2004 8:36 pm
Location: Place.

Post by blackmyst »

Use TV-out, and use it on a normal, smaller CRT TV (not some big LCD screen monster). That's the only way to play SNES games.

BTW: scanlines with HQxX? That completely defeats the point of scanlines. o_O
Agozer wrote:Scanlines only look *good* either on 640x480 or 1280x960. Adding stuff to the emulator is almost always anything but quick. Why would someone use scanlines on an emulator anyway?
Hmm, have you tried the latter? I know I was saying that but it was only because I thought it would be logical seeing as how it's twice 640x480. But some actual visual confirmation would be good, my card doesnt support 1280x960.

Oh, and scanlines make the image better. :p If you're using a PC monitor anyway. But there have been lengthy discussions about that already.
[size=75][b]Procrastination.[/b]
Hard Work Often Pays Off After Time, but Laziness Always Pays Off Now.[/size]
Pasky
Rookie
Posts: 23
Joined: Thu Dec 08, 2005 11:50 pm
Location: Onett, Eagleland

Post by Pasky »

Wrong, having used 5-8% scanlines on numerous emulators with HQx3 and HQx4 at 1600x1200, it looks better than an actual snes using gamecube S-video cables (which looks great in its own right).

Using tv out would defeat the purpose, I have supurb quality of snes games and roms using my xbox and the emulator set to 1080i. If I had wanted to use my TV, I would have noted so.
I think, therefore I am not Barry Burton
Pasky
Rookie
Posts: 23
Joined: Thu Dec 08, 2005 11:50 pm
Location: Onett, Eagleland

Post by Pasky »

Jipcy wrote:It's been requested before: http://board.zsnes.com/phpBB2/viewtopic.php?t=3468

No telling if/when it will ever be implemented.

You might check out bSNES: http://www.byuu.org/. That emulator has infinitely customizable resolutions. Also, the author is greatly concerned with getting the output to look as accurate to the original output as possible. Therefore, he might implement scanlines in some form in the future. Currently, there are no scanline options.

Thanks for info. I gave BSnes a try and it looks far worse than zsnes. I was only concerned perhaps there was a configuration hack or if it were possible to edit and allow scan lines and HQx4 at the sametime through the source code or configuration file. My issue is not setting it to a resolution I would like but rather improving the highest allowed.

I suppose i'll be stuck with HQX4 for a little while. Thanks for the help and hope zsnes continues to improve, i've been using it since its first release and been emulation since the old VSMC days. I still remember beating lufia 2 at 15fps with snes9x.
I think, therefore I am not Barry Burton
Jipcy
Veteran
Posts: 768
Joined: Thu Feb 03, 2005 8:18 pm
Contact:

Post by Jipcy »

Pasky wrote:I gave BSnes a try and it looks far worse than zsnes.
Just because I'm a big fan of byuu and his emulator, I'm going to say that bSNES currently doesn't look *as good* as ZSNES, rather than looking *worse*. They both look pretty much the same at lowest-quality settings. And, in certain games, bSNES looks a lot better (because it properly emulates the game).
[url=http://zsnes-docs.sf.net]Official ZSNES Docs[/url] | [url=http://zsnes-docs.sf.net/nsrt]NSRT Guide[/url] | [url=http://endoftransmission.net/phpBB3/viewtopic.php?t=394]Using a Wiimote w/ emulators[/url]
byuu

Post by byuu »

I gave BSnes a try and it looks far worse than zsnes.
I'm flattered, thank you :P

bsnes isn't the emulator to use for video options, unless you have a non-4:3 aspect ratio monitor and actually give a damn about things like "aspect ratio" and such. And even then, it's a stretch with no filters to choose from. Most people here don't fall into either category anyway.

Eventually though, I do plan on adding better TV emulation, which factors in things like the kell factor to more accurately emulate a TV's scanlines and such. Speed is the major thing stopping me from bothering now, though. HQ4X... possibly when I have a system like yours.
Pasky
Rookie
Posts: 23
Joined: Thu Dec 08, 2005 11:50 pm
Location: Onett, Eagleland

Post by Pasky »

Poo, I just went looking through the numerous .ASM source files (I know nothing of assembly but have some moderate knowledge of VB.net) thinking I could find the switch that disables turning scanlines on when 2xSAI or 4xHQ is selected and just got a headache. =D
I think, therefore I am not Barry Burton
sweener2001
Inmate
Posts: 1751
Joined: Mon Dec 06, 2004 7:47 am
Location: WA

Post by sweener2001 »

Disabling scanlines is in the config menus, unless i'm missing something.
[img]http://i26.photobucket.com/albums/c128/sweener2001/StewieSIGPIC.png[/img]
Pasky
Rookie
Posts: 23
Joined: Thu Dec 08, 2005 11:50 pm
Location: Onett, Eagleland

Post by Pasky »

Topic flew over your head.

Trying to enable scanlines 25% while HQx4 is enabled.
I think, therefore I am not Barry Burton
Deathlike2
ZSNES Developer
ZSNES Developer
Posts: 6747
Joined: Tue Dec 28, 2004 6:47 am

Post by Deathlike2 »

You cannot enable scanlines with anything other than interpolation... I don't know exactly why.. but all the other filters are significantly software based. Interpolation (bilinear filtering) is a hardware feature on practically any modern video card.. though I do not know if the interpolation implementation on ZSNES is hardware or software based. (And for those that continue to wonder about trilinear or anisotropic filtering.. you're filtering a 2D app.. not a 3D app, so it is pointless to use stronger/unneeded extra filtering)
Last edited by Deathlike2 on Fri Dec 09, 2005 8:31 am, edited 1 time in total.
Continuing [url=http://slickproductions.org/forum/index.php?board=13.0]FF4[/url] Research...
sweener2001
Inmate
Posts: 1751
Joined: Mon Dec 06, 2004 7:47 am
Location: WA

Post by sweener2001 »

I see, now.

Although scanlines + hq?x just seems like a waste of the hq filter, to me.

That, and it doesn't look any better on 1280x1024 than it does at 640x480. At least to me.

And the fact that you can already play this stuff on a tv with a decent controller just makes me curious.
[img]http://i26.photobucket.com/albums/c128/sweener2001/StewieSIGPIC.png[/img]
Pasky
Rookie
Posts: 23
Joined: Thu Dec 08, 2005 11:50 pm
Location: Onett, Eagleland

Post by Pasky »

My tv is not always accessible to me (at least the good 42 incher anyways) and sometimes I like to do my work and have the emulator running and just multi task.

Thanks for the info on the scanlines and filtering.

Guess im just stuck dealing with the pixelation. Funny part is, if I back my chair up a good 4 ft from the monitor, it looks stunning. However playing with my chair at the desk the pixelation looks odd. Im not complaining, I was merely curious if there was a configuration hack or if the filter source was easily editable.

Thanks for the help.
I think, therefore I am not Barry Burton
Pasky
Rookie
Posts: 23
Joined: Thu Dec 08, 2005 11:50 pm
Location: Onett, Eagleland

Post by Pasky »

Deathlike2 wrote:You cannot enable scanlines with anything other than interpolation... I don't know exactly why.. but all the other filters are significantly software based. Interpolation (bilinear filtering) is a hardware feature on practically any modern video card.. though I do not know if the interpolation implementation on ZSNES is hardware or software based. (And for those that continue to wonder about trilinear or anisotropic filtering.. you're filtering a 2D app.. not a 3D app, so it is pointless to use stronger/unneeded extra filtering)
Out of mere curiousity, does enabling Anisotropic filtering on your hardware (either through ATI's control panel or in my case, Nvidia's) apply to 2d games and applications like Zsnes or even Epsxe?

Also, what are the advantages of tripple buffering?
I think, therefore I am not Barry Burton
creaothceann
Seen it all
Posts: 2302
Joined: Mon Jan 03, 2005 5:04 pm
Location: Germany
Contact:

Post by creaothceann »

See the bsnes thread in "Emulators":
byuu wrote:
While triple buffering does a decent job of smoothing out the scrolling, I much prefer timing based on vsync.
Triple buffering is identical to vsync, but requires no CPU stall time. Both wait until the start of the vertical blanking period, and then blit the current image to the screen. The difference, and this is very important, is that vsync means you need to wait until the retrace period begins. This will prevent the sound system from receiving new samples and being updated, and it will align the refresh to your monitor instead of the emulator speed. The result is choppy audio. The solution is to resample the audio and lose sound quality, which I'm not willing to do.
Triple buffering just blits the most recent image, if any, to the screen at this time.

Also, the SNES video in non-interlace runs at 60.09fps, and in interlace mode at 59.97fps. All other emulators run at 60.0fps, which is not correct according to the SNES stock specs. Triple buffering is the only way to handle that "extra" frame every ~11 seconds properly (basically, by skipping it). Plus, my triple buffering support has a bug that I can't find. When that's fixed, I'm certain the video will be just as smooth for you.
vSNES | Delphi 10 BPLs
bsnes launcher with recent files list
Pasky
Rookie
Posts: 23
Joined: Thu Dec 08, 2005 11:50 pm
Location: Onett, Eagleland

Post by Pasky »

Does it actually hinder performance in anyway and does it tax the video card or the cpu mostly?

Thanks for the quote btw, very helpful.
I think, therefore I am not Barry Burton
creaothceann
Seen it all
Posts: 2302
Joined: Mon Jan 03, 2005 5:04 pm
Location: Germany
Contact:

Post by creaothceann »

Pasky wrote:Does it actually hinder performance in anyway and does it tax the video card or the cpu mostly?
The speed loss is minimal. Disable it only if your PC can't run games at full speed.
vSNES | Delphi 10 BPLs
bsnes launcher with recent files list
Deathlike2
ZSNES Developer
ZSNES Developer
Posts: 6747
Joined: Tue Dec 28, 2004 6:47 am

Post by Deathlike2 »

Out of mere curiousity, does enabling Anisotropic filtering on your hardware (either through ATI's control panel or in my case, Nvidia's) apply to 2d games and applications like Zsnes or even Epsxe?
For ZSNES, it does diddly squat... you can ask the devs in detail how it is dealt with... but there is absolutely no benefit for ZSNES. (I won't speak for other emulators because I have no clue. However, if the emulator uses a method of rendering similar to ZSNES, it will do you no good.)
Continuing [url=http://slickproductions.org/forum/index.php?board=13.0]FF4[/url] Research...
blackmyst
Zealot
Posts: 1161
Joined: Sun Sep 26, 2004 8:36 pm
Location: Place.

Post by blackmyst »

Pasky wrote:Wrong, having used 5-8% scanlines on numerous emulators with HQx3 and HQx4 at 1600x1200, it looks better than an actual snes using gamecube S-video cables (which looks great in its own right).

Using tv out would defeat the purpose, I have supurb quality of snes games and roms using my xbox and the emulator set to 1080i. If I had wanted to use my TV, I would have noted so.
Wrong. Scanlines are meant to somewhat simulate the SNES' TV output. HQxX is meant to give the illusion of detail higher than a TV screen can handle (note that I said "illusion" since it doesn't create real detail, actually it completely fucks the image up IMO, I wouldn't call it "quality"). So it does defeat the purpose of scanlines, that's a fact.
[size=75][b]Procrastination.[/b]
Hard Work Often Pays Off After Time, but Laziness Always Pays Off Now.[/size]
Clements
Randomness
Posts: 1172
Joined: Wed Jul 28, 2004 4:01 pm
Location: UK
Contact:

Post by Clements »

Scanlines with a HQ filter at high resolution would look absolutely terrible. You are doublely distorting the image with random artifacts as the result of a filter and the black lines that darken the picture.

No filter with decent TV-Out should produce a picture very close to a real Super NES. If you need several filters at once, you get an output that's too far from the original and will kill the nostalgia.
Pasky
Rookie
Posts: 23
Joined: Thu Dec 08, 2005 11:50 pm
Location: Onett, Eagleland

Post by Pasky »

I still disagree, if you lower the brightness of scanlines (hence the %5-8) they are not noticably dark. Whether you believe it to be fact or not, epsxe's image quality does not lie when using 2xSAI with scanlines set to 201 (higher is lighter within that program). The image quality is superior when both are combined.

Clements, perhaps since Zsnes's scanlines are far too dark, you don't see the benefit of scanlines.

It would be awesome if Zsnes included a slide bar for the percentage intesity of the scanlines. Im a patient man and hope it will be implemented. Regardless, I still believe the addition to HQx4 with scanlines would look superior compared to anything else Zsnes currently has to offer.

Once again, thank you all for your input.
I think, therefore I am not Barry Burton
byuu

Post by byuu »

Does it actually hinder performance in anyway and does it tax the video card or the cpu mostly?
The CPU, infinitesimally, because you have to poll the video card to detect vblank start periodically. The overhead isn't even worth talking about unless you're running on a 486sx, in which case, you should kill yourself. vblank taxes your CPU more when it gets stuck in wait loops.

I'll try and explain a little better, the statement above was specifically referring to bsnes.

Say we have a function called render() that gets all of the PPU rendered data and sticks it into video memory. And now we have a function called output() that puts it onto the screen.

With vsync:
void render() {
copy_ppu_image_to_video();
output(); //new frame, lets render it immediately
}

void output() {
wait_for_vblank();
copy_video_to_screen();
}

The wait_for_vblank() is important. At best, you'll already be close to vblank if your emulator is running at the same speed as your current refresh rate. At worst, this can end up deadlocking your program, doing absolutely nothing, for up to an entire frame.

With triple buffering, we have two video images. Let's call them v0 and v1.
We will have a variable r to denote which surface is free so that we can draw our next image into, and a variable s to indicate which surface was most recently fully rendered and can be drawn.
void render() {
copy_ppu_image_to_video(r); //put in v0 or v1
s = r; //set s to indicate that this layer is now ready to be drawn
r ^= 1; //swap r between v0 and v1, e.g. to the next free screen
//we have our frame now, don't bother rendering it until update() sees we are in vblank again
}

Periodically, we need to call update. Preferably 4-8x our refresh rate, to try and begin the transfer as close to vblank start as possible.

void update() {
in_vblank_now = get_vblank_status();
if(in_vblank_now == true && in_vblank_last_time == false) {
copy_video_to_screen(s);
}
in_vblank_last_time = in_vblank_now;
}

Notice there are no wait loops. The CPU never stalls out. Basically, if things are running too slowly, a new scene won't be rendered and it will just blit the old one. If things are running too fast, r will be incremented multiple times, and the older frames will be dropped automatically.

You can improve things further, e.g. by not drawing the same scene if a new one wasn't created yet, multi-threading issues which don't apply to most emulators anyway, etc., but this is just a basic description, so there you go.
Last edited by byuu on Fri Dec 09, 2005 10:51 pm, edited 1 time in total.
Pasky
Rookie
Posts: 23
Joined: Thu Dec 08, 2005 11:50 pm
Location: Onett, Eagleland

Post by Pasky »

Awesome, that explains everything Byuu.

Now similar to the other question I had earlier, does enabling tripple buffering through your hardware forcefully (i.e. through the ATI or NVidia control panel) do the same?

Or was the poster who answered my similar question earlier saying that Zsnes relies upon software rendering and doesn't use the video card?

Thanks again man, I checked out your BSnes a bit more and find your project interesting and even more so when I discovered you had done it all from scratch. Hats off to you as thats amazing, I wish I knew how to do things like that in VB.net, most complicated programs I had made was a text parser for a proxy log and a program that communicates through the serial port of pc to a ALDL port of my vehicle.
I think, therefore I am not Barry Burton
Post Reply