TK-80のHTML5によるエミュレーター
2012年11月4日
先月、HTML5を用いてMZ-80Kのエミュレーターを作成した記事を書いた。
キモの部分は、CPUのエミュレーションとディスプレイの表示なので、そこがクリアできていればいろいろと応用が利く。CPUは当時の流行のZ80で、PC-8001・PC-8801などがそれに相当する。
また、Z80は、8080という当時の主流だったCPUのアッパーコンパチブルなので、そういったコンピューターにも応用可能である。
そんな中に、TK-80という、30年以上前に発売されていた1ボードマイコンがある。
TK-80といえば、私が中学生だったか高校生だった頃、雑誌の広告に載せられていたのを見て、購入寸前の所まで行っていたマイコンである(実際には、TK-80E)。触ったことはないのだが、どんな物なのだろうかという興味はずっとあった。
で、手元にZ80 CPUのエミュレーターがある。TK-80の仕様も、小松さんのNEC TK-80というページとか、AVRとZ80でTK-80のレプリカを制作なさった方の資料ページとか、中日電工の菱田さんのZ80マイコン組立キットND80ZⅢのページなどを参考にすると、だいたい分かる。なら、作ってしまおうということになった。
初期のバージョンでは、中日電工のND80ZⅢの取り扱いマニュアルを参考にモニタープログラムを作成し、使わせていただいた。そうして出来たエミュレーターを触ったのが、私の初めてのTK-80の体験である。
10年ほど前に、アスキー出版社から「復活!TK-80」という本が出版されていて、それを通じてTK-80に触れた方も、大勢いらっしゃると思う。残念ながら私は、それが出版された時点でその本の存在に気がつかず、今となっては絶版となり手に入らなくなっている。
そんな中で、自作のエミュレーターでTK-80に触れたときの感覚は新鮮で、もしこれを中学生・高校生の時に手にしていれば、人生が変わっていた可能性が大である。エンジニアになっていたかも知れない。
閑話休題、最初に出来たTK-80のバージョンでは、ほぼすべてのコードがスクラッチから書いた物なので、GPLもしくはLGPLで公開したくなった。それには、モニタープログラムの著作権の問題がある。MZ-80の場合は、フリーのライセンスのモニタープログラムが存在したので、それを使ったが、TK-80ではそういった物は公開されていない。
そこで、モニタープログラムも自作することにした。仕様はだいたい分かっているし、そんなに大規模な物でもないので、それほど時間をかけずに完成することが出来た。決して褒められたアセンブリではないかも知れないけれど、一応動くので、良し。そんなで出来た最初の公開バージョンが、これである。

すると、さすがTwitter。本当にそれを供与していただけたのだ。有り難うございました、@triringさん(それに、RTしていただいた方々も)。加えて、供給していただいたファイルの中には、キーボードも含めた画像もある。これらを用いて、この記事の冒頭にあるインターフェースのエミュレーターを作成することが出来た。しかも、著作権はすべてのファイルに関して、LGPLにすることが出来た。11月4日現在の最新版は、ver 0.4。
これは、いずれPIC(PIC32MX)を使った1チップで、ワンボードに仕上げる予定である。同様の物はYouTube上に見つけることが出来るが、私の場合はあくまで1チップが目標。(追記:PIC32MX120F032Bを使ったボードの製作例は、こちらです。)
ところで、今やTK-80の実機はほとんど手に入れることが出来ない物になっているが、それと同等以上のマイコンが、現在でも販売されていて入手することが出来る。実機に興味のある方は、中日電工のZ80マイコン組立キットND80ZⅢの購入を考えてみるのも、良いかも知れない。
コメント
hal (2016年12月17日 07:22:15)
はじめまして、
PICで作られた由、唯々驚愕しております。
私もトライしてみたくなりました。
ちなみに、TK-80の実機を持っています。
長いこと電気が入っていませんがまだ動くと思います。
初期の版なのでセラミックパッケージです。
TK-80BSに組み込んであります。
ひきつづき、読ませていただきたいと思います。
PICで作られた由、唯々驚愕しております。
私もトライしてみたくなりました。
ちなみに、TK-80の実機を持っています。
長いこと電気が入っていませんがまだ動くと思います。
初期の版なのでセラミックパッケージです。
TK-80BSに組み込んであります。
ひきつづき、読ませていただきたいと思います。