カテゴリ 重要度 ステータス 解決状況 登録日時 最終更新
ゲームプレイ解決済み修正済み2008-01-28 08:242008-05-25 21:37
 
テスターTafoid担当者nicolasaソースnamcos1.cpp
バージョン0.109u4発生バージョン0.89修正バージョン0.125u3
フラグ旧BugIDgalaga88_0109u4gre
セット galaga88
セット詳細
galaga88 - ギャラガ '88
 
概 要ゲームオーバーのときに表示されるヒット率の計算がおかしい場合がある。
詳 細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 %.
再現手順 
追加情報 
 
添付ファイルpng filegalaga88_0109u4gre.png (2008-02-14 17:36)