PCG6500の回路を調べる ROM/RAM の続き。
PCG6500のデータ書き込みはUserport経由のVIA PA7-PA0で行う。CGROM/PCG切り替えはCA2、サウンドはCB2なのでPCG6500の制御は結局VIAですべてやっていることになる。
W65C22のデータシートのほうがみやすいですかね。
PCG6500のデータ書き込みについてはマニュアルと日本語による解説があった。
PET2001のVIA 6522のアドレスは$E840から16バイト。
書き込みは$E843(DDRA)に$FFを書き込み、PA7-0を出力に設定し、以下の手順。$E84FはPA7-0のポートに対応。
$E84F <- 1100_D7D6D5D4
$E84F <- 0000_D7D6D5D4
$E84F <- 1000_D3D2D1D0
$E84F <- 0000_D3D2D1D0
$E84F <- 0100_A8A7A6A5
$E84F <- 0000_A8A7A6A5
$E84F <- 001_A4A3A2A1A0
$E84F <- 000_A4A3A2A1A0
D7~D0:ドットのデータ
A2~A0: キャラクタのライン位置
A8~A3: キャラクタの番号0~63 これがCGROMの64~127に対応する。
・PA7-PA6デコード
UserportからのPA7,PA6はIC2:74LS42の入力A1,A0に接続されている。A2,A3は"L"。デコード出力はインバータを経由して3つの4bit D-FF 74LS75のenableに接続。IC4~IC6の入力はPA3~PA0にパラ接続。*1がIC4でA6,A5,A6,A7、*2がIC5でD3~D0、*3がIC6でD7~D4を保持する。
・SRAMとの接続
IC5,IC6の出力D7~D0はSRAMのD7~D0inに接続。これが書き込みデータ。
LS157によるセレクタIC9,IC10,IC11の0側入力をSA8~SA0とすると、以下のように接続。
SA8,7,6,5 = IC4出力
SA4,3,2,1,0 = PA4,3,2,1,0
ということでケーブルの断線は改造のためといった意図的なものではなさそうなので元通りにはんだ付けした。しかしこの接続、信号線だけでGNDがないのよね。
PET2001のUserportに取り付けるときはこちら側を下にする。キーがあるので逆にはならないけど。
キーは潰れている事がある!!
CB2については単なるLM386によるアンプなので省略。
つづく









![薔薇の名前 特別版 [DVD]](https://m.media-amazon.com/images/I/51N2C853MFL._SL160_.jpg)



























































