View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
024 | upergrafx | CD-ROM2 | public | 2020-08-26 11:23 | 2020-08-28 19:19 |
Reporter | na6ko | Assigned To | |||
Priority | normal | Severity | minor | Reproducibility | always |
Status | resolved | Resolution | fixed | ||
Product Version | upergrafx_xx_20200321.pac | ||||
Fixed in Version | 非公開の開発途中版 | ||||
Summary | 024: HCD2035 井上麻美 - 絵が化ける | ||||
Description | 添付のセーブデータをロード. セーブデータ1 の家老の家を見ると発生.
| ||||
|
|
|
この家老の庭に関しては 6270.VRAM address 0xA200 付近の書き込みが変. |
|
このソフトは CD の読み込みのあと ADPCM 用 RAM へ DMA 転送をやたらと利用していて、 0x20 sectors, つまり ADPCM 用 RAM address 0x0000-0xffff に書き込んだ後 BIOS 経由で 6280 から全部読み出すという変な手法をとっている. |
|
前回の VRAM address 0xa200 は MAME 特有の byte 単位の考えで、正式には 0x5100 の値. |
|
UGXのGPRAMとエミュレータのRAMを比較したところ下記の 1 byte の違いがあり、エミュレータで該当部をUGXを同じにしたら再現した. |
|
ADPCM 用 RAM address 0xffff の読み込みで正常なデータがでていないことを確認. 読み込み処理には問題がなく、書き込み処理に問題があった. いままで結構な数の ADPCM 用 RAM への DMA 転送で最後の 4bits が正常に転送されていなかったので結構深刻なバグだった. |
|
|
|
このバグの原因ではないが ADPCM 用 RAM address 0xffff での 6280 の読み込みの処理が不適切で次の address 0x00000 が正常に読めないバグが有ったので修正. たぶん、実用はされてないと思う. |
|
このゲームのほかの箇所でも問題があるが修正済みの状態では発生しない. 原因は ADPCM 用 RAM への書き込みで最後の1nibbleの不正書き込みであると考えられる. |