ハードウェアでロジックを追加し、もうこれで大丈夫と思って電源を投入したら・・・
今度はモニタが起動しなくなりました。
考えれば理由は明らかです。
現状のNDPチップセレクトは単にアドレスバスのA3~A7をデコードしているだけなので、
これでデータバッファを閉じてしまうとメモリの**F8~**FFも読めなくなってしまいます。
もしプログラムコードをフェッチ中であればそこに到達したとたん暴走するわけです。
というわけでCPLDのロジックを修正しNDPチップセレクトにI/Oへのリードライトである/IORDと/IOWT
を加えました。
これで本当にNDPをアクセスするときだけバッファが閉じることになります。
NDPには既に/IORDと/IOWTがつながっているので冗長なロジックですがまあ良しとします