アメリカのTiger Electronicsが開発して一世を風靡した電子玩具「Furby(ファービー)」の初代モデルのソースコードが公開されています。

TITLE PAGE INTERACTIVE TOY (FURBY.ASM-Version25) INVENTOR:Dave Hampton

(PDFファイル)http://www.seanriddle.com/furbysource.pdf



ファービーは歌ったり踊ったりできるだけでなく、独自の「ファービー語」を操るコミカルなぬいぐるみで、1998年に発売されると世界的に大ブレイクしました。日本でもタカラトミーからファービーは販売され人気となっています。

ファービー日本語版プロモーションビデオ - YouTube

初代ファービーは、単にプログラムされた歌や踊りを再生できるだけでなく、体中に埋め込まれたセンサーによって、外部からの入力に応じてアクションを起こせるという特長を持っており、当時のおもちゃとしては高度なプログラムが施されていました。その初代ファービーのソースコードがPDFファイルで公開されています。

発明者のDave Hampton氏によって記録された初代ファービーのソースコードはA4用紙で全297ページ。使われているプログラミング言語は「6502 OPCODES」です。当時のおもちゃに使われていた安価なチップでは、コードとメモリの大きさに制限があるため、C言語などではなく6502向けのアセンブリが用いられた模様。アセンブリ言語で書かれたファービーのプログラムは、何がどうなっているのか一般人が解読することは困難です。



Hacker Newsではファービーのソースコードに関する多数の感想が寄せられています。

Original Source code for the Furby [pdf] | Hacker News

https://news.ycombinator.com/item?id=17751599

中には、「バッテリー電圧に応じてPWMを設定し、モーターに負荷をかけない仕組みが取り入れられていて興味深い」などの書き込みがあり、これに対しては「こんなコードを読み解けるのはすごい……」という感想も付いています。なお、読み解いた人は「6502アセンブリで10年くらいかけてゲームを書いていたから自然に読める」そうです。



ソースコードを改造すれば、思いのままにファービーを手なずけられそうですが、最新モデルのファービーであれば比較的、簡単にハッキングできます。

子ども向けのおもちゃ「ファービー」に「I’m your father」などを言わせるハッキング - GIGAZINE