How to smooth frames for scrolling games on Bsnes emulator?

NorseChief

New member
One thing that has always bothered me about snes emulators is that all scrolling games have this jerky scrolling. I know these games don't run like this on the original consoles and I know that the scrolling and frame skipping is meant to be smooth as a baby's bottom.

For example, Super Mario World on any snes emulator. When you are moving, the frames don't run smoothly. They jerk by as though you are running the game on some toaster. And I have a pretty decent video card and ram (about 1 gig).

No matter what I set the video or advanced configuration to, it is always the same. This ugly jerky frame skipping. Even if I set everything to the lowest possible settings the scrolling is still the same. Imo this is the main reason why some people will insist that nothing beats playing the snes games on the original console. Because the scrolling looks so aweful.

I played this game, Super Mario World on the MAME .134 emulator and the scrolling is just perfect with no jerkiness at all. This is one thing I noticed about MAME. The scrolling is always perfectly smooth. Why can't snes games run the same?

And it's not just Super Mario World. It's every fast-paced scrolling game on snes that has this jerky scrolling.

Another thing I have noticed is that sometimes after I change a video or audio setting on the Bsnes emulator, the game will run faster but will run perfectly smooth for a short period of time or until I press ESC to window the screen. Now why is that?

Yet another thing I have noticed before is that snes games run from a floppy disc tend to run smoother (smoother scrolling) than if they are run from a location on your C:/ drive. Why is that?

Please, can anybody help me tweak settings that would enable this smooth scrolling on the bsnes emulator or any other snes emulator for that matter? I would much appreciate it.
 

FatTrucker

Abusus non tollit usum
Sounds like a sync issue with your display. Check your screen refresh and set it lower perhaps?. I have no tearing or scrolling issues with bsnes, snes9x or zsnes running on an LCD TV @ 60hz or a CRT PC monitor @ 75hz.

I have sync audio and video enabled in bsnes, maybe that makes the difference?.
 

NorseChief

New member
Sounds like a sync issue with your display. Check your screen refresh and set it lower perhaps?. I have no tearing or scrolling issues with bsnes, snes9x or zsnes running on an LCD TV @ 60hz or a CRT PC monitor @ 75hz.

I have sync audio and video enabled in bsnes, maybe that makes the difference?.

It runs perfectly smoothly if I disable auto frame skipping on Zsnes. However it runs a little too fast.

Apparently, the lowest refresh rate I can set my monitor to is 60hz. Do you know any other way I can set my monitor to a lower refresh rate?
 

FatTrucker

Abusus non tollit usum
It should be fine @ 60hz. If its still skipping or tearing then it has to be an issue with one of your other video options. What settings are you using?. If its skipping frames then that could easily cause jerkiness or tearing (since its not displaying every frame). There should be another option to throttle the speed, do you have vsync turned on?.
 
Last edited:

NorseChief

New member
It should be fine @ 60hz. If its still skipping or tearing then it has to be an issue with one of your other video options. What settings are you using?. If its skipping frames then that could easily cause jerkiness or tearing (since its not displaying every frame). There should be another option to throttle the speed, do you have vsync turned on?.

Sorry for the delayed response. I was away from the computer for a while.

Yes, I do have both Vsync and tripple buffering turned on. If I turn them off then the game runs like 4 times faster than normal speed ( that is without auto frame rate enabled).

My problem is that the game runs too fast, like twice the normal speed at the lowest frame rate possible, without 'auto frame rate' enabled (and I made a mistake earlier as you can see... it's not 'auto frame skipping', it's 'auto frame rate'). The scrolling is only smooth when 'auto frame rate' is not enabled. Otherwise it is all jerky.

The other part of the problem is that the only way I can run the game at normal speed is with 'auto frame rate' (one of the speed options) enabled. And with this option enabled, the scrolling is jerky and blinky.

With my refresh rate on my monitor set to 60hz, the game runs a little slower but still like twice the normal speed without 'auto frame rate' enabled. If I set my refresh rate higher, say to 85hz then the game runs like 6 time faster than normal speed without 'auto frame rate' enabled.

I have fiddled around with all the video settings (on the zsnes or bsnes emulators) and thoroughly tested them all and none of them seem to make a difference to the speed.

I have a pretty fast pc and I think that is part of the problem since it seems that snes emulators were designed for slower and older pc's. If only there was an option that enabled me to set the frame rate lower without 'auto frame rate' enabled. Then I could run the game at normal speed and with no jerky scrolling.
 

FatTrucker

Abusus non tollit usum
Check your PM, I've responded to that. I think its your graphics card. For some reason a lot of people seem to have had issues with the upper end 8xxx series cards with emulation.

I'm running a 3.0Ghz Dual Core, 4 Gb Ram and an 8500GT and it runs fine.
 

NorseChief

New member
Oops... well... is it a PAL game?

It's not just one game, it's all fast-paced scrolling games that have this problem when auto frame rate is enabled. Otherwise it runs too fast on the lowest frame rate that you can manually set it to.
 
Last edited:

FatTrucker

Abusus non tollit usum
The reaons he mentioned PAl is that PAL games natively run at 50hz rather than 60hz. Shouldn't make any difference in terms of the problem you're having though as the emulators generally compensate for this automatically. It makes no difference with my PAL snes games even when run on a fixed refresh LCd @ 60hz. I'm 90% certain it relates to your hardware. Re-install DX9 and the latest drivers for your card.....just in case.
 
