Categories Books | Hard | Hardware | Linux | MCU | Misc | Publish | Radio | Repository | Thoughts | Time | UNIX | Writing | プロフィール
Net cruising している間に、またまたとんでもない代物を見つけてしまった。"Floppy the Robot" は、米国 Goodwin 大学の Fran Golden 氏によるフロッピーディスクドライブで駆動するロボットである。同氏のサイトでは、丁寧にその製作方法が解説されているが、その冒頭にこう書かれている。
The floppy drive has all of the motors and electronics you need to get started and compete in a robot contest.
言われてみればその通りで、フロッピーディスクドライブにはDCモーターはもとより、ステッピングモーターも搭載されており、ロボット製作の素材としては、最適である。
それにしても、海外の教官はどうしてここまで COOL な発想ができるのだろう?それとも、私達日本人が、体の芯まで「消費漬け」になっているのだろうか?今の日本は、あらゆることがお金で済まされる時代。生徒も教師も読者も出版社も、工夫する前に、お金で「解決したつもり」になっているのではなかろうか・・。
健気に走り回る Floppy のビデオクリップを見ながら、ふとそんなことを考えた(ちなみに 3.5' フロッピーディスクドライブの回転数は 300 rpm)。
Floppy に刺激されて、若かりし頃のめり込んだ FDC 765 (Floppy Disk Controller) を思い出す。
IBM-PC のフロッピーディスクドライブ制御には、日本が誇る NEC uPD765 FDC が採用され、Super I/O は未だにその互換機能を搭載している。そして、この FDC 制御は数ある I/O programming の中でも、最高に exciting な部類に入る。私の感覚では、VGA register よりもさらに面白い。なぜなら、FDC は Golden 氏が述べているように、「メカ」だからである。
自分が書いたコードでステッピングモーターを動かし、ヘッドをロードし、セクターを読み書きする。この操作の間、シーク音やヘッドロード音、モーター音など、様々な音が私達の耳に入る。裸のドライブを観察すれば、動きも目に入る。さらに、一般には知られていないディスクフォーマットの最深部は、麻薬のように刺激的である(read diagnostic command を発行することで、ディスク上のデータのビットパターンを観察することが可能になる)。これほど面白いプログラミングテーマは、なかなかないだろう。
残念なことに、FDC の直接制御方法を解説した書籍は、私が知る限り我が日本のコピープロテクト関連書しかなく、いずれも絶版になっている。また、ネット上でも十分な資料は公開されていない。どうしてもリファレンスが欲しければ、インターフェース誌のコピーサービスを通じて入手することが可能であるが、これらの記事を読みこなすためには、専門的知識が必要となる。
ということで、来年 GCC プログラミング工房上で、FDC programming をシリーズで執筆する予定。VGA, RS-232C, タイマー,割り込み処理,FDC。このあたりまで片づけば、オリジナル OS 構築も夢ではない。Let there be light! は近い・・かな?