小さな小さなコンピュータ、IchigoJamというものをご存じでしょうか?私もつい数日前に知ったのですが、日本人が開発した「BASICプログラミング専用こどもパソコン」なんだそうです。IchigoJamが最初に発表されたのは2014年4月だったようですが、ほとんどボランティアみたいな感じで頒布されており、完成品が2,000円+送料140円プリント基板のキットなら1,500円+送料140円という安価で入手可能な機材となっています。

手のひらサイズというよりSDカード3枚分程度の面積のワンボード・コンピュータながらBASIC言語を使って、昔のMSXのような感じでプログラムすることができます。しかも、そのBASICの命令として搭載されているPLAY文を使って演奏までできてしまうんですよ。「これは面白い!!」と思って、さっそくキットを購入して、実際に使ってみたので、どんなものなのか紹介してみたいと思います。


1,500円で入手可能なBASIC言語で動かせるコンピュータ、IchigoJam

小さなコンピュータとしてはRaspberry PiとかArduinoといったものが話題となっていて、私もRaspberry Piではちょこちょこ遊んでみてはいます。Linuxが使えて、インターネットも使えて、すごいパワーを持った小さなマシンではあるけれど、Linuxなだけに、使いこなすには結構ハードルが高いな……と思っていました。


IchigoJam(上)とRaspberry Pi(下) 

そんな中、連休前の1月9日、たまたまFacebook上で流れてきたIchigoJamに関する情報が目に留まってその存在を知り、その場で注文してしまいました。連休中に使えないだろうか…と、そわそわして待っていたのですが、普通郵便だったので、届いたのが13日。夜遅くに、久しぶりにハンダごてを握って組み立てたのです。


プリント基板と部品一式が小さなケースに収まって郵便で送られてきた 

ハンダ付けなんて、数年ぶりのような気がしましたが、30分程度で完成。ここにmicroUSBで電源を供給し、PS/2キーボードを接続すると同時に、コンポジットケーブルでテレビに接続すると使えるというコンピュータなんですね。


久々にハンダごてを握ってハンダ付け開始! 電子工作が苦手な人は完成品を買えばOKですよ!

仕事机にあるディスプレイはHDMIとDVIしか入力がないため接続できないため、とりあえず動くだろうか…と電源を接続してオンにしてみたのですが、IchigoJam上にあるLEDが光らないんです。


約30分ほどでハンダ付けは終了。

そうこのLEDは電源ランプだと思い込んでいたので、「ハンダ付け失敗したか!?」とちょっと冷や汗が出たのですが、単なる勘違い。このLEDはBASICの命令によって点灯・消灯ができるランプだったんですね。


組みあがったIchigoJam。電源を入れたけど、赤いLEDが点灯しないのは、なぜ!? 

家の37インチの液晶テレビに接続してみたら、「IchigoJam 0.9.1 by @taisukef」と表示され、「OK」とプロンプト表示されているではないですか!バッチリ動いているようです。しかも起動が一瞬。Raspberry Piのように予めOSをインストールするような必要はなく、組み立てて電源を入れると、すぐにこの表示が出てくれるは嬉しいですね。


テレビに接続してみたら、プロンプトが表示された! 

さっそく30年以上前の記憶にしたがってBASICでプログラムを入力してみると、ちゃんと動いてくれますよ!

私が当時いちばん使っていたのがN-BASICというNECのPC-8001用のもの。MicrosoftとNECの共同開発のものでしたが、その後登場したMSXのBASICなどともかなり近いものでした。IchigoJamの開発者である福野泰介さんも、「小学校3年生のころにMSXでプログラミングに夢中になった」そうですが、IchigoJamのBASICの仕様もその当時の影響を受けているんでしょうかね?


BASICでプログラムを入力してみると、ちゃんと動く!

ただIchigoJamが装備しているBASICのコマンド数は少な目で、MSXなどが持っていたコマンドが何でも使えるわけではないし、仕様もいろいろ違うので、マニュアル(A4用紙1枚の表ですけどね)で確認する必要はありそうですが、使ってみると楽しいですね。

