発売から40年経っても手に入るCPU Z80


ZilogのZ80は1970年代中頃に発売されたCPUですが、約40年経った現在でもほぼ当時の形で手に入ります。偶然見つけて記念にと購入しましたが、せっかくなのでCP/Mマシンを作ることにしました。

夏の暑さ真っ盛りの8月初めに大阪・日本橋(でんでんタウン)にあるシリコンハウスへ買い物に行ったら、Z80互換で在庫限りというポップを付けた東芝製TMPZ84C00というDIP-40の大きなICが売られていました。見つけた時は、Z80互換と言っても型番が非常に似ているので秋月電子で販売しているZ80ボードのCPUみたいなPIOやタイマーが内蔵されたものだろうと思いました。

しかしスマホでデータシートを探してみると、TMPZ84C00はPIOのたぐいは一切ない教科書にあるような完全にCPUの部分のみでした。さらにピン配列までZ80と同じです。

TMPZ84C00それでなんだか懐かしくなり、「在庫限り」にもつられて安かったので記念に2つ買って帰りました。

Z80とは

一応Z80が何か説明すると、Z80は8bit CPUのIntel 8080を改良したZilogの8bit CPUです。ピン配列にi8080との互換性はありませんでしたが、マシン語レベルではi8080の上位互換で、Z80にはいくつかの便利な命令が追加されていました。またDRAMの使用を前提としたリフレッシュ機能が組み込まれていために、(当時の感覚で)大容量のRAMを搭載しやすくなっていました。

その後Intelもi8080を改良したi8085を出しましたが、1970年代後半から16bitパソコンのIBM PCやNECのPC-98シリーズが普及する80年代中頃までパソコンのCPUといえばZ80でした。

21世紀のZ80

TMPZ84C00の資料をググると、東芝製TMPZ84C00のセカンドソース1であるZilog Z84C00は現在でも普通に販売されていました2。購入したTMPZ84C00のクロック入力は最大6MHzでしたが、Z84C00には最大20MHzのより高速なクロックに対応する製品もあることを見つけました。

Z84C00

また1980年代中頃に日立がZ80アーキテクチャを拡張して乗算命令などの追加とMMUやUARTなどを内蔵したCPU HD64180を開発しました3。これも製造されていませんが、ほぼ同じ4ものをZilogがZ180シリーズとして現在も製造しています。

このZ180シリーズには何種類か有りますが、最新のものはZ8S180と低電圧対応のZ8L180です。昨年Legacy8080というコンピュータが発売されましたが、そのLegacy8080に使われているCPUがZ8S180です。

Z8S180

発売から40年も経とうというのに未だに販売されているZ80は、もう生きた化石と言っても良いかもしれません。

CP/Mマシンを作ろう

記念にと購入したTMPZ84C00ですが、ただ見ているのではもったいないので、1980年代前半の気分5CP/Mマシンを作ることにしました。さらに可能ならば、最近公開されたFUZIXを移植できたら面白いかな。

CP/Mマシン製作にあたって一番の問題点は、CP/M自体を手に入れられるかです。昔買ったディスクは捨ててしまったし、新規にCP/Mを購入することもできなさそうです。しかし調べてみると現在では逆アセンブルしたCP/MのソースコードがThe Unofficial CP/M Web site公開されています6

参照

  1. Z80はZilogがオリジナルなのに、現在はZ80のセカンドソーサーになっているというのはなんとも皮肉。さらにセカンドソーサーと言っても、オリジナルの方は既に製造中止とは。

  2. 国内でZ84C00を扱っているところは見つかりませんでしたが、米国の部品通販会社Mouserから購入可能です。

  3. 現在データシートはPDFファイルでダウンロードするのが当たり前ですが、30年位前はもちろん紙に印刷されてものでした。それを商売にならない学生にそれも無料で送ってくれたのは、バブルな世代だったからでしょうか。まだ当時の資料を持っていますが、その1つがHD64180のマニュアルです。HD64180-manual

  4. Z180はHD68180のセカンドソースみたいなものですが、内蔵IOのアドレスがオリジナルのHD68180とは異なっています。そのことを見落としていて、後にハマることとなる。

  5. もっとも自分が制作したのは1990年代中頃で、既にi486でFreeBSDを普通に使える時代でした。Linuxも割と普及しだした頃かな。

  6. 非公式と言いながらLineoというCP/Mの所有者から配布が許可されている不思議なサイト。Thank you, Tim Olmstead. Tim Olmstead Memorial Page


