SBC1802
またもや 電脳伝説@vintagechips さんのボード、SBC1802です。
しばらく前に基板入手していたのですが、SuperHやらH8やらやっていて後回しになっていました。部品はほぼ手持ちでそろったので一気に組み上げたところです。
27256は十分持っているので焼いてもよかったのですが、とりあえず手持ちのROMエミュレータを載せています。
いつものように搭載部品を見ていきます。
個人的に製作してきたものの紹介です。
電子的なものがほとんどですが、そうでないものも出来るだけ出していきたいと思っています。
回路図、ソースコードなどは出来ればすべて載せたいのですが、以下の理由で難しいものが多いです。
残っていないのではなく、そもそも書かないことが多かったためです。
もちろん仕事ならば書きますが。
特に古いものでは雑誌など掲載のものをベースにしているものがあり、オリジナルと分離できないものは公開できません。
5インチや8インチのフロッピーだったり、PC-9801フォーマットだったりして読むのが難しいものがあります。
またもや 電脳伝説@vintagechips さんのボード、SBC1802です。
しばらく前に基板入手していたのですが、SuperHやらH8やらやっていて後回しになっていました。部品はほぼ手持ちでそろったので一気に組み上げたところです。
27256は十分持っているので焼いてもよかったのですが、とりあえず手持ちのROMエミュレータを載せています。
いつものように搭載部品を見ていきます。
以前お見せしたSH7045ボードを動かしてみたくなってこんなボードを作ってみました。
あのボードは電源さえつなげば動かせるはずなのですが、今さらRS-232よりUSBシリアルのほうが便利、EMILY Boardに接続してみたい、ちょっとした実験などするのにユニバーサルエリアが欲しい、といった理由です。
電源はEMILY Boardから供給しますが、スタンドアローンで動かす場合は右上のコネクタからも+5Vを供給できます。
シリアルポートは写真では見にくいですが左下のところに6ピンのコネクタ(TTL-232R-5V用)を設けてあります。
はせりん@haserin09さんよりはせりん工房の基板一式を頂きました。その中からすぐに部品の揃ったZ80180-Z80 ADAPTER for SBCZ80を組み立ててみました。
これは電脳伝説@vintagechipsさんのSBCZ80にZ180を搭載するためのアダプタです。
前回まででIN
/OUT
命令で8251にアクセスできるようになりました。これで実用上困ることはありませんが、F8にはさらにポートアドレスが0,1,4~15の場合にのみ使える短縮命令INS
/OUTS
があります。
汎用ロジックによるI/Oポートが動いたので、次は本命の8251を接続してみます。
回路はシンプルです。
SN74LS138NはAB2~AB7をデコードして8251のCSを作成しています。
8251の前にまずは単純なポートを試してみることにします。
テスト用のボード、ブレッドボードで十分な気がしますがどうも好きになれないので作ってしまいました。
機能は単純です。
IORに対しては下部ジャンパで設定した値をSN74HC541N経由でデータバスに送り込みます。アドレスをデコードしていないのでアドレスは任意です。
IOWに対してはアドレスの下位4ビットとデータの上位4ビットをSN74ALS574NでラッチしてLEDを点灯します。当初データのみの予定でしたがアドレスも見られたほうが便利だろうと変更しました。
これでIN
/OUT
命令実行時の動作と波形を見てみます。ロジックプローブの信号の対応は以下のとおりです。
前回メモリアクセスについて書いたので今回は本題のI/Oアクセスについてです。
最初はIN
命令です。
これまで不明だったリセット解除直後のX'0000'番地からのI/Oリード、X'0000'以外の値を返したら何が起きるか?ということでその3で予告したIORサイクルでデータバスに値を送り込む回路を追加しました。
空だったソケットにはSN74LS541Nを載せました。
下に並ぶショートピンの群れは値の設定用、8ビットのところで区切りがわかるように空けておきます。写真の状態でX'F010'を設定しています。
右上端のショートピンは74LS139でデコードしたIORを74LS541に供給するためのもの、抜けば"H"に固定されるので以前と同じ動作になります。