2012年06月04日

スクリーン3と4の混在のバグ(2)

 スクリーン3と4の混在のバグに関して、原因がわかりました。

 ゆみたろさんにもコメントをもらっていましたが、原因はVDG周辺の回路ではなくVDG本体でした。


 これは、MC6847 のブロック図の一部です(MC6847のマニュアルより。16ページ)


MC6847のブロック図


 A/G、GM2-0 にはFFが入っておらず、それ以外の信号にはFFが入っています。

 この信号は、アトリビュートを読み出した結果がそのまま入力されるため、A/G、GM2-0 と他の信号は1クロックずれて変化する事になります。
 これにより、アトリビュートが1つずれているようです。

 CSSには FFが3つ入っていますが、これで他の信号(A/S、INT/EXT、INV)と段数が合っているようです。


 この結果、アトリビュートのアドレスがずれてしまうのは、GM2-0 のみです。
 (A/G は、実際には混在して使う事が出来ないので、考慮しなくてもいいでしょう)


 mk2以降は、このずれを回路に入れていないようなので、アトリビュートがずれずに表示されます。



posted by えすび at 18:18| Comment(2) | P6解析:画面周り | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
なんとVDG本体とは!
「仕様」ということなんでしょうね(~-~;
NECはこの仕様を把握していなかった?
それともモード混在はサポート外だから割り切った?

少なくとも私は把握してませんでした(汗)
回路図読み間違えてたかも(大汗)
Posted by ゆみたろ at 2012年06月04日 22:27
 これはVDGの「仕様」ですね、多分。

 ただし、このブロック図ではFFが入っているんですが、タイミングチャートの方は同じタイミングで取り込むようになっています。間違いでしょうけど。


 VDGの周辺回路はこのFFは意図していないので、NECは知らなかったんでしょう。

 モード1と2の混在は意識していたんでしょうけど、モード3と4の混在は元々想定外だと思います。

Posted by えすび at 2012年06月04日 23:59
コメントを書く
お名前: [必須入力]

メールアドレス:

ホームページアドレス:

コメント: [必須入力]

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。
×

この広告は90日以上新しい記事の投稿がないブログに表示されております。