「発売から40年経っても手に入るCPU Z80」への12件のフィードバック

  1. こんにちは♪
    KiCad_jpさんのtweetから、こちらへ来ました。

    何とZ80がまだ売っているとは!かなり驚きました。
    私も未だにZ80ファミリの石を保守用に持っています。
    個人的には6800系の方が扱いやすくて好きでしたが…
    懐かしいです。

    1. お世話になっています。

      今も保守用に持っているとはすごいです。私は引っ越したりでみんな処分してしまったかな。それで部品屋さんでZ80を見つけた時には懐かしくなって、それ以来ノスタルジーに浸ってCP/Mをまた動かそうとしています。

      私自身は68系を使ったことがないのですが、当時から80系より使いやすいという意見をよく聞きました。やっぱりそうなんですね。

      ブログは完全放置でしたが、いつも多くの方から教えてもらってばかりなのでKiCadをきっかけに多少はアウトプットできればと再開しました。まだまだ拙い内容ですが、よろしくお願いします。

      1. こちらこそ、お世話になってます。

        68系はメモリマップトIOで周辺を繋げ易かったんです。
        Z80はトリッキーなIOに当初悩まされました。

        80系はCP/Mでしたね。68系ならOS-9ですが、当時はFDすら高嶺の花だったので、私はOSを使うなんて考えもしなかったです。データレコーダを使ってましたが、今ではもう見ることもない懐かしネタですね。

        KiCad、私は今年から使い始めたまだまだ新参者です。
        使っていて未だに悩むことがあるので、今後とも宜しくお願いします。

        1. 昔はFDは高価でしたね。秋葉原に行くたびに中古屋さんによって、さんざん迷って購入した思い出が有ります。しかし今ではUSBメモリに置き換えられてFD自体入手困難になってしまいました。

          私もトラ技の記事をまとめた「一人で始めるプリント基板作り」が出てからKiCadを使い始めたので同級生ですね。

  2. 初めまして!
    KiCad + Z80 でググったら発見しました(笑
    私もCP/Mマシンを作ろうとしているんですが、、(思い立ってからもう何年?)
    CPUはZ8S180でしょうか?
    それでは楽しみにしています!

    1. メッセージをありがとうございます。

      はい、写真にあるZ8S180とZ84C00の両方で基板を設計しました。しばらく放置してしまいましたが、この年末年始に動作確認をしてCP/Mの移植にとりかかるつもりです。

  3. UFOキャッチャーの基盤にもZ80(8mhz)が使われています。周辺にはEPROM(UV消去式)やYM3438(FM音源)が使われています。僕はプログラミング等全く詳しくないのですが、このZ80は珍しいのでしょうか?

    1. コメントをありがとうございます。

      Z80自体は30年以上昔のCPUなのでもう誰も使っていない骨董品なのかと思っていました。しかし噂ではパチンコ台に使われていたいりまだ現役みたいですね。UFO キャッチャーに使われているとは知りませんでした。

      Z80より、そのEPROMほしいかも。Z80は手に入るのですが、最初に起動させるプログラムを入れるROMが無くて最初困りました。

  4. 初めまして!
    素人ですが、70〜80年代のゲーム基板を集めている者です。
    ジャンク基板などを買っているとZ80が欠品している基板を
    手に入れることがあって、予備のCPUが欲しいなと思ってここにたどり着きました。
    まだ手に入るものだということがわかり非常に嬉しいです!
    しかし、元々は4MHzのCPUなのですが、それを例えば8MHzのものに置き換えても大丈夫なのか素人なのでさっぱりわかりません。。
    単純に置き換えることはできるものなのでしょうか?

    1. はじめまして。質問をありがとうございます。

      保証は出来ませんが、少し調べてみた範囲では現在手に入るZ80(Z84C00)に置き換えても問題はないように思えます。

      まず周波数ですが、4MHzで動くZ80により高い周波数に対応した物(例えば8MHzの物)を使うことに問題はありません。

      また当時と現在手に入るZ80では製造方法が異なっているので、HとLを決める電圧の境界値や流せる最大電流値が異なる可能性があります。

      そこで当時使われていたZ80(LH0080A)のデータシートhttp://www.kazumi-kikou.com/pdf/LH0080A.pdfと現在のZ84C00のDC CHARACTERISZTICSと較べて見た所では、H/Lの境界電圧値やその時の電流にほとんど差がありませんでした。

      これらのことから考えて、現在手に入るZ84C00をゲーム基板に刺しても問題無く動くのではないかと推定できます。ただし見落としが有るかもしれないので、最初は壊れても諦めが付く基板で試してみてください。

      お役に立てれば幸いです。

      1. こんなに丁寧に答えていただけて感謝極まりないです。ありがとうございます!

        元々ささっていたZ80はLH0080A、再度確認したらまさにそれでした。あとはD780Cというのをよく見ます。

        HとLを決める電圧の境界値や流せる最大電流値、というキーワードも出てきましたので、次からは自分でそこもポイントにデータシートを見てみようと思います。

        仰る通り、まずは壊れても心的ダメージが少ない基板から試してみようと思います。
        少しずつですが、壊れたものを自分で治せるようになっていきたいです。

        ありがとうございます!

      2. 時間が経ってしまいましたが、やっと試せました。
        結果、問題なく動作しました!

        今でも代わりの部品が買えるというのが本当に嬉しいです。
        ありがとうございます!

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です