Viewing Issue Advanced Details
|ID||Category [?]||Severity [?]||Reproducibility||Date Submitted||Last Update|
|00240||Gameplay||Minor||Have not tried||Jan 27, 2008, 23:24||May 25, 2008, 12:37|
|Version||0.109u4||Fixed in Version||0.125u3||Build|
|Fixed in Git Commit||Github Pull Request #|
|Summary||00240: galaga88: Most of the time the shooting accuracy shown on the screen when the game is over is not computed correctly.|
Most of the time the shooting accuracy shown on the screen when the game is over is not computed correctly. It's hard to explain, so I made a slew of screen shots with different levels of shots fired, the problem appears to begin "Number of Hits" level is in the 60's...
Followup: I did a bit more followup on this bug - it was introduced in MAME 0.89. In the last update before 0.89, there was huge work on Namco System 1 by Nicola Salmoria in which romsets for galaga88 were removed/changed:
Follow-up by Haze: It's a bug in the emulation of the protection device. I've tracked it down, and know what's wrong. I'm just trying to figure out the best way to fix it without breaking other things.
Basically the current implementation of the protection device simulation supports a 16bit / 16bit divide operation, however, galaga88's score calculation requires a 32-bit / 16 bit operation. It writes the first set of registers twice to write the 32-bit number, at the moment the first writes are ignored, only the second 16-bit is used. When you go above the 65 hits / 100 shots type stats the first value goes above 0xffff, and becomes a 32-bit number (>0x000010000) because MAME ignores the first part it ends up doing something like 0x0030 / 0xYY instead of 0x00010030 / 0xYY, thus giving the incorrect %.
|Steps To Reproduce|
|Affected Sets / Systems||galaga88|
galaga88_0109u4gre.png (7,335 bytes) Feb 14, 2008, 08:36
|There are no relationship linked to this issue.|
|There are no notes attached to this issue.|