今回はPET2001の回路図を読むだけです。対象は主記憶にDRAMを使っているPET2001N。



 VRAMは40x25文字を表示するので1Kバイト、6114(2114) 1Kx4bitを2個使っている。VRAMはCRT表示のためのリードとMPU 6502からのリードライトがある。

 図は6114の片方だけ:
スクリーンショット 2019-09-01 18.57.27

 その二種類のアクセスはLS157で切り替え。切り替えのためのS入力は1MHzのCLK1。HでMPUからのアクセス、LでCRT表示のアクセスを行っている。サイクルスチールですね。


 74LS157はSA2~SA9を切り替えるためにあと2個ある:
スクリーンショット 2019-09-01 18.58.05


 さて、PET2001には外付けでPCG(Programable Character Generator)がHAL研究所から出ていたのだが、どのような仕組みだったか資料が見つからないので想像する。VRAMは8bitで256種類のキャラクターを表現できるが、PCGで定義したキャラクターかどうかを切り替えるためには最低1bitの属性を増やさなければならない。VRAMとして使っている6114はソケット実装なのでこれを外して*CS信号で切り替えるようにすればよさそう。CRT表示の回路から見てもそのままbit数を増やしたように見えるはず。
 MPUからのアクセスについてはVRAMのアドレス空間を倍に拡張し読み書きできるようにすればよい。LS157はソケット実装ではないのだが、同等の回路を別に作ってやればアドレス1bit分を拡張して
先程の*CSで切り替えるようにすればよい。
 残りはCGROMとPCGのキャラクタ定義に使うRAMの切り替えおよび読み書きだがこれは別途。

 MPU周りを読んでいくと特にプロセッサのサイクルを伸ばしたりウェイトをかけたりする部分が見当たらない。DRAMのリフレッシュもまた裏のサイクルで行っているように思える。



JOYPET(ジョイペット) 天然成分消臭剤ネコのフン・オシッコ臭専用 270ml
B000FQSHK4
5つ星のうち4.0
¥ 529