Well, the first part about the original games' input buffers being the major cause is just the answer I was looking for!
IseeThings wrote:The frequency at which inputs are polled on modern systems could be a problem tho, yes. On the original boards you basically have a pin relating to each input and the main cpu could get the state of that pin at any time*. On a modern PC you have all sorts of logic between input and the value given by the hardware to the Windows driver. Again this isn't MAME adding lag tho, it's modern hardware.
* later hardware like STV and many Namco titles are messy tho, driving inputs through a secondary processor which has the potentially to add lag on real hw too because the main cpu is not provided with direct access to the hardware state.
I am confused why you still feel the need to point this out for me, when I already discussed it above; I'm pretty well aware of the various slowing factors in a PC's operation. I hate USB 3 and its drivers, but I hated USB 2 and its drivers too. This constellation of issues almost certainly cannot be a (major) factor in frameskip operation, where there is ample time for commands to filter through the buffers and into MAME to be passed onto the game. Otherwise, lag frames could be notably shorter during frameskip than otherwise. Theoretically, I suppose one could hide some of the impact of too-slow propagation of commands through system hardware and the OS to MAME during frameskip operation, even if it wouldn't help in normal operation, although I view that as a tangent to our main topic.
Earlier, I did mention Ootake's author discussing using more CPU time to more quickly poll inputs so as to shorten this time, rather than tying it explicitly but arbitrarily to the beginning of a frame; I am guessing what he did would be analogous to going into the original game code and removing input buffers, as you mention. I am completely willing to agree that it is contrary to the purpose of MAME to do that; there's no need to even have a discussion on that point. So it's an interesting wrinkle, but not the major focus of the discussion. Given what I've heard here and elsewhere, I doubt one frame or more could be won back in frameskip (due to the commands having reached the emulated game well before the next frame), though even fractional parts of frames would be welcome. The main point I wanted to clear up was where the discrepancy in frame lag was coming from, and I suppose that has been at least mostly accounted for.
_____________
About the stupid crap up lousing up the thread:
I don't want to spend too long fighting about this, so I'll explain it briefly. Is anybody familiar with the phrase "If you understood what I said, I must have misspoken?" That was from the good old days the Federal Reserve, with Alan Greenspan as Chairman. Clearly, the Fed did not expect that people had a right to understand what was going on, so long as "somebody qualified" knew. Yet that sort of attitude caused bewilderment and great sadness, because the people (many of whom were academics or bankers who actually COULD understand what was going on) felt that it did not respect their ability to comprehend what was going on. Of course, the real story is that the Fed felt (and from time to time people have said this again, even like Paul Krugman) that they could best attain their objective by misleading the public.
Clearly that isn't the objective of a project like MAME, whose stated focus is to document the games. Some of us are not so clever or well-educated (or can spend the time) that we can correctly read *and interpret* the code for ourselves, so the layman-appropriate explanations are genuinely helpful. However this does not mean that we do not understand the logical implications of things (hence my little A + B + C + etc. above).
To put it bluntly, I don't know how the hell anybody can sift through the years' worth of confusion over the many pages of the Shmupmame thread without noticing that we only had partial answers about what was going on. When you have things like people stating that Shmupmame's sound is better than newer MAMEs, it should be clear there is a problem with the level of popular understanding.
At the same time, the standard, pat answers like "blame your computer" (i.e. "the lag is in the system and the OS") were clearly known and also clearly not sufficient to resolve the problem. (I hope I made that clear, anyway.)
trap15 wrote:If you weren't being retarded, you would have listened to Haze and not come up with any other conclusion.
There is a difference between being told "MAME isn't causing the lag, but you don't warrant a better explanation" and being given an explanation. I can't reach a conclusion without being able to explain it. The very fact that we have to go over all sorts of confusion factors repeatedly should have made it clear to you that an explanation would be necessary to reach a conclusion. And, for what it's worth, you were either unwilling or unable to give me the last piece of the puzzle, so like I said, you need to take a hike.
AntiFritz wrote:You shouldn't disregard things that people like iseethings have to say. It's not making you look very intelligent.
On top of what I just wrote (I wasn't disregarding things, I just didn't find them compelling reasons), you might not want to mix up Haze and trap15, there - or assume that just because trap15 states that Haze originally gave an adequate explanation that it actually was adequate.
OK. Are we all good now?