Thanks for the update and looking into this fuzzel. I had a chance to do some testing this afternoon and it still appears as if the rev628 is just more fluid some how. Even though the FPS levels seem quite close or even the same in some tests, I still see a bit of micro-stutter / smearing with the ball itself. Also, it seems that even if the FPS is quite high it can still be happening and I'm wondering if it's more just about the ball rendering than really how much FPS we're getting.
The one test table I'm using has a stress test timer that turns on and off all alpha flashers every 25 ms (uses a global refresh light / technique though) and the lamptimer at 10 ms to show the changes in the flashers quick enough for the stress timer. With this test table, I still get around 720 FPS with AA forced on while on my Windows 7 cabinet. I get about the same FPS between rev628 and 652 but it does appear 652 just doesn't draw the ball as clean under the same parameters. I've done most testing without any GPU over-clocking but when I boost to a standard OC to assess, I get a jump in FPS by about 15-20% yet it still seems to not affect the ball drawing or help smooth it out.
I'm finding that without forced AA enabled the difference is too slight to tell but the more demanding aspect of AA brings out the discrepancies between the versions. So I think, if you can test with AA forced on, it may help your own ability to assess and witness these issues. It does seem that even when lighting events are not happening, yet the table is somewhat demanding, by it’s build having lot's of static alphas as well as AA forced on, that it can be seen. I test with tables that have the flipper tap code so I can do a bunch of soft / lofty short shots and assess visually how the ball looks in the lower to mid-playfield and as it speeds up and slows down or travels through the apex.
I'm wondering if somehow the ball reflections option / code, even when disabled (globally or table wise), could have had some impact as it seems like around the same time it was introduced this slight ball drawing / stuttering arose. Also, is it possible things like the anti-stretch have a bearing, again even though the ball reflection option is disabled as I thought I saw some early bug reports when that option was chosen along with ball reflections? Would it be possible to make a test rev with everything held constant except remove the changes that were needed to give the ball reflection option? It doesn't have to be something official but I'd be happy to test out a custom build for at least diagnostic purposes.
Thanks for trying to nail this down. By the way, while testing I have noticed that certain demanding sequences in some tables are now smoother than before these more recent 608+ versions likely because of your alpha optimization without rendering the sides when they're at a 0 height helping a lot of alpha flashers as they typically do not have any visible sides set (that was a great boost / help and I think helps cause less general stutter when dynamic alpha image changing events are occurring).
Lastly, I'm wondering if the other people noticing more differences in rev628 and 650 or 652 might also by chance be ones than have AA forced on as well?