Is it possible to remove slowdown in emulators?
Moderator: General Mods
Is it possible to remove slowdown in emulators?
I remember reading on the Project64 forums about someone who had worked on some sort of business that would remove the slowdown/sluggish framerate from Goldeneye and Perfect Dark in emulation, making them more playable than they would ever be on original hardware. I'm aware that the goal of most emulators is accuracy to the original hardware, but would it be doable to add an option to an emulator (a checkbox, or something perhaps) that allows you to run the games outside of the original hardware's technical limits and grab a constant speed? Games like Gradius III for instance immediately suggest themselves as games that would benefit from that sort of thing. Would that be difficult to pull off, or would it break something in legit emulation, anything like that? I suspect that I'm not nearly the first person to think of this and the fact that I haven't seen it in an emulator yet suggests that perhaps there's a good reason why it isn't done, but I'm curious about the subject.
Thanks and apologies if this is in the wrong place.
Thanks and apologies if this is in the wrong place.
-
- Buzzkill Gil
- Posts: 4295
- Joined: Wed Jan 12, 2005 7:14 pm
Re: Is it possible to remove slowdown in emulators?
Yes.IglooBob wrote:Would that ... break something in legit emulation
Also, you can play the original version of Gradius 3 on MAME. And get even MORE bullshit to go with your less slowdown.
KHDownloadsSquall_Leonhart wrote:DirectInput represents all bits, not just powers of 2 in an axis.You have your 2s, 4s, 8s, 16s, 32s, 64s, and 128s(crash course in binary counting!). But no 1s.
Re: Is it possible to remove slowdown in emulators?
moar frustration pleezGil_Hamilton wrote:original version of Gradius 3
Why yes, my shift key *IS* broken.
-
- ZSNES Shake Shake Prinny
- Posts: 5632
- Joined: Wed Jul 28, 2004 4:15 pm
- Location: PAL50, dood !
Re: Is it possible to remove slowdown in emulators?
Overclocking will make all the interrupt-based timings fubar, with wildly varying consequences.
And noone really wants to recode the games just to get around those issues, so...
And noone really wants to recode the games just to get around those issues, so...
皆黙って俺について来い!!
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)
Re: Is it possible to remove slowdown in emulators?
Alrighty, thanks all for the responses. I expected as much. I had asked on the bsnes forums about Super Bomberman 2 running slower in multiplayer on bsnes vs zsnes/snes9x and they told me that was a result of bsnes being more accurate timing-wise. Of course, my friends don't dig the slowdown so we end up running it on zsnes most of the time. Assuming that's all true, it's an interesting realization that as zsnes for instance gets more accurate and closer to hardware, it'll actually decrease the enjoyability of the experience for some games.
EDIT: Ah, I'm already quite sure that I have no business playing Gradius III in MAME. That thing's ridiculous.
EDIT: Ah, I'm already quite sure that I have no business playing Gradius III in MAME. That thing's ridiculous.
-
- Buzzkill Gil
- Posts: 4295
- Joined: Wed Jan 12, 2005 7:14 pm
Re: Is it possible to remove slowdown in emulators?
Gradius is ridiculous in general.
Gradius 3 is just more so. Even on SNES. I know for a fact one stage has a continue point that is unrecoverable. You NEED one speed up, and if you die, you are physically unable to move as fast as the screen scrolls, and will never make it to the first powerup.
Gradius 3 is just more so. Even on SNES. I know for a fact one stage has a continue point that is unrecoverable. You NEED one speed up, and if you die, you are physically unable to move as fast as the screen scrolls, and will never make it to the first powerup.
KHDownloadsSquall_Leonhart wrote:DirectInput represents all bits, not just powers of 2 in an axis.You have your 2s, 4s, 8s, 16s, 32s, 64s, and 128s(crash course in binary counting!). But no 1s.
-
- ZSNES Shake Shake Prinny
- Posts: 5632
- Joined: Wed Jul 28, 2004 4:15 pm
- Location: PAL50, dood !
Re: Is it possible to remove slowdown in emulators?
Gradius (and thus Parodius) is a game where the life counter is only there for show. You only have one life.
皆黙って俺について来い!!
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)
Re: Is it possible to remove slowdown in emulators?
Aren't there already reports of games like goldeneye and perfect dark running somewhat better in emulators just because of the stuff like HLE and timing and stuff? I figure it's because of certain functions happening "instantly" rather than the emulator waiting the amount of time the original console would've taken to execute the same function.
Not much of a programmer and I've never wrote an emulator, but I've read a good bit on the subject so I don't claim to know too much about it, just going by things I've heard.
Not much of a programmer and I've never wrote an emulator, but I've read a good bit on the subject so I don't claim to know too much about it, just going by things I've heard.
Maybe these people were born without that part of their brain that lets you try different things to see if they work better. --Retsupurae
Re: Is it possible to remove slowdown in emulators?
Alright, so not to be bothersome, but I was reading some stuff at the bsnes forums, where someone made a feature request for overclocking the cpu, and byuu mentioned:
"ZSNES is all the proof you need that you can be way, way, way off on timing and things will still work fine in most games. My timing tests peg it as running ~40-60% faster than the real thing. You only need the insane precision for a few dozen titles, which with a library of 4,000+ games isn't half bad."
So with that in mind, there couldn't be an option, with a warning attached or in the readme that it will break some games, and a suggestion to keep it off for the most part? I'm not making a feature request, but if the timing inaccuracy would only cause issues with a few dozen games, it seems like it'd be desirable to make it an option. There's quite a few games that would be more fun without slowdown. Super Bomberman 2 is an example of a game where if you have the choice, you never want to play on the original hardware or in bsnes, because the slowdown with 4 players while not huge, is a bit distracting.
So yeah, I'll be clear that I'm not challenging any assertions or trying to irritate anyone, but it seems to me there's a pretty noticeable upside for an overclocking feature, and a pretty limited downside (no downside really, if you make the issue clear in the documentation and trust people to read before making bug reports).
"ZSNES is all the proof you need that you can be way, way, way off on timing and things will still work fine in most games. My timing tests peg it as running ~40-60% faster than the real thing. You only need the insane precision for a few dozen titles, which with a library of 4,000+ games isn't half bad."
So with that in mind, there couldn't be an option, with a warning attached or in the readme that it will break some games, and a suggestion to keep it off for the most part? I'm not making a feature request, but if the timing inaccuracy would only cause issues with a few dozen games, it seems like it'd be desirable to make it an option. There's quite a few games that would be more fun without slowdown. Super Bomberman 2 is an example of a game where if you have the choice, you never want to play on the original hardware or in bsnes, because the slowdown with 4 players while not huge, is a bit distracting.
So yeah, I'll be clear that I'm not challenging any assertions or trying to irritate anyone, but it seems to me there's a pretty noticeable upside for an overclocking feature, and a pretty limited downside (no downside really, if you make the issue clear in the documentation and trust people to read before making bug reports).
-
- Buzzkill Gil
- Posts: 4295
- Joined: Wed Jan 12, 2005 7:14 pm
Re: Is it possible to remove slowdown in emulators?
You cite the argument that ZSNES already has roughly a 50% overclock as evidence why ZSNES should have a further overclock added?IglooBob wrote:Alright, so not to be bothersome, but I was reading some stuff at the bsnes forums, where someone made a feature request for overclocking the cpu, and byuu mentioned:
"ZSNES is all the proof you need that you can be way, way, way off on timing and things will still work fine in most games. My timing tests peg it as running ~40-60% faster than the real thing. You only need the insane precision for a few dozen titles, which with a library of 4,000+ games isn't half bad."
So with that in mind, there couldn't be an option, with a warning attached or in the readme that it will break some games, and a suggestion to keep it off for the most part? I'm not making a feature request, but if the timing inaccuracy would only cause issues with a few dozen games, it seems like it'd be desirable to make it an option. There's quite a few games that would be more fun without slowdown. Super Bomberman 2 is an example of a game where if you have the choice, you never want to play on the original hardware or in bsnes, because the slowdown with 4 players while not huge, is a bit distracting.
So yeah, I'll be clear that I'm not challenging any assertions or trying to irritate anyone, but it seems to me there's a pretty noticeable upside for an overclocking feature, and a pretty limited downside (no downside really, if you make the issue clear in the documentation and trust people to read before making bug reports).
And being familiar with the BSNES thread, I'm pretty sure if the folks in question had played Super Bomberman on real hardware or BSNES first, they wouldn't be bothered at all. They learned the game when it was running wrong, and now it throws them off when it runs right.
KHDownloadsSquall_Leonhart wrote:DirectInput represents all bits, not just powers of 2 in an axis.You have your 2s, 4s, 8s, 16s, 32s, 64s, and 128s(crash course in binary counting!). But no 1s.
-
- ZSNES Shake Shake Prinny
- Posts: 5632
- Joined: Wed Jul 28, 2004 4:15 pm
- Location: PAL50, dood !
Re: Is it possible to remove slowdown in emulators?
it is useless trying to interpret posts such as these the way you did
i.e. nonlinear stuff doesn't extrapolate that way, dood
i.e. nonlinear stuff doesn't extrapolate that way, dood
皆黙って俺について来い!!
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)
Re: Is it possible to remove slowdown in emulators?
Not really. I'm just aware that the end goal for a lot of emulators is complete accuracy, which of course means emulating every bit of slowdown present on original hardware. My question is pretty general, really, I'm not trying to advocate anything for ZSNES. Overall the quest for accuracy makes sense, it just strikes me that the gameplay experience of a few games here and there is improved by inaccurate timing. If that subjective improvement disappears, oh well I suppose, I was just curious as to if it was possible to do it both ways.You cite the argument that ZSNES already has roughly a 50% overclock as evidence why ZSNES should have a further overclock added?
Re: Is it possible to remove slowdown in emulators?
Yeah, I see a problem right there.IglooBob wrote:(no downside really, if you make the issue clear in the documentation and trust people to read before making bug reports).
-
- Hazed
- Posts: 70
- Joined: Sat Apr 24, 2010 2:19 am
Re: Is it possible to remove slowdown in emulators?
I can understand both schools of thought on the subject, but I'm of the belief that if you can improve on the original then you should at least try. If accuracy is to be the primary concern of emulation, then certainly improvement should be the second.
-
- ZSNES Shake Shake Prinny
- Posts: 5632
- Joined: Wed Jul 28, 2004 4:15 pm
- Location: PAL50, dood !
Re: Is it possible to remove slowdown in emulators?
i'm of the belief of "listen to the doods who know it will break stuff all over as soon as you get anything close to a minor removal of slowdowns and just stop while you're ahead since those doods spent time you didn't on that topic years before you even thought about it"magitek369 wrote:if you can improve on the original then you should at least try
seriously, all it requires is a whole rewrite of most games.
time better spent recoding these games for portable platforms, if you're actually thinking about that.
皆黙って俺について来い!!
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: 70
- Joined: Sat Apr 24, 2010 2:19 am
Re: Is it possible to remove slowdown in emulators?
Whoa, easy there, I'm just saying that if it's reasonably possible to accomplish something then it's usually worth attempting is all. Obviously there's a cost-benefit issue involved, and in regards to the issue at hand obviously you'd know better than I would.grinvader wrote: i'm of the belief of "listen to the doods who know it will break stuff all over as soon as you get anything close to a minor removal of slowdowns and just stop while you're ahead since those doods spent time you didn't on that topic years before you even thought about it"
Anyway, I was speaking more toward emulation in general. When I look at video filters and save states, I see improvements. Maybe it's not attainable, but wouldn't the Holy Grail of emulation be to actually improve on the original product?
Or am I just being the damn punk kid who doesn't know what the hell he's talking about here?
Re: Is it possible to remove slowdown in emulators?
I have no issues with allowing artificial enhancements of games over the originals, so long as nobody bugs me when things inevitably break as a result.
The problem I run into is that some of these enhancements require substantial additional overhead. For instance, to run the video processor faster than the main CPU, you'd have to add a new oscillator and could no longer share a single H/V counter for interrupts, which in turn would break out-of-order execution optimizations. You'd end up taking a good speed hit, and have to add a ton of extra complexity that could affect even your base-accuracy, for some novelty hack.
So I'd go with, if you can offer the option at no cost, sure. Just don't leave it enabled by default.
The problem I run into is that some of these enhancements require substantial additional overhead. For instance, to run the video processor faster than the main CPU, you'd have to add a new oscillator and could no longer share a single H/V counter for interrupts, which in turn would break out-of-order execution optimizations. You'd end up taking a good speed hit, and have to add a ton of extra complexity that could affect even your base-accuracy, for some novelty hack.
So I'd go with, if you can offer the option at no cost, sure. Just don't leave it enabled by default.
-
- Buzzkill Gil
- Posts: 4295
- Joined: Wed Jan 12, 2005 7:14 pm
Re: Is it possible to remove slowdown in emulators?
Yes. Now get off my e-lawn, you damn whippersnapper!magitek369 wrote: Or am I just being the damn punk kid who doesn't know what the hell he's talking about here?
KHDownloadsSquall_Leonhart wrote:DirectInput represents all bits, not just powers of 2 in an axis.You have your 2s, 4s, 8s, 16s, 32s, 64s, and 128s(crash course in binary counting!). But no 1s.
-
- Hazed
- Posts: 70
- Joined: Sat Apr 24, 2010 2:19 am
Re: Is it possible to remove slowdown in emulators?
You're not the boss of me! You're not my real dad!Gil_Hamilton wrote:Yes. Now get off my e-lawn, you damn whippersnapper!magitek369 wrote: Or am I just being the damn punk kid who doesn't know what the hell he's talking about here?
-
- Buzzkill Gil
- Posts: 4295
- Joined: Wed Jan 12, 2005 7:14 pm
Re: Is it possible to remove slowdown in emulators?
Damn right I ain't your dad! If I was your pappy, I'd bend you over my knee and whip you so hard you couldn't sit for a week!magitek369 wrote:You're not the boss of me! You're not my real dad!Gil_Hamilton wrote:Yes. Now get off my e-lawn, you damn whippersnapper!magitek369 wrote: Or am I just being the damn punk kid who doesn't know what the hell he's talking about here?
Now get out 'fore I whip out my shotgun!
KHDownloadsSquall_Leonhart wrote:DirectInput represents all bits, not just powers of 2 in an axis.You have your 2s, 4s, 8s, 16s, 32s, 64s, and 128s(crash course in binary counting!). But no 1s.
Re: Is it possible to remove slowdown in emulators?
unfortunately I haven't used zsnes in a while, I don't know if this setting is still in zsnes.cfg but try it out:
use this thread as a warning as to why this probably won't work. it's like you're a secretary and are supposed to call people for appointments all day, but today you took some crack, so you start calling everybody early and a lot of those people are still sleeping or waiting for a call from the other people you've already called before they can talk to you. see kids, crack is whack.
Code: Select all
; Percent to Execute [50..150] - only modify if you know what you are doing
; Changing this value may help certain games run.
per2exec=100
-
- New Member
- Posts: 1
- Joined: Thu Feb 02, 2012 8:39 am
Re: Is it possible to remove slowdown in emulators?
for a game like gradius or 1 life till death game , i would prefer using save state. n load state sir. and furthermore. i think it's possible to do frame skipping so the game will run faster. 

-
- Buzzkill Gil
- Posts: 4295
- Joined: Wed Jan 12, 2005 7:14 pm
Re: Is it possible to remove slowdown in emulators?
...
GOD. DAMMIT.
GOD. DAMMIT.
KHDownloadsSquall_Leonhart wrote:DirectInput represents all bits, not just powers of 2 in an axis.You have your 2s, 4s, 8s, 16s, 32s, 64s, and 128s(crash course in binary counting!). But no 1s.
Re: Is it possible to remove slowdown in emulators?
awwwh, look, it's the internet version of a facial tic.Gil_Hamilton wrote:...
GOD. DAMMIT.
thank you, thread necromancer, for bringing me a smile due to the reaction to teh stupid.
Why yes, my shift key *IS* broken.
-
- ZSNES Shake Shake Prinny
- Posts: 5632
- Joined: Wed Jul 28, 2004 4:15 pm
- Location: PAL50, dood !
Re: Is it possible to remove slowdown in emulators?
hahahahahahahahahaha
hahahaha
haha
hahahaha
haha
皆黙って俺について来い!!
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)