Last edited:

NorseChief

New member
Check your PM, I've responded to that. I think its your graphics card. For some reason a lot of people seem to have had issues with the upper end 8xxx series cards with emulation.

I'm running a 3.0Ghz Dual Core, 4 Gb Ram and an 8500GT and it runs fine.

Hmmm. I don't think down grading is a viable option atm. I guess I am going to have to wait until the programmers working on these emulators decide to address this problem with the upper 8xxx cards :(
 

NorseChief

New member
The reaons he mentioned PAl is that PAL games natively run at 50hz rather than 60hz. Shouldn't make any difference in terms of the problem you're having though as the emulators generally compensate for this automatically. It makes no difference with my PAL snes games even when run on a fixed refresh LCd @ 60hz. I'm 90% certain it relates to your hardware. Re-install DX9 and the latest drivers for your card.....just in case.

Thanks for all your help so far. Much appreciated.

I will try that and see what happens.
 

hungryduck

New member
Hey guys. I have this EXACT problem. My graphics card is a 8800 GT so I think the issue must be due to this type of card. Did you find a fix of any kind or an emulator that allows scrolling in games to be smooth? SMW and RPGs like Chrono Trigger and Earthbound are so painful to play with the horrible, skippy scrolling. I've tried everything, changing refresh rate and messing with all the nvidia control panel settings.

I also have problems with PS1 emulation. It runs slow for me even though my system is definitely capable of running it at full speed. I bet this is due to the card as well.

I really hope there is a solution to this. Thanks.
 

FatTrucker

Abusus non tollit usum
One thing that did occur to me to try is open up DX Diagnostics (click Start > Run > type dxdiag)

Once DXdiag has loaded, click more help from the toolbar, then overrides and set the override value @ 60hz.
Could be that the card is having trouble switching for some reason.
 

NorseChief

New member
I have found the solution to this problem :)

I think this will help clarify things quite a bit. Very few people actually know these mundane details:

http://website.lineone.net/~simonisfound/refresh/refresh.html

I was getting confused because I thought these games were supposed to be able to run smoothly on any refresh rate and at any speed. I was wrong. I was also tunnel-visioned on the fact that GeForce 8800 GT cards have some problems with emulation. This is true to a certain extent. But I am sure now that this is not one of those problems.

The only way to run 2D games smoothly is by setting your screen refresh rate to 60hz, since they were designed to run on 60hz television screens. There is no getting around that. This is a universal rule for all graphics cards and all hardware attempting to emulate 2D games.

The same goes for DVD's. They run much better when your screen is set to 60 hz.

@ hungryduck

I have also just recently changed over from Windows xp to windows 7.

First thing you need to do is go to personalize options and change your theme to Windows 7 basic. There is no need to have it otherwise because it also causes other 3D games to lag as well as inaccurate emulation issues.

Unfortunately, windows 7 doesn't allow you to run your monitor at 60hz and a resolution of anything above 640 x 480. But that is no problem. All you need to do is go to screen resolution ~ advanced settings ~ adapter ~ list all modes ~ 640 by 480, true color (32 bit), 60 Hertz.

Then when you run snes, nes, etc you will find that the games will run perfectly smoothly as they were meant to be.

But remember that you don't have to keep your screen resolution set to this mode. You can simply switch to the other mode once you are done playing your snes roms. You can think of it as simply setting up your cyber console to the cyber TV :)

One more important thing!

You need to remember to make sure that your roms are all (U) or (J) and not (E). If you try to run (E) games on your 60 hz the result will be inaccurate choppy emulation. This is because PAL roms were designed for European televisions which run at 50 hz. Your PC monitor won't be able to run at this refresh rate. So if you have (E) roms you going to have to replace them with (U) or (J) roms which natively run at 60 hz to match your PC 60 hz refresh rate.

This is the other major thing that had me confused and thinking that this was a problem with my GeForce 8800 GT card. I am 100% sure now that that is not the case. Although there are other known problems that this card has with emulation, this is not one of them so you can rest at ease :)
 
Last edited:

FatTrucker

Abusus non tollit usum
The application should tell the card what refresh to run at. Which is why I don't have the same issue running on a monitor set at 75Hz. It seems with certain drivers and chipsets this doesn't work as required which is why you're having to change your screen res manually.

Ordinarily though, your software should tell the PC what to run at rather than having to set up your PC around the software.
 

hungryduck

New member
I switched it to 60 hertz a long time ago. Today I went into the menu on my monitor and it tells me it's running at 63.9 hertz! I think this must be why it's not working for me. My monitor doesn't want to run at 60 hertz for some reason.

Edit: Well, my monitor's menu says "H+64.0 V+60.0" but I'm not sure what this is supposed to mean. This might be normal for all I know.
 
Last edited:

FatTrucker

Abusus non tollit usum
H is the horizontal scan rate. There's usually some fluctuation although its usually only + or - 1 at most, 64 is a weird rate for it to be scanning at.
If you can't adjust it using your monitor controls or the advanced graphics options, then making the scan rate override I mentioned above is the only option I can think of.
 
Top