復活!CP/M ワンボードマイコンでCP/Mを!
CP/MがTK−80互換のワンボードマイコンの上で復活します
ND80ZVとMYCPU80の上でCP/Mが走ります!
[第273回]
●IMSAI8080
前回は現在開発作業中の8ビットミニコンE−80(仮称)のフロントパネルの写真をお見せしました。
おそらく古参のベテランの方でしたら、これはIMSAI8080を意識したデザインであることが一目でおわかりになったことと思います。
[第271回]でご紹介いたしましたようにY様ご自身がその昔の学生時代にIMSAI8080を入手され、それに慣れ親しんだというご経験をお持ちで、そのことが今回のプロジェクトのベースになっています。
実際にY様と仕様を煮詰めていくなかで、このフロントパネルの機能についてはY様から、IMSAI8080と同等の操作ができるように、との強い要望がありました。
そのように要望されましても、私自身はIMSAI8080を直接さわったことはありません。
Y様からはメールでその操作について、詳しい説明のメールをいただきました。
それによりますと、IMSAI8080のフロントパネルの仕様はかなり特徴的なもののようです。
Y様には申し訳ないことなのですが、ただメールで説明していただいただけでは、今ひとつよくわからないところがありまして、インターネットを探りました結果、なんとIMSAI8080のMANUALをダウンロードすることができました。
こうなりますとインターネットというのはもう宝の山そのものです。
しかしこれはまたものすごいマニュアルです。
なんと総ページ数は621ページもあります!
もちろん全て英文です。
これを読みますとIMSAI8080が組立キットとして売られていたことがわかります。
組立て後の動作テストについての説明です。
簡単な動作プログラム例とその入力の仕方についての説明が書かれています。
なんと巻末には回路図までついていました!
これはフロントパネル部分の回路図です。
このMANUALを読みまして、IMSAI8080のフロントパネルの仕様は理解できましたが、しかしこれはなかなかにホネな仕様です。
今どきでしたらPICなどを使うところだと思ってそのようにお伝えしたのですが、Y様からは
それじゃあ面白くない、ぜひとも昔のIMSAI8080のようにTTLロジックでそれを実現したい
というご返事が返ってきました。
むむ。
そういうことならばやむを得ません。
幸いここにIMSAI8080の回路図も入手できたことですから、これを参考にすればなんとかなるでありましょう。
っていいましても、Z80と8080とではソフトウェアの互換性はありますけれど、ハードはかなり違うのですよねえ。
それにこれはまたなかなかにトリッキーな回路になっています。
前回のフロントパネルの写真をご覧になって、皆様お気付きになられましたでしょうか?
普通このタイプの、トグルスイッチパチパチのプログラム入力でしたら、アドレススイッチが16個でデータスイッチが8個、合計24個の入力スイッチが必要なはずです。
しかしIMSAI8080の場合入力スイッチは合計16個しかありません(もちろんそのほかにADDRESS SET&READとかDATA WRITEなどの役目をするスイッチはあります)。
IMSAI8080をモデルにしたE−80(仮称)のフロントパネルにも当然入力スイッチは16個しかありません。
その16個のスイッチで16ビットのアドレスの設定と8ビットのデータの設定を兼用しているのです。
さらにユーザープログラムの実行中は8ビットのデータ入力スイッチも兼用しています。
どうするとそんな器用なことができるのでしょう?
ああ。
あれだ。
きっとアドレスラッチを使っているのだな。
ところが回路図を見ましてもそれらしきものはどこにも使われていないのですよねえ。
おまけに、データの読み出し、書き込み時にはアドレスをインクリメント(+1)する機能もあるのですが、そうなると当然プリセッタブルカウンタは必須かと思われるのですけれど、それらしきものも見当たりません。
さあ。
プリセッタブルカウンタもアドレスラッチもなくて、どうやって16個のスイッチでアドレスを設定し、データを読み出し、あるいは書き込み、そしてアドレスをインクリメントすることができるのでありましょうか。
そこには思いもよらぬ、なんとも巧妙な方法が使われておりました。
ええ。
まるで手品のようでありますが、その仕組みが理解できましたら、きっと「なるほど!」あるいは「さすが!」と感嘆の声を上げてしまうことでありましょう。
その詳細につきましては次回。乞うご期待、であります。
ワンボードマイコンでCP/Mを![第273回]
2012.12.24upload
前へ
次へ
ホームページトップへ戻る