時代の幕開け

 (2011年1月23日 補足が入りました)  次へ


1978年の春・・・。
大阪日本橋の電気店街を歩いていたときのことです。何気なくショーウィンドーを覗くと、なにやら大きな箱に電子部品がぎっしりと並んでいる組み立てキットを見つけました。何のキットだろうと見ると小さいながらもコンピューターの組み立てキットだと書かれていました。

当時の常識では、コンピュータというのは大学の研究室や大きな会社の電算室にある特別な機械で、一般のひとが見たり触れたりできるものではありませんでした。で、どうせオモチャまがいのものだろうと思い通り過ぎようとしましたが、デジタル系のモノが大好きだった筆者は、初めて目にするCPUや電子部品からどうしても目が離せませんでした。これが日本で最初にブームを起こしたコンピュータの組み立てキット、TK-80でした。
たかだか30センチ四方にも満たない小さな組み立てキットが、やがてパソコンとなり、そして現代の最先端マシンにまで進化する、その第一歩だったとは思ってもいませんでした。





【マイコン・1978年5月号】

上の写真は今から33年前、初めて購入したパソコン雑誌です。当時はまだパソコン(パーソナルコンピューター)という言葉がなく、マイコン(マイクロコンピューター)と呼んでいました。





TK-80とTK-80BSの広告(月刊マイコン1978年5月号より)

その翌月に初めて購入した初代パソコン(マイコン) NEC製 TK-80EとTK-80BS。CPUは8080Aです。
 基板むき出しにおもちゃのようなキーボ-ド。そして、外部電源のうえになんと家庭用のTVに写すという仕様。(専用のモニタ出力も装備されていたが白黒です)当然ハードディクもフロッピーも無い。メモリーに関しては、な、なんと、標準で5KByte!!
 『え~? 桁まちがってない? おっちゃん。』

まちがってません。0.005MByteです。
そして値段がすごい、両方あわせて19万5000円。プラス、3万9800円の電源ユニットを別に買わなければならないという商品!
 『お~い、ケンカ売ってるよ』
でも筆者は買いました。うれしくて夜も寝られませんでした。
 『はずかしいなぁ。 も~。』
 TK-80単体でもコンピューターとしての機能がありましたが、使える言語がマシン語のみでした。  マシン語はまったく理解不能でしたので、BASIC言語が使えるTK-80BSとペアーで購入するのが普通でした。
 『言語って? いつもパソコン使っているけど・・・。言葉なんて何にも知らないよ?』

 いまのパソコンは、ワープロとして使ったりインターネットをするなど、付属のアプリケーション(プログラム)を動かして、いろいろな使い方をしているので、よほどのことがない限りプログラム言語なんて知る必要はありません。しかし、当時のパソコンにはアプリケーションなどは無かったのです。アプリケーションを自分で作るか、例題を見て自分で入力するのがおもな仕事でした。
 『いまでいう、自作パソコンのソフト版ってとこ?』

 まぁそうです。TK-80なんかはキット売りでしたから、パソコンのハードとソフトまで作らなければいけない状態です。ケースにも入っていないのは、パソコンの構造から勉強するためにそうなっていました。このNECの製品も同様に、TKー80の下にBSボードを重ねてそこから電源とテレビとキーボードがつながっているだけです・・・・・・・。
 『それだけ?』
それだけって・・・。そう、それだけの丸裸・・・。機械むき出しです。
仕様は以下のとおり。

 TK-80:
CPU:8080A(データ8ビット アドレス16ビット)
RAM:標準で 512バイト(拡張して1Kバイト)
25キー:テンキーのように見えますが、16進キーボードと呼びます。
基本命令実行時間:2.5μS※

 ※1μSは100万分の1秒ですので、約40万分の1秒でひとつの命令を処理してたんですね。でも、現在はナノ秒の世界です(1nS=10億分の1秒)そして、DRAMの設計分野ではピコ秒の世界に突入しています。(1pS=1兆分の1秒)

 『お~い、計算あってるの? もう、わけわからんよ。』

