伝説の「Donkey.bas」が45周年!わずか131行に詰まったプログラミングの歴史
Donkey.bas is 45 Years Old – 131 line of Glory
Donkey.bas is 45 Years Old – 131 line of Glory
ビル・ゲイツらによって書かれた歴史的プログラム「Donkey.bas」が誕生から45周年を迎えました。わずか131行のコードで構成されたこのゲームは、PC史に残る象徴的な存在として今もなお語り継がれています。
IBM PCの45周年を記念して、手持ちのポンコツマシンでDONKEY.BASをブラウザで動くように移植してみた。結果にはかなり満足してる。若い頃、こんなに少ないコードでゲームが作れることにすごくワクワクしたのを覚えてるよ。
いい仕事だね。ただ、初期のIBM PCに搭載されていたのは磁気駆動のシンプルなダイナミックスピーカーだったから、今の音響効果はちょっと高度すぎるかも。
話は変わるけど、自分はここ4ヶ月間、QBasicとQuickBasic 4.5の完全忠実な再現プロジェクトに取り組んでる。仮想CPUとハードウェア抽象化レイヤーを使ってブラウザ上で動作するものだ。80年代から90年代初頭にかけてMicrosoftのBASICインタプリタでプログラミングを学んだ人たちへのラブレターみたいなものさ。
今のところ一番嬉しい褒め言葉は、同世代の友人たちからの反応かな。ブラウザを全画面表示にすると、本物が動いてる仮想マシンだと勘違いされたんだ。
BASIC版のDONKEY.BASのQBasic移植版は、このエミュレータで最初に動かしたプログラムの一つだよ。
https://mordenstar.com/share/qbasic-core-demos
GORILLA.BASを思い出すなあ!
https://en.wikipedia.org/wiki/Gorillas_(video_game)
祖父がGames BASICAのフロッピーをもらったんだけど、そこにこれや他のゲームが入ってたんだ。ただ、そのコピーには誰かが「改造」を加えたゲームがいくつかあってね。DONKEY.BASでロバにぶつかると「YOU STUPID SONOFABITCH」と罵倒されるようになってた。僕らはそれが面白くて仕方なかったけど、祖父は全然笑ってなくてね。バレた瞬間に没収されたよ。
DONKEY.BASを知らない人のために言うと、これはビル・ゲイツが共同執筆したことで有名なんだ。歴史についての詳細はこちら:
https://en.wikipedia.org/wiki/DONKEY.BAS
DONKEY.BASがビル・ゲイツがMicrosoftで最後に書いたコードっていう噂を聞いたことがある。本当かどうか気になるね。
自分のパーセプトロンならこのゲームをプレイできると思うよ。
https://github.com/victorqribeiro/carGamePerceptron
ゲーム理論として完全に間違ってるよ。これは協力ゲームなんだから、両方勝つか両方負けるかのどっちかだ。ロバが車にぶつかるのを「ロバの勝ち」と分類する意味がわからない。
PC 5150で動くDONKEYの様子だよ:
https://youtu.be/kmCMkD1vv0E?si=RqGhqIC-EHVhXnDI&t=145