特集

藤本健氏が古巣で訊く「PasocomMini」開発者濃厚インタビュー

ハル研究所

 すでにご存じの方も多いと思うが、ハル研究所が「PasocomMini」という名前で30年以上前のPC、いやマイコンを今の時代に4分の1のサイズで再現したものを発売する。

 その第1弾としてはシャープの「MZ-80C」を再現した「PasocomMini MZ-80C」が10月に19,800円(税別)で発売される予定で、現在予約受付中という段階だ。さらに、NECの「PC-8001」、富士通の「FM-7」の発売も検討している段階で、そのための準備も進められている。

【お詫びと訂正】初出時に、ハル研究所を任天堂のグループ子会社としておりましたが、誤りだったため該当箇所を修正いたしました。お詫びして訂正させていただきます。

PasocomMini
PasocomMini MZ-80C
PC-8001
FM-7

 4分の1サイズながら、当時の機器そっくりのフォルムのミニチュアになっているのところも、ワクワクするところだが、このなかには「Raspberry Pi A+」が内蔵されており、それによって動作する仕組みになっている。またこのミニチュアのキーボードが押せるというわけではなく、キーボードはUSB接続のものを使い、ディスプレイはHDMIからの出力となるので、現代の周辺機器がそのまま使える形になっている。

Raspberry Piを内蔵

 筆者はこのPasocomMiniについて、5月11日のハル研究所の発表で初めて知り、PC WatchやAKIBA PC Hotline!の記事を特別な思いを持って読んだのだ。

 というのも、筆者が初めて買ったコンピュータがPC-8001であり、そのことが自分の人生に大きな影響を与えたというのはもちろんのことだが、今から30年以上前、高校2年生から大学3年生くらいまでの5~6年を、そのハル研究所で仕事をしながら過ごしていたからだ。

 ハル研究所というと、横スクロールアクションゲームの『星のカービィ』シリーズの開発で有名な企業であるが、筆者がいたのはそれよりもずっと前の時代。もともとハル研究所は秋葉原近辺にあった独立系のゲームメーカーであり、かつ周辺機器メーカーだったのだ。

 本当にまだ社員が10人もいない1982年、高校2年生だった筆者が夏休みに開発したPC-8001用の音源ボードを持ち込んだのが同社との最初の出会い。結局この企画案が採用されることになり、当時新入社員としていた故・岩田聡氏(後の任天堂の代表取締役社長)とともに改良を加えて翌年にPC-8001、PC-8801用の音源ボード、GSX-8800として発売されることになったのだ。

筆者の手元に保存してあるGSX8800

 さらに、そのあとはPC-8801用のFM音源&MIDIボードである「響」などの開発にあたったのだが、大学卒業以降は、ほとんどやりとりすることもなくなってしまった。そこにきてPasocomMiniのニュースは、本当に驚いたのとともに、まさに感激だったのだ。

 そのニュースを見てすぐに、ハル研究所に取材を申し込み、先日、山梨県の甲斐市へ行って、いまも在籍している当時の方とも30年以上ぶりにお会いしたのだ。

 前置きが長くなってしまったが、普段AV Watchでデジタルオーディオ関連の記事を書いている筆者が、このインタビュー記事を書くことになった背景は以上のとおりだ。内容もやや偏ったマニアックなものにはなるが、PasocomMiniの発案者である代表取締役社長兼COOの三津原敏氏、そしてPasocomMiniの開発担当ディレクターである郡司照幸氏に話をうかがってみた。

開発センターがある山梨県甲斐市
代表取締役社長兼COO 三津原敏氏
開発担当ディレクター 郡司照幸氏

――今回のPasocomMini、発案は社長の三津原さん、開発は郡司さんが主に担当されたとうかがっていますが、お二人のパソコンというかマイコン初体験はいつごろだったのですか?

