こんにちは。今IPAの未踏事業で開発をやっているのですが、その関係で兵庫県立西宮香風高校で出前授業をさせて頂きました〜!ちなみに新幹線で新大阪に降りたのはこれが人生初めてです!(ぇ
沢山のライブラリやOSがコンピュータの低レイヤの部分を完全に覆いさってしまい、プログラマでもコンピュータのごくごく基本的なアセンブラやメモリの動きを実感を持って理解しているとは限らない現代において、ファミコンのいわゆる「改造」を通じてそれを伝えることは出来ないだろうか?という企画です。
ゲーム機を再現したソフトウェアであるエミュレータと、それをターゲットとした簡易デバッガの組み合わせです。機材の関係で写真だとパソコンで作ってますが、Nexus7でも動いています。
命令実行や命令とメモリとの対応をなんとか可視化できる状態で授業に持ってこれました。60FPSでレンダリング出来る他、右下の「戻る」ボタンでは時を司るスクリプト言語ど〜なっつの能力を借りて、理解できなかった所まで巻き戻してやり直す、なんてことも出来るようになっています。
ファミコンに限らずコンピュータは全て「数字の計算」で動いている事を実感してもらったあと、メモリの検索や比較で目的の値を絞り込んでいき、キャラクタをワープさせてめり込ませたり、残機数を増やしてみてもらいました。
当初想定してた以上にハードな改造をして、当たり判定を全てすり抜けるようにしたり、隠しメッセージまで表示させてる人も居たりと、想定外な感じの出前授業となりました。
当初の目的はなんとか果たせたのではないかな〜と思います。兵庫県立西宮香風高校の皆様、ありがとうございました。
IPAの成果報告会でも喋ります〜〜
今週末土曜日に秋葉のUDXでやる「第19回未踏事業」成果報告会で実物展示や、「何度でもやり直せる」システム面についての話を行なってくる予定です〜。17:35からの予定なので、お仕事や学校の帰りにたまたま秋葉を通るような方が居たらぜひいらしてください!