モトローダーが"OK DEVA!"と喋った後、画面右側がバグった表示になる。ゲームはそのまま進めることが出来る。
状態変更. 見た目だけ判断するとよく見る不具合です.
ADPCM RAM への書込みが 1 byte ずれてて、その後 ADPCM RAM から VRAM へ転送しているということが多いです.
録画した.
https://youtu.be/aDkmXgAF6gk
フェードアウト時の絵はでてるのでキャラ転送は正常で、時刻00:42でのパレットの書込みだけが変らしい.
CPU trace を行なったところ address 0x1fe400 から 0x1fe4ff まで read 処理が入っていた. 原因は2つある.
1) ここで read 処理が走るのは謎でエミュレータでは再現しない.
2) この address に read が入っていたときに間違えてパレットを更新していた.
1) は今のところ原因不明で、パレット以外にも1frameだけ変な絵が出る.
2) は5月ごろに実装した実験的コードが誤って残っており、 read 処理でパレットを更新することが間違い. いままで他でこれが判明しなかったのはこの address に read をするソフトがなかったのかが謎.
6260 のマニュアルではここは read できるはず.
1) の不具合は存続しているが、ゲームを遊ぶ分には重要度は低いので現状放置とする. 2) の不具合は修正した.