TK-80にはμPD2101かμPD5101(256×4bitのS-RAM)が標準で4つ、最大8個まで搭載可能です。
クロック周波数は 2.048MHz 電源は+5V1.1A、±12V0.15A となっています。

TK-80BS:
RAM:5Kバイト(12Kバイトまで拡張可能)
ROM:モニタ4K/BASIC 4Kバイト
表示数:横32文字 縦16文字をTVに映すことができた。
 『〝解像度〟っていう言葉も無いみたいねぇ。』






2011年1月23日 補足

2010年11月に「μCOMシリーズ 総合ユーザーズガイド 1978」という資料を見つけました。

中にはμCOMシリーズで使用されているデバイス(IC類)の規格がぎっしり書かれています。そして、TK-80の仕様書が・・・。
TK-80は正式名称「μCOM-80 トレーニングキット」と呼ぶみたいです。
さらには4Bit システムのEVAKIT-42,43の仕様書も書かれていました。



TK-80のシステムブロック図とTK-80の写真です
(μCOMシリーズ 総合ユーザーズガイド 1978より)





エヴァキット? どこかで聴いたことがあるような?
中身は ぬあんとμPD555という4BitCPUっすから。
(μCOMシリーズ 総合ユーザーズガイド 1978より)

目を疑ったのは、クロックの周波数です。EVAKIT-42が 100~200KHz、EVAKIT-43でも 290~440KHzとなっています。
200KHzということは5μSです・・・ね。今のCPUから見ると、動いているの? と思わず突っ込みそうな速度ですね。"MHz" ではなく "KHz" ですから・・・。

命令サイクルはさらに遅くなり、サイクル10μSと書かれています。内臓RAMは96×4Bitでワーキングレジスタとフラグにも使用されています。
そしてプログラム容量が2000ワードとなっています。2000命令で一杯になるということでしょうね。

このEVAKITのことをもうすこし詳しく調べてみました。それによりますと EVAKIT-42はμCOM42というシステムのハードウエア・サポート・ボードということになっています。μCOM42というのはμPD548Cという4ビットCPUを使用しているそうです。ただ、このCPUは内部にマスクROMを持っているためにデバッグができません。今の時代ですとFlashタイプのPICのように内臓のプログラムエリアをクリアできますので、デバッグが必要なときは電気的にプログラムを消して再書き込みができますが、μPD548Cに使用されているマスクROMは消去ができません。そのため、EVAKIT上にはμPD555Dという外部ROMタイプのμPD548Cのハードウエアシミュレーションチップが載っており、プログラムの検証とハードウエアのデバッグをするシステムです。そして完成されたプログラムは最終的にμCOM42のμPD548CのマスクROMに書き込んで量産化するようです。

 EVAKIT-43は同じように、μCOM43/44/45用のハードウエア・サポート・ボードで、それらに使用されているCPU、μPD546の外部ROM版であるμPD556を使用した、システム全体のデバッグを可能にするボードだと書かれています。



次はTK-80と同じCPUを使用したPDA-80です。当時はすごかったんでしょうね・・・。


(μCOMシリーズ 総合ユーザーズガイド 1978より)

PDA-80は、先に書きましたEVAKITに使用される4BitCPUのプログラムをアセンブルして電気的に消去できる、μPD454D、μPD458Dに書き込めるプログラマが標準装備されているそうです。
4BitCPUのプログラムを8BitCPUでアセンブルするのでクロスアセンブラが可能な汎用コンピュータとしての位置づけになっているようです。

速度が遅いのとPROMの書き込みはできませんが、FlashPICのシミュレーションは同じコトをネット上でやっていますネ。33年掛かりましたが・・・(笑)

2011年1月23日 補足はここまで・・・





そのほかのメーカーのマイコン(月刊マイコン 1978年5月号より)

東芝【EX-80】 DENSHI BLOCK MFS
【INPEC-85】

