2012.1.12
前へ
次へ
ホームページトップへ戻る

復活!CP/M ワンボードマイコンでCP/Mを!
CP/MがTK−80互換のワンボードマイコンの上で復活します

ND80ZVとMYCPU80の上でCP/Mが走ります

[第3回]

●CP/Mマシンのキーボードとディスプレイをどうする?

「CP/Mが走る8ビットのミニコンを作ってほしい」というY様からのメールを読んで、私の頭に浮かんだイメージは、かってのPC9801に近いものでした。
ただいくらなんでもいまどきフロッピードライブは、いただけませんでしょう。
ここはSDカードあたりが妥当なところだと考えました。
SDカードのコントロールならばPICでできるはず。

フルキーボードはDOS/V用が安価です。
PS/2コネクタタイプなら昔Z−80ボードにつないで使ったことがありました。
いまどきはほとんどがUSBタイプになってしまいましたが、USB−PS/2変換コネクタを使うことで、そこはクリアできます(しかしそういうものがいつまでもあるかどうかがちょっと心配ではあります)。
Z80でUSBキーボードをコントロールするのは、不可能ではないと思いますが、相当にしんどいと思います。

問題はディスプレイです。
昔はパソコン用のキャラクタディスプレイを使っていたものですが、Windowsが普及したために、今では使われなくなってしまいました。
監視カメラ用などでまだ多少は流通しているものがあるかも知れませんが、そんなものを使うわけにはいきませんでしょう。
Windows用のディスプレイはブラウン管タイプでも周波数が高すぎてTTLの限界を超えてしまっています。
とてもTTL回路では制御できません。
液晶ディスプレイでビデオ信号入力のあるものならばなんとか使えるでしょうが、インターフェース回路を作るのが面倒です。
ここがやっぱり一番ネックになりそうです。

中日電工でも、以前は組込用Z80ボードの開発用マシンとして、PC9801型のボードを出していました。
CPUはZ80で、ケースはありませんでしたが、オリジナルのフルキーボードと、80字×25行のキャラクタディスプレイか640ドット×400ドットのカラーグラフィック表示インターフェース回路をもち、ボード上に64KBのROMと64KBのSRAMに加えて1MBのDRAMを実装し、3.5インチフロッピーディスクまで接続可能というものでした。

しかし上にも書きましたように、キャラクタディスプレイが生産中止になってしまったために、肝心の開発システムそのものが使えなくなってしまいました。
そこで、それならばいっそのことWindowsパソコンをインテリジェントターミナルとして使ってしまおう、ということで考えたのが、ホームページトップにありますZBK開発システム(開発セット)です。

そのようにすることによって、自前のフルキーボードも、ディスプレイインターフェース回路も、そしてフロッピーディスクインターフェース回路も不要になってしまい、開発システム用のメイン基板はみごとに小さいものになってしまいました。
勿論別途フルキーボードやディスプレイ装置やフロッピディスクドライブを用意する必要もなくなってしまいました。

最初はパラレルポート(プリンタポート)接続でしたが、WindowsXP以後は直接パラレルポートの制御ができなくなってしまい、またパラレルポートをもたないパソコンが増えてきたために、USB接続仕様にあらためて、現在に至っています。

MYCPU80やND80ZVでWindowsパソコンと接続する仕組みは、このZBK開発システムの方式を応用したものです。

ことほど左様に、CP/Mシステムを作る上での最大のネックは、表示をどうするか、ということにつきると思います。
実は以前にも別のお客様から「MYCPU80やND80ZVでCP/Mなどを走らせる予定はありませんか」というお問い合わせを受けたことがあります。
ですからそのときにも「今のところ考えてはいません。キーボード入力とディスプレイがネックです」というようにお答えしました。

そこで、Y様にその点をどのようにお考えなのか、メールでお尋ねしました。
そのことについての、Y様からのご返事です。

Y様は当時のCP/Mマシンについてとても詳しいことをご存知で(CP/Mに限らず、当時の業界のさまざまな事情にも精通してみえます)、私だけではなく、読者の皆様方にも大いに参考になるかと思いますので、Y様には事後承諾をいただくことにいたしまして、Y様からいただいたメールの内容をそのまま以下に引用させていただきます。

[引用ここから]
CP/Mマシンと言うと、キーボードとディスプレーがついたPC的な機種が一般的ですが、これはCP/M全盛時代の後期の姿です。

初期の姿は、CPUボードからTTYインターフェイスでテレタイプ(キーボードとプリンターが付いている)もしくはコンソール端末(キーボードとキャラクターディスプレイ)がつながっているのが一般的姿でした。

CP/M標準のロジカルデバイスには、TTY(テレタイプ)、PTP(ペーパーテープパンチャ)、UP1(ユーザーパンチャ1:追加紙テープパンチャ1号機)、UP2(ユーザーパンチャ2:追加紙テープパンチャ2号機)、などが登録されています。

つまりテレタイプと紙テープが周辺機器の現役だった時代です。

CP/Mマシンに直接キーボードとディスプレーがつながるのは初期のころは想定外でした。

ND80ZVでBASICを動かすときにターミナルモードのPCをコンソール端末として利用するのと同じように、CP/Mを動作させたときも、ターミナルモードのPCをコンソール端末として利用すれば、キーボードとディスプレーは不用になります。

これがCP/Mマシンとしてはオリジナルな姿です。
[引用ここまで]

このメールを拝見して、思わず「あっ」と声を出しそうになってしまいました。
まさに正鵠を射たお考えです。
最初にCP/MマシンのイメージとしてPC9801ライクのものを想像してしまったために、先入観に引きずられてしまいました。
先入観による思い込みが激しいのが数ある私の欠点のうちの大なるものと常日頃から自戒しているのでありますが。

「おーい。メガネが無いよ。どこにあるか知らんか?あれが無いと、ものが見えんので困る。捜すこともできん。」
「あら。あなた。メガネかけてるじゃないの」

自分でそういうシステムを作っておきながら、それが眼中に無くて、逆にY様から「それをそのまま使えばキーボードもディスプレイも不要なのではありませんか?」と指摘されてしまうなど、まったくもってお恥ずかしい限りです。

あれ?
そうすると?
WindowsパソコンをCP/Mマシンのコンソール端末として使うということにするならば…。

ワンボードマイコンでCP/Mを![第3回]
2012.1.12upload

前へ
次へ
ホームページトップへ戻る