2019年04月11日

画面周り割込み修正版

画面周りやタイマ/カウンタの動作に間違いがありましたので修正しました。
ラスタ割込みはどこからどう数えての数値で割り込みを掛ければいいのかがいろいろな資料を読んでも分からなかったので適当に実装していましたが、どうやら垂直表示期間が終わってブランクに入ったラスタを0として、ラスタ毎にカウントアップするのが正しそうで、インターレース表示の時には奇数行・偶数行関係なくラスタをカウントすればいい?ようなのでそのように修正しました。
もともと僕の実装では表示期間があって、ブランク/同期期間がある、という順番(数値)になっていましたが、実機では先にブランク/同期でその後に表示期間のようです。
また、タイマ・カウンタはカウント値が1になった次にトリガがかかった時に割り込みを掛け、次のトリガでカウント値を初期化していましたが(カウント値0が存在する)、実機では同時にカウント値を初期化するのが正しいようです。
そのように修正しました。

release-F68k_DE0CVDEMU.190411.qar

垂直同期割込みやラスタ割込み等使用しているソフト、且つ15kHz水平同期の物ではタイミングが改善されると思います。
posted by プー at 18:37| Comment(0) | 日記 | 更新情報をチェックする
この記事へのコメント
コメントを書く
コチラをクリックしてください