Z80

秋葉原 (2003年6月28日)

とりあえず, 「コンピュータはなぜ」に記載されいる部品のリスト

部品名数量説明
Z80CPU18ビットCPU
TC55171メモリ
Z80PIO1I/O (8ビットX 2ポートパラレルI/O)
7436743ステートバスバッファ
74042インバータ
クロックジェネレータ12.5MHz

をもって秋葉原に出かけた. 僕は秋葉系オタクではない. 秋葉原と言っても, どこにどんな店があるかということは全然知らない. とりあえず入手が困難そうなZ80CPUが置いてある店を探すことにした. 最初に入った店のおじさんは, なかなか親切な人で, 「CPUはあるけどメモリが無い. メモリを探してからまたおいで」 ということであった.

秋葉原というとパーツ屋がたくさんあるものだと思っていたのであるが, 現在の秋葉原にはパーツ屋の数など, ごく小数であった. それでも, さんざん歩き回ったり, トランジスタ技術 (通称「トラ技」) というこの手の専門雑誌の広告ページを参考にして, 僕の目指すべき店は 東京ラジオデパート 内にある昔ながらの渋いパーツ屋たち, あるいは, 若松通商, あるいは, 秋月電子通商 ということが分かった.

光南電気 (2003年6月28,29日)

それでも, そのメモリはなかなか見付からなくって, さんざん歩き回ってあげくにたどりついたのが, 東京ラジオデパート1Fにある 光南電気であった. そこのおじさんが, 上の表の主要な部品(の互換品)をほとんど全て揃えてくれたのだ! 以下は光南電気のおじさんが, わざわざ倉庫まで探しに行ってそろえてくれたICたちである. おじさん, ありがとう!

部品名数量説明価格 (円)
TMPZ84C00AP-818ビットZ80CPU550
D446C-31メモリ390
TMPZ84C20AP-81I/O (8ビットX 2ポートパラレルI/O)650
7436743ステートバスバッファ360 (=90X4)
74042インバータ80 (=40X2)

それで, 残る部品は2.5MHzのクロックジェネレータ(3端子)のみとなった. しかし, 秋葉原のパーツ屋たちもそろそろ閉店の時間になった. 浜松に帰るかどうか悩んだ挙句, 東京に一泊することにした. 宿は新橋にあるカプセルホテルだ.

日が明けて6月30日, 2.5MHzのクロックジェネレータ(3端子)を求めて秋葉原を歩き回った. けっこう冷たくあしらわれながらも, 店を回った. しかし, どこに行ってもなかった. たくさん買い込んだ電子部品と工具を両手に, 喜びと落胆とを半分ずつ心に, 浜松に持ち帰ってきた.

クロックジェネレータはどこに? (2003年6月30日)

ネットで検索して分かったことは以下の通りである. 昔, 僕が少年だった頃, 浜松に「マルツ電波」というパーツ屋があった. 駅の周辺のどこかにあった. Webで検索したら, 郊外に移転して存在していた. しかも, 割と自宅から近い場所に.

そこで8MHzの水晶発振器 (TOYOCOM, TCO-707F, 8.000MHz)を 買った. (1個1000円もした. これがZ80マイコンの電子部品の中で 一番高価な部品となった. ) しかし, それをどのように使うかということが分からなかったが, このページ を見ると割と簡単なので安心した.

3端子レギュレータ (2003年7月1日)

「コンピュータはなぜ」の回路図では, スイッチング電源の回路が省略されている. この部分も素人にとって悩ましいところであった.

PICマイコンボードを作ったときに, スイッチング電源の回路があったので, それと同じものを作ることにした. そこでは, 78M05と呼ばれる部品が使われいる. 78M05は3端子レギュレータという IC で, いいかげんな入力電圧を入力として, 一定の電圧を常に出力する. 78M05の05は, その一定の電圧= +5V を意味し, M は 500mA までの電流を流すことが できることを意味する. 同様に, 7805は 1A, 78L05 は 100mA までの電流を流すことができる (参考文献).

マルツ電波には, 7805と78L05しかなかったので, しかたなく7805を買ってきた.

配線をハンダ付けの日々 (2003年7月2,3,4日)

部品がそろったところで, マイコンの製作作業を開始した. 製作といって上述した部品集めに比べればもたいしたことはない. しかし, 時間は3晩もかかった. 仕事が終って自宅に帰るとすぐにハンダごてを 握り, リード線をハンダ付けという作業をひたすら繰り返した. これほど何かに熱中したのは久しぶりかも知れない.

配線が完了後, テスターを使って配線が正しいことを入念にチェックした. 配線を間違えてICが壊れてしまったら, これまでの苦労は水の泡だ.

電源を入れてプログラムを入力する. アドレスと機械語命令を, それぞれ, 表現する2つのディップ・スイッチを使って, プログラムをメモリに書きこみ. リセット・スィッチを押す. なんと素敵なプログラムの書き込み方法なんだろう. 2〜3回失敗を繰り返した後に見事にプログラム通りの動きをした!

僕のように, こんなど素人がマイコンを, 初挑戦で, しかもこれほど短期間で, 完成してしまったことは我ながら驚きである.

完成したZ80マイコン(クリックで拡大[238kB]) 完成したZ80マイコン[裏](クリックで拡大[253kB])

ちょっと気になる事

電源を入れてしばらくして, 3端子レギュレータに触れてみるとかなりの高温であった. 電源部分はいいかげんな回路なので心配である. とりあえず, 放熱器を3端子レギュレータに取付けた.

Z80マシン語-ニーモニック

「プログラムはなぜ〜」に載っているマシン語プログラムは, 8個ディップスィッチのパターン通りに8個のLEDを点灯させるためのものである. このプログラムの実行結果があまりに単純なために, Z80CPUが本当に処理を実行していることを疑う人もいるかも知れない. そういった人のためには, 「プログラムはなぜ〜」に載っているプログラムをちょっと変更してみることを薦める.

以下のページ

に, Z80のマシン語-ニーモニックの対照表が掲載されているので, それを参考にプログラムを作り変えてみればよろしい.

感謝

改めて「コンピュータはなぜ動くのか」の著者の矢沢久雄氏に, 僕をここまで駆り立ててくれる感動を与えてくれたたことに感謝したい. ど素人のために主要な部品をそろえてくれた光南電気のおじさんにも感謝したい.
マイコンのページへ戻る
Email: ando.kazutoshi[at]shizuoka.ac.jp