カテゴリ | 重要度 | ステータス | 解決状況 | 登録日時 | 最終更新 |
---|---|---|---|---|---|
![]() | 機能追加 | 解決済み | 修正済み | 2016-06-13 14:04 | 2016-06-18 23:59 |
テスター | Hurray Banana | 担当者 | Robbbert | ソース | pacman/jrpacman.cpp |
バージョン | 0.174 | 発生バージョン | 修正バージョン | 0.175 | |
修正コミット | プルリク | ||||
フラグ | 実機・資料検証済み | ||||
セット | pacman | ||||
セット詳細 |
![]() | ||||
概 要 | 画面最上部にスプライトが描画されるとき、XとYフリップビットが無視される。 | ||||
詳 細 | When a sprite is partially off the bottom of the screen (Y values less than $10) the hardware draws the missing parts at the top of the screen, basically wrapping the sprite. Unfortunately it appears in Mame that the driver is ignoring the x and y flip bits (bits 1 and 0 of the sprite number register - that's the first byte in each sprites info values) so if the sprite is flipped vertically (bit 1 is set in the sprite number regsiter) it is drawn at the bottom of the screen ok but the wrap at the top is rendered as if the bit is clear. This renders properly on the Pac-Man board. | ||||
再現手順 | Setup any sprite regsiter ($4ff2 for example) with sprite #0 and set the y flip (storing $01 would set this) make sure you set the sprites palette to say pallete 1 ($4ff3 to continue current example) set the sprites Y value in it's Y position register of $8. (in this example that would be $5063) You will see at the bottom of the screen the cherry upside down, but the wrap at the top of the screen is shown unflipped. | ||||
追加情報 | Found this bug while coding a simple game for pacman hardware, it can never occur in the original code as sprites don't wrap top and bottom of screen because of maze layout. This happens for either x or y fliping This does not happen on actual hardware. I've included a screenshot, showing it (uses different sprite rom) Here is a video I made showing the mame problem and the same code running on a Midway pacman board flipping correctly. The correct behaviour can be observed @2:14 onwards Can provide source code and binaries or my code to try | ||||
添付ファイル | ![]() |