見出し画像

8080 - 最初の8bitCPU

中学に入り最初に触れたマイコンが8080です。TK-80というマイコンボードキットが発売され、これに触るために秋葉原のBit-INNに入り浸るというのがパソコン少年の掟でした。デキルヤツは自分でマイコンボードを設計するのですが、単純なTTL回路ならいざしらず、1MHzなんて周波数で動作する回路のタイミングを操るほどの腕は無かったので、おとなしくキットでいじることにしました。

なぜか入手できたのが、TIのTMS8080を使ったTIS-80というボードでした。キットなので、やはり動作が怪しくて、さすがにオトナの助けを借りオシロとか教えてもらいました。ここにコンデンサかなと言われても、そうですかぁ。ではありました。TK-80とは微妙に違うところもそれなりにあって、雑誌に記載されているようなプログラムもそのままでは動かなかったので、紙の上でハンド逆アセンブルをして、影響のあるアドレスやI/Oを修正して、もう一度ハンドアセンブルするなんていうのをしていました。

ここで「TIの」というのが出てきた通り、この時代のCPUはご本家Intel以外からもセカンドソースと呼ばれる互換CPUが数多く出ていました。当時はインテルの供給能力に限りがあったというか信頼がなかったので、積極的に多くの半導体会社にライセンスをしていたようです。多くの互換機が出たことにより市場にも信頼され多くの機器で採用され、ソフトウェアも蓄積されて普及していったのです。

またインテル自身も、これに自信をつけて、より回路の引きやすい8080Aという改良版も投入し普及に拍車をかけました。問題は、これらの互換性に微妙なところがあり、NECでしか使えないコードを使うべきか否かは悩み深いものがありました。今のように #ifdef で囲んでおけばという時代ではなかったので。

ところで8080の時代は、まだDRAMは一般的ではなく、使う場合には自力でリフレッシュ回路を用意する必要があります。ですのでSRAMを使うことが多く、そうなると4Kとか8Kを用意するのが精一杯でした。このサイズだと高級言語を使うのは厳しくて、機械語でプログラムすることになりました。

インテルのアセンブラ記法は、今のCoreシリーズと基本的には同じで、慣れてしまったのですが、当時はどうも馴染めず、Z-80時代になるとザイログ式で書くことが多かったです。ザイログのほうが少しだけミニコンというか68な人にも優しかったです。

I/Oがメモリとは別に独立していたのは、回路を引く上では、楽チンで助かりました。でも、ソフトウェア的には大差ないなという感じです。80系はリセット後のプログラム開始アドレスが0番地なので下からROMを増やすことが多く、RAMは後ろの方に置かれました。ここが68系とは逆になるんですよね。

命令セットは独自性が高く、少ないコードで処理が書けるように工夫されているように思えました。ただハードウェアをケチることも大事だったので、68系に比べると痒いところに手が届きすぎたり届かなかったりと感じることもありました。マイコン好きが集まると80対68の宗教戦争が始まるのは、今も同じかもしれません。どちらかというと80系の中で、ご本家8080対NEC8080とか8085対Z-80とか、マイナー宗派争いのほうが盛り上がったような気もします。

8080は非常に売れたので、インテルも8085というアップグレード版を出してきましたし、ザイログは上位互換のZ-80を出してきました。パソコンに使われたのはこれらの時代になってからなので、8080時代は、そんなにいろいろは覚えていません。7セグLEDでは表現できることに限りがありました。

しかしながら、TK-80に追加の基板とキーボードをセットにしたTK-80BSが、御三家パソコンしか無かった時代に、日本最初のパソコンとしてPC8001が出るまでの間に、大きな影響を与えたことは間違いありません。御三家パソコンがお高めで、今ひとつ普及していなかったこともあり、パソコン雑誌に出てくるプログラムはBSばかりだった記憶があります。

Intel 8080

Intel 8080 英語のほうがよく書かれています。

MCS-80 このURLが懐かしすぎる。

TK-80

TK-80BS

ヘッダ写真は https://ja.wikipedia.org/wiki/TK-80#/media/%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB:TK-80.jpg を使わせていただきました。

2022.10.13 追記
TK-80BSなどについては以下に書きました。


この記事が気に入ったらサポートをしてみませんか?