サウスウェスト(?)
【COMKIT8060】(拡大写真あり)
ロジック・システムズ・インターナショナル
【MP-80】(拡大写真あり)

そのほかのメーカーも続々とマイコンを世に送り出してきました。
 値段を下げた商品はやはりそれなりの機能になっているとこは、現代のパソコン市場とおなじようなものです。
 一風変っていたのはINPEC-85で、CPUが当時としてはまだ珍しい8085というものを使用していました。しかし、一世風靡したのはやはりNECのTK-80/BSでした。

『(MP-80のRAM256バイトって・・・。何ができるの?』
 考えればそれなりのものができましたよ。








当時の夢のコンピューター【SORD M220】
(月刊マイコン 1978年5月号より)

『ぬわ~んとっ! 139万円!!』
画像では見えにくいので、書き出してみますと。

CPU:Z-80
クロックは書いてませんがおそらく4MHz。ちなみに、うちの会社では落ちていても誰も拾いませんので、よくスリッパの裏に刺さってます。
 『きゃはははは・・・。』

メモリー:32KByte
 『0.032Mbyte? でもTK-80BSの4.5倍。 すごい!』

ミニフロッピーディスクドライブ1台(5inchです)
 『ミニって、どこがミニなんよ? あぁ・・・8インチよりミニか・・・』
8インチフロッピーを知らない方にお教えします。はっきりいいましょう。団扇(うちわ)です。
 『あはははは・・・。』

キーボード・本体・CRT一体型
CRTとはモニタのことです。ですので、写真のようにキーボードと本体とモニタが一体型になっています。
 『う~ん。邪魔そう』

CRT:80文字×24
TK-80BSは32文字×16文字でした。当然モノクロです

プリンター:40桁ミニドット放電式/秒間2行印字
 『なぬ~? 10行なら5秒も掛かるの? それに放電式って?インクは?』
放電式とは銀紙のような専用紙に放電させて黒く焦がして印字する方式です。この後、数年後にTK-80Sに取り付けましたが、これがまた見にくいんです。光の反射によっては見えないんです。ちなみに紙の幅はレジとほぼ同じです。
 『レジ? あんな細いの? 何が書けるの?』
いろいろ書けます。見にくいけど・・・。

端末用・モデム用シリアルポート
当時、シリアルポートが付いてるのはすごいことでした。
モデムの速度は書いてありませんが、おそらく300baud(ボー)=2400bpsのはずです。ADSLが遅い!と嘆いておられる方に朗報。当時の5000倍の速度で接続をしてるんですよ。すごいじゃないですか・・・(失礼)
 『う~ん。さすが、夢のコンピュータ・・・。ってどこがやねん。

オーディオカセット用シリアルポート
 『オーディオカセット用シリアルポート? 何それ?』
別にオーディオ信号を読み込んで、WAVEファイルを作るわけではないです。当時はフロッピーディスクなんて高値の華で超お金持ちでないと持てませんでした。そこでプログラムやデータを音に変換して、シリアルポートから出してそれをカセットデッキに録音していたんです。もちろん記録デバイスはカセットテープです。
 『すっげ~世界!』
パソコンに戻すときはその逆の動作をさせます。ところが!これがまたエラーが多くて、データが大きいほど、まともに入りませんでした。何十分も掛けて、今でいうインストールをしていて、あと少しというところで「ピー」とエラー音が出て、はい、おしまい。の状態でした。よくカセットテープを投げつけていました。

16Kバイト BASIC
TK-80BSは4Kバイト BASICでした。










(月刊マイコン 1978年5月号より)

当時の広告を見てください。今とぜんぜん違うのがおわかりでしょうか。
そう、アプリケーションの広告がまったくないんです。あるのはパーツとかボードとかハード系のものばかりです。しかし、RAMの高いこと! 目をこらしてみてください。Kバイトですから・・・。
 『ん~。電源が11,500円で売っているやんか。3万9800円で買ったんやろ?』
 くそぉ~。高いやつを買わされてしまったか!
 『へへっ。』
 ちなみにRAMモジュールというのはRAMボードのことです。


 当時はアプリケーションと呼ばれるできあいのプログラムはほとんど売っていませんでした。今のようにインターネットをするわけでもなし、会社の仕事を持ち帰って、休みの日にせっせと打ち込むわけでもありません。そうです。ひたすらプログラムを作るんです。

 雑誌の記事はマシン語BASIC言語でかかれたプログラムやマイコンキットの作り方ばかりでした。
 このようにマイコンは自前で何でも作るのが当然でそれが醍醐味でした。もちろん、筆者もその中の一人で朝から晩までキーボードに向かっていました。
『あははは・・・。今といっしょ。』

 マシン語というのは今では奥に消えて見えなくなっていますが、ちゃんと存在していますし、あなたのパソコンも最終的にはマシン語で動いてます。ただ、このマシン語、メチャメチャわけわからないんです。こんなわけのわからないものにはフタをしてしまえ。というのが今のパソコンですね。当時はむき出しでした。
『ふ~ん。』

 1978年5月号の雑誌に載っていた最新CPUの記事を読んでみると「世界最高速の16ビットプロセッサ開発」というのがありました。NEC社のμCOM(ミューコム)1600というチップで、レジスタ間の加算演算の時間が0.6μSだと書かれています。TK-80が2.5μSですので、これより約4倍速いということになりますので、まぁ。すごかったんでしょうね。何かいまいちピンときませんが・・・。
 『なにが? あたしなんか何のことか、全ぇ~ん部わかんないよ。』
 いや、TK-80の4倍ほどで記事になるのかなぁって思ったんです。
 『それぐらいのレベルだったんでしょ。』

 いまなら、0.6μS(=0.0000006秒)といえば、どれくらいの速度で、どれくらいの仕事ができるか、パッとイメージが付くのですが、BASICに明け暮れている当時には、この演算速度がどれほど重要で、それを速めるのにどれほど苦労するのか、まだわかっていない悲しさです。
 『あたしなんか、理解する気もないよ。』

 マイコンを買って1年間はBASIC言語でプログラムを組んでいて満足していました。ところが、読んでいる雑誌にたびたび出てくるマシン語というわけのわからない呪文が気になり出してきたんです。でも16進数2進数の意味が理解できないうちは、いくら記事を読んでみてもまったくわけがわりませんでした。

 ”コンピュータなるものは2進数で動いている”これは何となくわかります。そこで、2進数で表現されていると理解しにくいので、16進数に直してみます。するとわけはわかからないが何となく見やすくなります。この16進数でコンピュータは動いているようだと、そこまでは理解ができてました。
『あたしは理解できん。』
 ある日、ワークRAMをのぞいて見ると。
『のぞく? 覗き趣味があんの?』
 ちがいます。RAMをのぞくというのは16進ダンプのことです。
『もっと、わからんよ。』
 すみません・・・。前にもいいましたが、当時のパソコンはプログラムをするのが当たり前で、バグ(プログラムの不具合)取りのためにメモリーの中を見せてくれる、モニタープログラムというのがありました。これはパソコンに付属していました。

 そのプログラムでメモリーの中をのぞいていると、BASICプログラムが16進数で並んでいることに気が付きました。BASICコンパイラでもないN-BASICの中間言語を”これがマシン語か・・・。”などと、勝手に誤解をしていました・・・・・。非常になさけない話です。
『ほんま、あんたはなさけない。』
 うるさい!



メモリーダンプの例

 BASIC言語のPRINT文の部分を16進ダンプすると、表示する文字データ以外に何個かの16進が並んでいました。そこで、別のアドレスのRAM上に同じデータを並べ、モニタープログラムで直接そのアドレスへジャンプさせてみて、そのように表示するか実行してみることにしました。もしそうなら、この16進の羅列がPRINTというマシン語の命令になります。
 これが成功すれば画期的な発見です。
『ほんまかいな?』
ほんとうです。いっきにマシン語制覇ですから・・・。