メモリはたったの4KB。小さなBASICのプログラムを組むだけなら、これでも十分というわけですね。「LOAD、SAVEなんてコマンドがあるけど、これはどうするんだろう?」と思ったら、本体内蔵のフラッシュメモリにプログラム3つまで保存できるようになっているから、外部のメモリメディアをつけたり、ましてやカセットテープレコーダーに保存する必要はないようですね! 


DETUNEのDPC-100 

佐野電磁さん率いるDETUNEのポケコンアプリ、DPC-100も楽しかったですが、個人的にはPC-8001で育ったこともあって、大きいディスプレイでのBASICのほうが、よりグッと来るものがあります。ちなみに、画面サイズは296x216px(37x27文字)となっていますね。


IchigoJamの中枢にあるのがLPC1114というARMコアのマイコンチップ 

と、BASICの思い出に浸っているのもいいのですが、やはり一番の目的は音です!そう、IchigoJamにはBEEPコマンドで、「ピー」という音が出せるほか、PLAYコマンドが用意されており、ここでMMLで曲を打ち込んでいけるですよ。

そうMMLとはMusic Macro Languageの略で「ドレミファソ」なら「CDEFG」と入力して演奏できるというもの。オクターブの変更は「O」、テンポの変更は「T」、休符は「R」などとして入力することで曲の演奏ができるんです。懐かしく思われる方も多いのではないでしょうか?


IchigoJamはPLAYコマンドを使ってMMLで演奏させることができるのだが……

さっそく、PLAYコマンドで音を鳴らしてみようと思って入力してみたものの、音が出ません!「なぜだ!?」と考えてみたら当たり前。だって、コンポジットでテレビにはビデオ接続したものの、オーディオ接続はしてませんからね。また出力端子はコンポジットのみで、オーディオ出力なんてありません。どうすればいいんだ?と思ってPLAYコマンドの備考欄を見てみると「*EX2-GNDに圧電サウンダー接続」とだけ書いてあるんです。


学研・大人の科学のシンセサイザ、SX-150から圧電ブザーを拝借 

なるほど、中央にあるICの両端に端子が出ているところを使えというわけですね。でも圧電サウンダーってことは、このままオーディオアンプなどに接続してはいけなかったような……(あれ、大丈夫なんでしたけ?)。かといって圧電サウンダーとか圧電ブザーという類のものは手元にありません。アキバに買いに行けば100円程度で売ってそうですが、でもすぐに音が出したい……。と思って探してみたら、ありました。昔買った、学研の大人の科学のシンセサイザ、SX-150に圧電ブザーが搭載されているじゃないですか。久しぶりにハンダ付けしたついでに、このSX-150からハンダを溶かして圧電ブザーを抜き出し、IchigoJamに取り付けてみました。

※コメント欄で情報をいただきましたがSX-150のものは圧電サウンダーではなく、ダイナミックスピーカーであるとのこと。一方、開発者である福野さんからは、この出力をオーディオ入力へ接続できるという情報をいただきました。たから、単純にこのスピーカーから音が出たわけですね(^^;



SX-150から引っこ抜いた圧電ブザーをIchigoJamのEX2端子、GND端子に接続したら無事に音が出た! 

結果は大成功。ちゃんと音が鳴りますよ。このようにして鳴らしてみたのが以下のビデオです。



ただ、ピッチが微妙におかしく、とくにオクターブ4のFの音が完全に外れた感じに聴こえます。福野さんのブログサイトを見てみると「LPC1114マイコンの処理速度の関係で、平均律音階の正確さには欠けるものの……」とあり、演算で音を作り出しているようなんでね。オクターブ3だと、少しマシに聴こえるのですが、ここはなんとか修正をお願いしたいところだな……と。

とはいえ、1,500円でこれだけ遊べる機材っていうのも、そうそうないはず。興味のある方は、このIchigoJamを入手してみてはいかがでしょうか?

【関連情報】