Snes9xGx framerate issue

If you're having problems with Snes9x, or think you've found a bug, this is the place to be.
Post Reply
the_randomizer
Snes9x Orange Belt
Posts: 222
Joined: Sat Oct 17, 2009 4:18 am

Snes9xGx framerate issue

Post by the_randomizer »

Okay, I'll post this issue here since reporting it to google code is pointless, seeing as dborth no longer responds to bug reports. This is a very peculiar, yet very noticeable glitch in Snes9xGx 4.2.6 and on, where SA-1 games are affected. Now, the version I am using, 4.2.8, had the IRQ changes reverted, since that was detrimental to the framerate, but something is still amiss.

Steps to reproduce emulator bug:

1 - Load Snes9xGx Wii
2 - Open up Kirby's Dreamland 3
3 - Start moving so the screen can scroll left or right
4 - Horizontal/Vertical scrolling should be constant 60fps, but it's
somewhere in the range of 50-55fps.

Now, I have the Virtual Console version as well and I wanted to compare running it on Snes9xGx Wii and the VC. Oddly enough, the VC version has full speed during vertical/horizontal scrolling, but Snes9xGx does not. They're both being emulated, I know that, but seriously, this is perplexing.

Video showing how it should be - http://www.mediafire.com/?itlc89ie9xn92q1

Think of Snes9xGx changing frameskip up and down, making it choppy versus being smooth. Surely, if the VC version can do it, then Snes9xGx should be able to do so as well. It can't be the Wii's fault, can it?


To sum up: Why does Snes9xGx run Kirby's Dreamland 3 at a choppier framerate than the Virtual Console version? Isn't there ANYTHING dborth could do to optimize it? Or is this because I'm running off an SD card?

Information -

Version: 4.2.8 official ( http://tinyurl.com/3nclvar )
Wii System Menu: 4.3 U/NTSC
Snes9xGx Forwarder: http://tinyurl.com/3gjvsp5
HBC Version: 1.0.8
Tried both boot.dol and boot.elf files.

ROM: Kirby's Dreamland 3 (U) [!].sfc
Checksum: Okay
ROM Size: 32mbit
Region: NTSC-U

Heck, other games (like Final Fantasy VI) are affected in towns, the framerate drops, but not when playing the VC version. WTF? :shock:

I already asked dborth about this, but he didn't really give me any insight and told me he no longer accepts bug reports, because yes, this is a bug that needs to be reported.
Lisa: "I hope you all know you're sponsoring a murderous pirate!"
Sponsor: "A pirate!!? Well, that's hardly the image we need for Long John Silvers!"
SparroHawc
Official Android Porter
Posts: 303
Joined: Mon Feb 07, 2011 9:20 pm
Location: All up in your business

Post by SparroHawc »

Unfortunately, we don't have access to the emulator Nintendo's using for the VC - so we have no idea what sorts of optimizations it's using to get full speed on more resource-hungry SNES games.

It's always possible there'll be some optimization that fixes everything, but our wonderful developers are doing this in their spare time. Also, it looks like the most recent version of SNES9x is being used for it, which is a bit more CPU intensive due to increased emulation accuracy. It may be that SNES9x is actually emulating things more accurately than the VC is.

It's also possible that the VC is using machine-level optimizations that we don't have the resources to implement - like routines written in assembly.
Post Reply