you mean glitches included? Callus95 was actually a very good emulator back then and still the only emulator where SF2 has the correct timing
MAME is not 100% arcade perfect, let alone console ports
http://mametesters.org/view.php?id=00408
Back in the days of Callus, that was the only emulator able to play SF2T at correct speed, the 68000 frequency must be set around 8MHz. It’s obvious that’s an hack and that MAME will need to emulate the 68000 wait states properly.
First, I will say that I have tried to discuss this topic with others before (Dayvee, etc), but I was dismissed, with “this is not important”. However, I believe this issue is extremely important, because it relates to the accuracy of the emulation, and it could affect other things (for example----the KNOWN speed problem with SF2 hyper fighting being too fast in MAME and its siblings).
This HAS BEEN TESTED AND VERIFIED against a PCB: So take note.
In the SF2 games, the EEPROM (power on initialization) test is too fast. This occurs on any emulator that shares a similar CPU core (MAME, Finalburn, Kawaks). However, THIS DOES NOT HAPPEN ON CALLUS. The callus initialization is arcade exact. I have reset the arcade machine many times (mainly, to see which revision I was playing :>), so I am familiar with the speed of the test scrolling. Note: the EEPROM RESET speed is identical in WW, CE, and HF.
even the CPS2 eeprom resets are too fast, but I have only verified this with CPS1 eeprom reset initializations. The CPS2 resets are taken from “memory”, as I have only seen a CPS2 reset from power off a few times. So take that with a grain of salt.
Another thing worth careful noting, is that this EEPROM initialization is closely tied in to the CPU speed of the game, even if the throttling is disabled (SF2:WW, CE). Overclocking the CPU and resetting the game in the emulator makes the EEPROM initialization go even faster. (I have no idea whether this occurs in the arcade machine–how many people have seen an overclocked PCB?
There is something more that MAMEDEV needs to note here.
Setting the CPU to 65% (which results in arcade perfect speed–remember folks, SF2:HF plays too fast at anything higher than 8 mhz) in SF2: turbo hyper fighting, still does not fix the EEPROM test. Even setting the CPU to 60% (slower than a real machine) has the test run too fast.
Now, before I get flamed for posting something insignificant, WHY DOES CALLUS HAVE THIS SPEED ARCADE PERFECT? And, isn’t the goal of emulation to have everything accurately emulated 100% ?
If something like the eeprom test is wrong, who knows what else can be affected ? What if in fact, the CPS1 SF2 games actually ran at 10 mhz (instead of the 7-8 mhz that is “proper” for accurate play in SF2:HF), but whatever is causing the EEPROM speedup, is also somehow affecting the throttling code, and possibly forcing a SLOWER cpu ?
68k bug? Some unemulated code that needs to be looked into?
Of course, the EASY answer to this would be to ask Sardu, since he got it right. But Sardu isn’t around anymore. In addition, the source for Callus isn’t available. And what CPU core did Callus use ? is it a different one from the one MAME uses? Could that be a factor?
This needs to be investigated, as this little “thing” could solve some much bigger problems. And I think that experienced testers will agree with me (right, Bugfinder?
I think this should be submitted into the bug reports section, and any feed back is welcome.
IF ANYONE HAS A REAL SF2 PCB, PLEASE CHECK THIS.
And please check it, Vs Callus, and vs MAME set to 65% CPU 0.
-Antos