Its been a while since I've logged in on this site, but I thought that I should and report what I've found.
First off, I'm not reporting "issues". So this isn't related to Retroarch or SNES9xGX specifically. This post of mine is related to emulators in general, so beware if you love emulators.
Emulation results in Input Lag (and its unavoidable)
I've done alot of testing of real consoles vs. emulators on my CRT, and I've found that I was dead wrong when I use to think that excellent emulators like SNES9x or GenesisPlus or Nestopia were without Input Lag. On the contrary, they DO have lag. In fact, I've discovered after significant (and aggravating) research that ALL emulators have typically 3 frames of input lag at the minimum, if your lucky.
For example, popular emulators like SNES9x have about 3 frames of Input Lag on
average, regardless of whether you use the PC version, or the Retroarch version on Wii
(just don't use SNES9xGX......that thing has insane lag, up to 6-8 freakin frames!). Even so-called accurate emulators like BSNES have a minimum of 3 frames of Input Lag (I said "so-called" because its not truly 100% accurate unless its has ZERO input lag, just like the real thing....but then again its not the real thing).
While I'm not 100% sure as to why all emulators in existence have Input Lag, I have basically read enough explanations to sum it up in 1 sentence.
"Emulators seem to work by essentially running the entire machine for a single frame, pausing the emulation, reading the inputs on the host layer, then resuming the emulation with those inputs having been passed". Or something like that. Only someone very well versed in how emulation works could offer up a better explanation.
Anyway, it basically boils down to "gameplay", and the better the game plays, the better your experience. I can fully guarantee you that you will beat Mike Tyson on the real NES much easier than on Nestopia (PC or Wii), as I've witnessed the instant response myself on the real console vs. the emulators (wired or wireless controllers). I couldn't believe how much easier games like Punch-Out or Mega Man 2 was on the real console vs. emulation. Its not about whether or not you can "feel" the lag, its about whether or not your game plays better. And I promise any of you that whether or not you "feel" it, you will SEE the proof yourself if you play on both the real console and the emulator for a while. When you switch back to the real hardware, EVERYTHING will be tighter and more fluid and responsive. This is a irrefutable fact beyond debate. Emulation will always have lag, simply due to the nature of the way emulation works (the fact that its not the "real" thing should be enough to make one worry).
SIDE NOTE: I also noticed that the audio lags behind the real hardware. For example, I started up Zelda, on both the Wii and a real SNES, and hit the start button at the same time after the title screen, and switched back and forth between inputs, and the audio on both sounded like they were running at 2 different speeds, and they were once I listed for 1 minute and noticed the audio of the emulated Zelda lagging behind the real console (ARRGGHH....not only input lag, but audio lag as well!). Anyway, I stopped using emulators a little while ago, but my conscience kept telling me to post my findings on here to you guys because you people deserve to know yet another reason why playing on the real hardware is far greater than you could ever imagine. You'll never get a "perfect" emulation, because emulators - due to the way emulation works - will always result in input lag (and other issues as well), and who wants lag on classic games like Ninja Gaiden that are tough as nails? I'm so glad I dumped emulators. Less stress and more fun!
P.S. If your going to test input lag on the real console, make sure that you use a game that doesn't have lag built into it. For example, don't test Mario's jump in Super Mario World, bad idea. And make sure to give your camera a clear shot of your finger pressing the button while at the same time getting a clear shot of the Television screen. Its not easy. And don't ask me for my video tests, because I no longer have them (when I took the videos I never considered that I might be telling you guys about this, but you can go
here and/or
here too if you doubt me, and REMEMBER that Super Mario World has built-in lag for Mario's jump unlike other games. But trust me, emulation will always lag). And don't test with a XRGB-Mini, which will add 1 frame of lag to your already laggy HDTV. Please guys, use a SDTV CRT for crying out loud. (and please click on those links above)