三津原:中学2年生のころ、同級生が家でインベーダーゲームができるから遊びにおいでよ、と誘われていき、PC-8001のキーボードを使って遊んだのが最初です。

 それ以来、そこに入り浸るようになり、遊ぶだけじゃなく、雑誌に書かれているプログラムを打てって言われて1年間で100本くらいは入力したんじゃないかな(笑)。

 だからBASICは打ちながら覚えて、すぐにアセンブリ言語に行ったのですが、マシン語のダンプリストを打ち込むだけだからさっぱりわからなかった……アセンブリ言語が使えるようになったのはそれから5年くらいしてからですよ。

 そのあとは富士通のFM11、FM7を使って、当時言われていた「6809のアーキテクチャは美しい」なんていうのをわかったふりして人に話してみたりね。MSXも使ったので、そのころからZ80を理解するようになり、ゲームを作ったりしてました。

 その一方で、たいして実用にはならないけれどアセンブラもどきを作ってみたり、グラフィックを描くツールを作るとかしていましたね。

郡司:三津原が1967年生まれなのに対して、私は2つ下の1969年生まれなのですが、じっさいに触ったのはもう少し早かったようです。

 家に父が買ったPANAFACOM(現PFU)のLkit-16という16bitワンボードマイコンがあって、これを小学校のころに使っていました。やはり雑誌を見てプログラムを打ち込んで、動いた!ってね。

 その後8bitマイコンが家電店にも並ぶようになり、ベーマガ(電波新聞社発行のマイコン別冊BASICマガジン)片手に、お店に入り浸っていました。

 それから中学に入ってからPC-8801mkIIModel20というフロッピードライブが1つだけのものを買ってもらい、これでBASICを入力してゲームをしていましたね。アセンブラに行ったのは高校生くらいからですね。Z80のマシン語のインストラクション活用表をいつも持ち歩いていました。

――おお!インストラクション活用表って、ものすごく懐かしい言葉ですね。もしかして緑のヤツですか? 私もNECのものをいつも持ち歩いてたので、かなりニーモニックというかマシン語は覚えてましたよ。

 いや、今でも普通に覚えてますね。LD HLレジスタが21とか、INC Aが3Cとか……探せば家にインストラクション活用表、あるはずですね。

郡司:私が使ってたのはNECのではなく、アスキーのものでしたね。ルーズリーフの最後のページに入れて、5mm方眼紙とともに持ち歩いてました。8×8のドットを書き込むのに方眼紙が役立つんですよね。そのうちゲームにのめり込んでいったのですが、ゲームそのものをやるよりもゲームのセーブデータを解析していじることに興味を覚えて……(笑)。

 今でいうところのハックをするわけですよ。セーブデータを修正すると、ステージが上がってパワーアップするんですよね。そんなことをしてたから、マシン語のダンプリストをざっと流していくと、あ、この辺りがプログラムで、この辺はデータだな……とわかるようになってくるんですよね。

筆者の手元にあったNECのZ-80インストラクション活用表

――そうそう、ダンプリストを見ててもなんとなくわかるし、テープに保存したデータの音を聴いていても、ピーガーガーガー…というなかで、この辺がデータだ、とかわかるんですよね(笑)。ところでお二人はいつごろハル研に入られたのですか?

三津原:私は浜松出身で、最初はヤマハ発動機の下請け会社でオートバイ関連の仕事をしていたんですが、その後1990年の1月に入社しました。

郡司:私も同じ年の2月の入社なんです。当初はゲームボーイのゲームを開発をしていましたが、そのあとは先日の説明会のときにもお話しましたが、カービィの開発を長らく担当してきました。

三津原:逆に私はあまりカービィなどゲームには携わっていなくて、ツールを開発する仕事が多かったですね。研究開発と称して任天堂がらみの仕事をしたり……。

 ただ、とある事情で、一度自宅に戻らなくてはならなくなって、1999年に一度退社しているんです。その後ゲームのプログラマとして仕事をして、再度2012年にハル研に戻ったのです。戻ってからはエンジニアというより経営に近い仕事をし、2015年に現職についています。

――さて、本題のPasocmMini、これはどういう経緯で作ることになったんですか?

三津原:作りたかったわけではなく、単にほしかったんですよ。昔のパソコンが好きで、当時の雑誌も家に何百冊ととってあるんです。昔の古き良き時代を思い出しますね。

 じっさい、昔の雑誌を今見ても結構勉強になるんです。もう一度、昔の環境でプログラムができたらな……と人任せなことを思っていたんですが、なかなかほかから出てこないので、自分でやっちゃおうか……と思ったのは結構前のことです。

郡司:じっさいに社内でやろうという話になったのは一昨年(2015年)の10月だったと思います。その以前より三津原からは、こんなのどうだろう……と話は持ち掛けられていたんですけどね。

三津原:「そんなの絶対売れないよ!」ってすごく否定的で、死んだ魚の目というか、蔑みの目で私を見るんですよ(笑)。

――その当初から、このマシンのような構成を考えていたわけですか?

三津原:株式会社スマイルブームの社長、小林貴樹さんとは個人的にも親しくしていて、ハル研を離れている時期、ニンテンドー3DS用の「プチコン3号 SmileBASIC」は当初私が開発する予定で話を進めていたんですよ。

 かなり技術的にも突っ込んだところまで詰めていたんですが、途中でハル研に戻ることになって、開発から降りたという経緯があります。その過程で、小林さんとは「いつか電源オンで、SmileBASICが起動するコンピュータができたらいいな」なんて話もしていたんです。

 その後、プチコンファンミーティングというイベントに参加したことがあったのですが、そのとき女子中学生なども結構来ていて、「キャラクタが出ます!」といっては「おーー!」と盛り上がり、ちょっとしたネタで喜ぶ人や褒める人がいたんで驚きました。それを見て、その場で小林さんと「やっぱり作ろうよ!」ってね。

――なるほど、キッカケはそこにあったんですね。

三津原:それから社内で検討し、昔のパソコンにしてみるのはどうだろうか、せっかくなら、ただBASICが動くだけじゃなくて、PC-8001で言うところのMONコマンドを入れたらマシン語が動くようになったら面白いだろうって。

 ところが郡司が全然、この話に興味を示してくれなかったんですよね……さらにZ80のCPUエミュレータも自分で作って載せてみたりしたんですが……

――それって、社長のやる仕事じゃないですよね! 完全に趣味じゃないですか?(笑)。それにしてもZ80のエミュレータを作るって、すごいですね!

三津原:趣味でZ80エミュレータはいろいろ作っていました。Windowsでも動くし、Macでも動き、さらにはiPhoneで動くものなど、いろいろ作り、PC-8001のエミュレータを作ったり、PC-6001のエミュレータを作ったりもしていますから、それらをちょっと移植してみたわけです。

――PC-8001やPC-8801を再現するちょっと怪しいエミュレータはネット上に転がっていたりしますが、それ三津原さんが作っていたんですか!

三津原:いやいや、私はあくまでも自分用の趣味として作っていただけですよ。それにかなり高性能なエミュレータもいろいろありましたからね。でも、ソフト上で動くのではなく、ハードとソフトを融合したものがほしかったんですよ。

郡司:その辺まで見て、単なるエミュレータではなく、形としてモノができるのならありだな、と思うようにはなりました。モノとしての所有感がやっぱり重要。当時と同じ大きさにしても意味がないので、手で持てるサイズがいいなといろいろ検討した結果、1/4のサイズになったわけです。

――まず最初に発売が予定されているのがシャープのMZ-80Cで、そのほかにNECのPC-8001と富士通のFM-7がラインナップされていますが、この3つになった理由というのはどういうことなのでしょうか?

三津原:シャープ、NEC、富士通の3社がいいだろうというのは当初から頭にありました。でも年代別に見るといろいろと代表機種も変わってきます。それなら単純に初期のマシンにしようと決まっていったわけです。

 初期のマシンというと富士通の場合はFM-8なので、最初はそうしようかとも思ったのですが、バブルメモリのコンピュータで、変わった特徴はありましたが、数の上ではあまり売れておらず、FM-7で大ヒットとなっているので、これにしたんです。

――私はNECユーザーだったので、シャープのMZについてあまり詳しいわけではないのですが、MZの最初って「MZ-80C」ではなくて「MZ-80K」ですよね?

三津原:そうですね。最初がKで次がC、そしてK2となっていますが、セミキットではなく、ちゃんとしたパソコンとして発売されたのがMZ-80Cなんです。

 またキーボードがマトリックス型からタイプライタ型になり、メモリも40KBに増設された最高級品のMZ-80Cがいいな、と。ちなみにMZがクリーンコンピュータと言い出したのは、このMZ-80Cからなんですよ。

――これらミニチュアの見た目にもグッと来ますが、このなかにはRaspbery Piが入っているんですよね?

三津原:確かにRaspberry Piは安くていいけれど、ある意味不要な機能までいっぱい搭載されているし、反対に必要な機能がなかったりする。だから最初はコンピュータも含めて自分たちで作れないか、というところから検討していたんです。

 ちょうどRaspberry Pi Zeroとかも出てきたタイミングだったので、かなり安く作れるのでは……なんて思って、社内で作ったらいくらくらいになるのか計算してみてよ、って頼んだんです。

 ところが、郡司から帰ってきた返事が、ラズパイがなんでこんなに安くできるのかがわからない、というものでした。

郡司:確かに作ろうと思えば、難しいものではないのですが、やはり安く作る必要があります。

 誰にでも使いやすい仕様を考えればキーボードはUSBで、電源もUSB供給、さすがにコンポジットビデオ出力はないからHDMIでしょ。自分で作るならCPUはPICなどでなんとかなりそうだけど、HDMIのチップがとにかく高く、その値段でラズパイが買えてしまうほど。

 ラズパイ、おかしいだろうって。だったらラズパイでやる方法を考えようと作戦変更したわけです。

――なるほど、結構紆余曲折があったわけですね。

郡司:じっさいにRaspberry Piを使うことに決まったのは昨年(2016年)の後半です。

 価格的に考えるとRaspberry Pi Zeroが魅力だったのですが、これ、企業が大量に買うことができないんですよ。10個くらいなら、なんとか仕入れることもできたと思いますが、それ以上を安定的に入手するのは難しく、結局Raspberry Pi A+となったのです。

 ここにSmileBASICを載せたことで、電源オンですぐにBASICが立ち上がります。そのお手軽さが重要なんですよ。「cloadやcsaveのコマンドでテープの読み書きできますか?」なんて聞かれることがありますが、あくまでも手軽に楽しめるパッケージングとしての製品であり、全方位的なコンパチ機というわけではないんです。

 完全なものを求めるのであれば、いまのPC用にあるエミュレータを使ってください、と。

Raspberry Pi上で起動したSmileBASIC

――このSmileBASICについてうかがいたいのですが、これは今どきのBASICであって、N-BASICやシャープの当時のBASICを再現したものではないんですよね?

三津原:はい、まさに現代のBASICであって、昔のBASICというわけではないし、互換性もありません。当初は昔のコンピュータのエミュレータを作りたいという思いもあった一方で、やはりこのSmileBASICがほしいというのも並行してあったんですよ。

 その辺をいろいろと融合させて、BASICは現代のSmileBASICを搭載し、エミュレータのほうは、マシン語レベルで当時のものを実現しようということになったわけです

郡司:最初から決めていたのは雑誌に載っていたマシン語プログラムを打ち込めば動くよ、というもの。市販のソフトになるとハードルが上がってしまいます。

 市販のソフトだと、プロテクトのためにいろいろな仕組みを入れていたり、途中でテープを読んだりする。それに対して、雑誌のプログラムはオンメモリで動作するので扱いやすい、と割り切ったわけです。

じっさい当時の雑誌に掲載されていたMZ-80用のプログラムを打ち込んだ結果、PasocomMiniで動いている

――当時のPC-8001ユーザーとしては、MZ-80とはずいぶん違うマシンである、という認識をしていましたが、考えてみればZ-80で動作するし、大した内部構造の違いがあるわけではないですよね。

郡司:そうですね。マシン語部分のエミュレーションで、MZ-80CとPC-8001ではそれほど大きな違いはありません。V-RAMのアドレスの違いとポートの違いであり、ここを書き換えればOK。じっさい、移植も数日でできましたよ。それより文字フォントを合わせることのほうに苦労しましたね。

――ん? V-RAMのアドレスって、C300でしたっけ……?

三津原:F300ですよ(笑)。なんでそんな中途半端なアドレスだったんですかね。今のようにOpenGLを触るわけじゃないし、APIを叩くわけでもないので、とっても簡単です。バンク切り替えもないので、メモリ管理も楽チンです。ただ、FM7はツインCPUなので、ちょっと大変です。

――そうか、FM7はそもそもZ80ではなく6809で、しかもツインCPUだと、かなり違うアーキテクチャですよね。

郡司:はい、これはちょっと違うけれど、今時のツインCPUではなく、はるかに単純ですけどね。

――一方で、当時のマシン語でプログラミングする場合、V-RAMと外部ポートをいじる以外に、BIOSというか特定のアドレスをCALLしたり、ジャンプしたりするケースもありましたよね。

 ここに私も当時ちょっと関わった秀和システムトレーディングの「PC-8001マシン語活用ハンドブック」なんていうのがあります。PC-8001でモニターに戻るなら「C3 66 5C」ってするとか……。

郡司:おお!ここでZ80のジャンプ命令、C3のコードが出てくるとは思いませんでした(笑)。そうですね、当時のROMとして持っていたルーチンの代表格はサポートしています。だから、雑誌のプログラムも打ち込めば動くわけです。

 もちろんインタープリタなど著作権があるので、そこへの侵害はないようにしています。うちもソフトウェア会社なので、そこは完全にクリアした上で作っていますよ。

PC-8001マシン語活用ハンドブック

――PC-8001のことしかよく覚えていませんが、CPUの動作クロックは4MHzでしたよね。エミュレータで動かす場合、そのスピード管理というのはどうしているんですか?

三津原:実機と横に並べてプログラムを動かして、だいたい同じスピードになるように調整をしています。PC-8001の場合、画面表示にDMAを使っていたから、実質的には2.3MHz程度なんです。DMAを止めるとスピードが上がったりするんですよね。

――DMAって、ものすごく久しぶりに思い出しました! PC-8001で無理やりBEEPをループさせて音程を鳴らしているときにDMAをオフにすると、処理スピードが上がって、音程が上がったりしたんですよ。

 ところで、ハル研が作るということで、もう1つ気になるのがPCGの扱いです。ここにある月刊マイコンは表紙にPCG8100が掲載されていますが、これが私が最初に買ったマイコン雑誌でした。

 その後、ハル研に入ってからPCG8100を入手しましたので、やはりこれもすごく思い入れのある機材です。これの扱いはどうするのでしょうか?

三津原:私が以前「PC-8001にはPCGをサポートします」って公言しちゃったので、なんとかやりますよ(笑)。

郡司:私がいないところで、勝手に言っちゃうんだから! 確かに当時のゲームを見ると、PCGを使ったものが非常に多いのは確かですから、これは対応しなくちゃいけないとは思いますよ。

月刊マイコン
上がNECのPC-8001、下がハル研究所のPCG8100

――PCG8100でも音は出ましたよね。確か1音だけだったような……

三津原:当時I/O誌に多くのプログラムを投稿されていた、芸夢狂人さんのプログラムもPCG8100の音源を鳴らしていたものが多くありましたね。そうしたものも再現できるようにしていきます。

――個人的には、やはりPC-8001を早く発売してほしいところですが、今後のスケジュールはどうなっているのでしょうか?

三津原:まずはMZ-80Cを10月に発売します。すでに予約は開始されていて、予約状況は順調だと聞いてはいますが、まだ、なかなか知れ渡っていないようです。ぜひ、当時使っていた人には使っていただきたいですね。

 PC-8001やFM-7が本当に出せるかはまだ確定していません。まずは、MZ-80Cの発売状況を見てから検討していきたいと思います。

――今日は、本当にありがとうございました。ぜひ、これからの製品化、期待しています。

筆者が開発し、1983年に発売されたPCG8100を持って記念撮影