X680x0のMFPに接続されている画面関係の信号

3
Makoto Kamada @kamadox

X680x0 の MFP MC68901 の GPIP に接続されている画面関係の信号は VDISP、RINT、HSYNC の 3 本あり、信号を読み出したり変化したとき割り込みを発生させることができる。これらの信号を使うプログラムが期待通りに動かないとき、資料の間違いや説明不足が原因のことがある。

2021-09-13 20:43:33
Makoto Kamada @kamadox

GPIP4 VDISP 0 は垂直空白期間。すなわち、垂直フロントポーチまたは垂直帰線期間または垂直バックポーチ。 1 は垂直映像期間。 メーカー由来の資料は垂直帰線期間/垂直表示期間という書き方になっており、これが垂直同期信号であるかのような誤解を招いている。

2021-09-13 20:59:33
Makoto Kamada @kamadox

GPIP6 RINT 0 はラスタ番号が CRTC R09 と等しい。 1 はラスタ番号が CRTC R09 と異なる。 ラスタ番号は垂直帰線期間の先頭が 0、水平フロントポーチの先頭で +1。 ラスタ二度読みのとき 2 ラスタが 1 ドット、インターレースのとき 1 ラスタが 2 ドット。

2021-09-13 21:24:37
Makoto Kamada @kamadox

GPIP7 HSYNC 0 は水平表示期間。すなわち、水平バックポーチまたは水平映像期間または水平フロントポーチ。 1 は水平帰線期間。 これは水平同期信号。

2021-09-13 21:37:55
Makoto Kamada @kamadox

帰線期間→同期パルス GPIP4 VDISP 0 は垂直ブランキング期間。すなわち、垂直フロントポーチまたは垂直同期パルスまたは垂直バックポーチ。 1 は垂直映像表示期間。 これは垂直同期信号ではない。VSYNC は MFP に接続されていない。

2021-09-15 14:50:14
Makoto Kamada @kamadox

帰線期間→同期パルス GPIP6 RINT 0 はラスタ番号が CRTC R09 と等しい。 1 はラスタ番号が CRTC R09 と異なる。 ラスタ番号は垂直同期パルスの先頭が 0、水平フロントポーチの先頭で +1。 ラスタ二度読みのとき 2 ラスタが 1 ドット、インターレースのとき 1 ラスタが 2 ドット。

2021-09-15 14:51:10
Makoto Kamada @kamadox

帰線期間→同期パルス GPIP7 HSYNC 0 は水平バックポーチまたは水平映像表示期間または水平フロントポーチ。 1 は水平同期パルス。 これは水平同期信号。

2021-09-15 14:51:49
カタ @kata68k

@kamadox ありがとうございます。 帰線期間がピンとこなくて、同期パルスという文言に変わってスッキリしました。X68000ベストプログラミング入門のp.43の図で言えば、0は、(3)(4)(5)、1は、(1)であってますでしょうか? pic.twitter.com/4g7Gv0AyGA

2021-09-15 17:10:22
拡大
Makoto Kamada @kamadox

@kata68k あっています。 標準の高解像度のとき水平同期周波数が 31.500kHz で VDISP=0 は (15+6+35)/31.500kHz=1.778ms、VDISP=1 は 512/31.500kHz=16.254ms となります。この時間は 768x512、512x512、256x256 の画面モードで共通です。

2021-09-15 19:20:46