BELUGAmkII 特攻空母ベルーガ

ニコニコ動画をぶらぶらしていたら、とんでもない動画を見つけた。「BELUGAmkII 特攻空母ベルーガ

なんのこっちゃわからん人のために、ちょっと解説。

今から27年前の1981年に発売された、NEC製 PC-6001というパソコンがあります。1981年から1984年ごろまでに、さまざまなシリーズが発売され、当時のパソコンおたく(とは言わなかったけど)に、大変な人気を博したパソコンでした。

CPUは、4MHz、今のパソコンだと3GHzなんてあるから、1000分の1のクロック。当然キャッシュは分岐予測なんてありません。
メモリは最小構成で16KB。拡張したり、シリーズ後期のモデルでも、64KB。今のPCなら、4GBくらい積んでるのも普通なんで、100分の1近く。(2015年1月19日追記 10万分の1です)

そのパソコン用のゲームとして発売された、Tiny XeviousやTiny Xevious mkII、スペースハリアーなどのソフトウエアを作成した、T.Matsushima氏。これらのゲームは当時とても有名なゲームでした。

さて、この動画は2007年末に公開された、このPC-6001で動くゲームだそうです。

20年以上前のPCであっても、これだけのゲームが作れるということです。

まぁ極論を言ってしまえば、当時の技術でも作れたということになりかもしれませんが、僕はその意見には、あまり賛同できません。

このゲームがどのような開発環境で作られたのか、詳しくはわかりませんが、おそらく現在の技術を使って作られていると思います。いや、プログラム自体は変わってないんでしょうけど、コンパイラ(というかアセンブラ)だったりソースを編集するエディタだったり。もちろんソフトウエアの考え方だったり。当時の環境でここまでやろうとしたら、とんでもなく大変な労力が必要で、本当に使わなければいけないこと以上の労力が必要だったかもしれません。20数年の間にソフトウエア技術って、そんなにも進歩したっていうあかしだと思います。

でもね。でもね。

ふと振り返ってみると、ちまたにあふれている、さまざまなソフトウエアに、この進歩したソフトウエア技術が適切なところに使われているのかな、って考えさせられてしまう動画です。

CPUの性能比で1000倍です。でも、1000倍なめらかにパソコンが動くようになったわけではありません。1000倍いろんなことをやるようになったために、昔と使いやすさは変わってないんじゃないかと。でも、1000倍もいろんなことやってるのって、本当に使いやすさに必要なんだろうかと。

もちろん、当時のPCで、Webブラウザ動かせとか、Blog編集ツールを動かせということじゃないです。Webブラウザ動かすなんて、とんでもない量のできごとがパソコンの中で行われています。

なんとなくなんだけど、本質的なものにこだわったら、そんなに必要なことって少ないんじゃないかなぁと。

T.Matsushima氏の凄さってのは、20年以上たった今でも凄いってことなんだろうなぁ。凄いプログラムって時代が変わっても凄さに変わりはなくて、人をかんどうさせるんですねぇ。

先日書いた、「今のソフトウエアは余分なことをやりすぎているのかも」の続きのようです。

詳細をいろいろぐぐってみたら、T.Matsushima氏のメールの一部が公開されていました

このソフトは画面を描画するのにDIRECTX9を使用していますので、
DIRECTX9が必要です。

P6エミュではないのでPC-6001では実行できません。
同一のPSG、画像チップ、64KBメモリ相当の仮想マシンを作っただけで
実在するマシンですらありません。

ひ~。さらっと仮想マシン作っちゃいますか。DirectX9を使っているということで、現役のプログラマを続けていらっしゃるみたいです。すげ~。すげ~、すげ~。メールではPC-6001では実行できませんと書かれていますが、その後、ちゃんと実機でも動いているようです。

お手元のソフトは、もう私の手を離れた子供達なので、どう扱うかは皆さんにお任せします。
作った人間が拡散状況にずっと干渉し続けるのも気持ち悪いですし。

いやぁ。大人ですよ。かっこよすぎます。あこがれます。どうやって作ったのか、是非とも本を書いてほしいです。

「BELUGAmkII 特攻空母ベルーガ」への2件のフィードバック

  1. 古い記事にコメントして申し訳ありませんが、メモリは100分の1近くじゃなくて100000分の1近くですよ。

    1. 64K ÷ 4G だから、10万分の1ですね。おっしゃるとおりです。ありがとう。

コメントを残す

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください