ポケコンっていうものをご存知ですか?今の20代以下の方だと聞いたこともないかもしれませんが、その昔とっても流行ったポケットコンピュータの略。シャープが中心となって発売していたポケットに入るサイズ(といっても今のスマホの数倍の大きさでしたが)の小さいコンピュータで、理系の学生にとっての必需品だった製品でもあります。
そのポケコンがiPhone/iPadアプリ「DPC-100」として再現され、現在iTunesストアのユーティリティカテゴリのNo.1セールスを記録中です。で、開発したのはiYM2151やI am Synth、I am Samplerでもお馴染みのDETUNEの佐野さん。なぜDETUNEが??という思いを持つ人も多いとは思いますが、個人的にもグッとくるアプリ(これをアプリと呼ぶには抵抗もあるんだけど)なのでちょっと紹介してみましょう。
私が最初にポケコンを触ったのは1981年の高校1年のとき。シャープがPC-1211という初のポケコンを発売し、友人の何人かが買っていたので、ちょっと触らせてもらったのが最初でした。
シャープのPC-1211、(写真はWikipediaより引用)
ただ、当時すでにNECのPC-8001というパソコン(当時マイコンと呼んでいた)を持っていたのと、カシオのFX-602Pというプロ電(プログラム電卓)なるものを持っていたので、それほど興味を持てず、その後もプロ電派だったので、実は私自身はポケコンは一度も所有したことがないんです。
なので、私がポケコンを云々言う資格はないな、とは思いつつ、でもやっぱり懐かしいので、DPC-100を先日からちょこちょこ使わせてもらっています。
今回のDPC-100のプログラミングもI am Synth同様、 プロキオン・スタジオの鈴木秀典さん(左)が担当
そう、実は佐野さんに以前、I am Synthの開発インタビューをしたときに、すでにDPC-100の話は伺っていていたので、発表を心待ちにしていました。が、それがついにリリースされたわけですね。iPhoneという高性能なコンピュータの中で、昔のコンピュータをエミュレーションするのですから、なかなか不思議な感じです。
DETUNEサイトに上がっているDPC-100のデモビデオ
すでに、DETUNEのサイトでは、デモビデオなどもいろいろと公表しているので、ご覧になった方もいると思います。当時のポケコンのBASIC言語を再現しているだけでなく、iPhoneの加速度センサーが利用できるなど、面白い機能もいっぱい。昔BASICを使ったことがあるという人なら、すぐに使えると思うので、試してみてはいかがでしょうか?
私にとってBASICとはN-BASIC、N88-BASICというMicrosoft/NEC系のBASICだったので、シャープのポケコンBASICとはちょっと使い方が違ったり、表示画面が1行だけという制約があるので、最初触ったときにはやはり戸惑いもあったのですが、DPC-100のFacebookページにあるサンプルプログラムなどを見てみたら、すぐに分かってきました。
さすがにiPhoneの小さい画面の中に表示されたキーボードを使って、プログラムを入力したりエディットしたりするのは大変ですが、もちろん、そこはうまくできています。そのWindowsやMacのテキストエディタでBASICのプログラムを入力し、拡張子を「.dpcbasic」として保存した上で、iTunesを介してやりとりすれば、OKなんですね。
で、本題はここから。DPC-100の初期バージョン、今日現在リリースされているVer 1.0.2というバージョンには非搭載なのですが、まもなくアップデートされるVer 1.1.0からはサウンド機能が搭載されます。そう、やっぱりDETUNEのアプリなんですから、そう来なくてはね!
とはいえ、これはポケコン。サウンド機能といってもとても原始的なものだから、自分でBASICでプログラムを組まないと音を出すことはできないし、実際に音楽を演奏するとなると、結構大変です。そうはいっても、やはり、さすがDETUNE。なかなかいい感じにサウンド機能を実装しているんですよ。実は、正式リリース前のVer 1.1.0を佐野さんからいただいたので、ちょっと試してみました。使えるコマンドとしては
・SCHSTATE
・SCHDUTY
・SCHNOTE
・SCHVOLUME
の5つ。最初のSYSBEEPは単純に「ピー」という音を出すだけのものなので、演奏に関わることができるのは下の4つ。このうちSCHNOTEではMIDIのノート番号を元に音を出せるようになっており、C4の音を出す場合には60を設定するとなっています。具体的には
SCHNOTE(0,60)
とすると、ドの音が鳴ります。このうち最初の引数0はチャンネルに相当するもので0、1、2の3つの値をととることができるので、3和音までが可能になるのです。またSCHSTATEはノートオン、ノートオフを実現するためのコマンドなので
100 SCHNOTE(0,60)
110 SCHNOTE(1,64)
120 SCHNOTE(2,67)
130 SCHSTATE(0,1)
140 SCHSTATE(1,1)
150 SCHSTATE(2,1)
とすれば、ドミソの和音が鳴るわけです。ここでちょっとプログラム機能を利用して、半音ずつ音が上がっていくプログラムを組んでみましょう。
100 FOR I=60 TO 72
110 SCHNOTE(0,I)
120 SCHSTATE(0,1)
130 INPUT A
140 NEXT I
150 SCHSTATE(0,0)
分かりますか? 130行でINPUT Aと入れているのは何かキー入力をすると、次の音程に進むためのものですよ。
そのほかSCHSTATEは矩形波の形を1~8の範囲で変化させて、音色を変えるというコマンド。そう、DPC-100で鳴らせる音は、いずれも単純な矩形波であり、とっても電子的なサウンドなんですが、それでも音色をいじれるところは、さすがDETUNEのこだわりですよね。
以上、とっても偏った紹介ではありましたが、DETUNEのポケコンアプリ、DPC-100について紹介してみました。まもなく、リリースされるVer1.1.0から、このサウンド機能が搭載されるんで、興味のある方はぜひ試してみてくださいね。