« ASCII 創刊号 | トップページ | ウイルスバスター マスコット人形(足裏シール付) »

2012年12月23日 (日)

スネークゲーム(SNAKE GAME)

I/O創刊号ASCII創刊号 を発掘してきて写真を載せたので、ついでにもう一つ、マイコン黎明期の歴史的資料として
↓MMA臨時創刊号 1978年11月29日
MMA 1978.11.29
表紙の少女は弓月光のパクリ(^^; 当時MMA内ではマーガレットの『ボクの初体験』が大うけで、初代自作マイコンの名前が「マーガレット」 二号機は(表紙─INDEX─の上から3つ目)「別冊マーガレット」という名前をつけてました。(いわゆるオタクのノリってやつですか(^^;)

これは電通大の大学祭:調布祭のときに作ったものだったかな~(記憶が薄れかけている…(^^;)
薄れかけた記憶をfacebookで友人に確認したら、1年ほどずれていたので、最初の記載を訂正してます。
この前年1977年の調布祭のメインテーマは「マイコンピュータ事始め」。このときMMAはまだ同好会で、でも時流に乗って調布祭のメインテーマとしてマイコンを担当することになったのでした。展示はキャンパス中央にある図書館ロビーで行ったし、B棟の講堂でマイコンゲーム“Star Trek” も実演したし~。この実績により、同好会から部に昇格したのでした(^o^)v
MMA臨時創刊号 1978年は、その翌年の調布祭のときに活動内容をまとめたものだと思います。たぶん(^^;

で、当時のことをWeb上に記録に留めるために…
P17の“SNAKE マイコンはオモチャだ!!
Snake Game
わら半紙の冊子なので、34年も経ってかなり黄ばんでいます。このスキャン画像データだけでは検索に引っかからないので、デジタル化しておきます↓(私が読んでタイプしているんですけど(^^;)


SNAKE マイコンはオモチャだ!!
あなたは、計算機とは計算をする機械だなどと思っているんじゃないですか。でも計算機というのは、計算をする機械じゃないのです。その証拠に、僕(関野)は本学の計算機科学科の4年生でありながら、今までに計算する為のプログラムは、2つしか作ったことがありません。特に現在出まわっているマイコン(8bit)は計算用には作られていません。マイコンで計算しようなどと思う人は頭がどうかしています。ではマイコンとはいったいなんでしょう。
実はマイコンはオモチャです。だからマイコンでは計算などというクソオモシロクないことはやらずに、ひたすら遊べばいいのです。というわけで、我がMMAでは“SNAKE”というゲームを作って遊びまくっています。

─── SNAKEゲームの説明 ───
SNAKEはヘビをあやつってネズミを食べるゲームです。ここではゲームのくわしい説明ははぶき(やってみればわかるでしょう。)SNAKEゲームの思想について説明します。SNAKEはヘビがネズミを食べつくせば勝ちという弱肉強食のゲームではありません。ネズミを食べつくしてしまうとゲームは終わりとなり得点はそれ以上増えません。高い得点を得るためには、ネズミを適当に繁殖させて時間切れになるまでネズミを食べ続けるのです。つまりこのゲームでは生態系のバランス維持とか、省資源問題についての考え方が習得できるのです。
何とアカデミックなゲームなんだろー


ちょっと当時のことを補足説明しないといけませんね~
当時「コンピュータ」は「電子計算機」と言った方が通りがよく、だから上の文章では「計算機」と書いてます。「パソコン」という言葉は…あったのだろうか? ASCII創刊号だって「マイクロコンピュータ総合誌」となっているし、「パーソナルコンピュータ」という言葉は生まれていたが、「パソコン」と略して一般的にはなっていませんでした。まだ「マイコン」の時代でした。

このゲームを作ったのは、富士通がLKIT-8というワンボードマイコンを展示会に出すにあたって、何かゲームをさせたい。そのゲームを作ってくれない?とMMAに打診してきたのでした。「出来たらLKIT-8を進呈します」という条件で。お~!その話乗った~! LKIT-8って10万円ぐらいでしたから、貧乏学生にとっては好条件(^_^)

で、どんなゲームを作るか? これが一番の難関でした。2週間ぐらい思い悩んだが、アイディアが出てこないので、新宿のゲームセンターに行って、どんなビデオゲームがあるのか視察。当時あったのはブロック崩しと、TRON風対戦ゲーム(動いた軌跡がブロックとして残り、そのブロックにぶつかるとアウト。ブロックを上手くかわしつつ、相手がブロックにぶつかるようにするゲーム)ぐらい。
このTRON風ゲームでは動いた軌跡のブロックは単純に長くなるだけなのですが、「のこブロックの軌跡の後ろの端を順に消していったらヘビみたいになるよね~。で、ヘビがエサを食べると、ヘビの胴体の中をエサが後ろへ後ろへと送られ、最後にヘビの長さが1つ長くなる。
エサは…ランダムに動いて、時々くっつき繁殖する(ここはライフゲームからイメージしました。)
なかなかイイ アイディアだゾ!(^o^)
どんなゲームを作るかが決まれば、後はひたすらプログラミングです。

─── SNAKEプログラムの説明 ───
Snake Game
このプログラムを作っていて一番楽しかったのは「ヘビを動かすルーチン」と「ネズミをのみこむルーチン」のところですね。ちょうど「データ構造論」という講義で「双方向リスト」を学んだばかりで、これを使えば~ヘビの各ブロックに前のブロック/後ろのブロックの情報を持たせて…上下左右の方向を2ビットで示せるから、前後のフロックを示すには4ビットで済む。1バイト(8ビット)の残り4ビットに属性情報を持たせて…お~なかなかコンパクト!キャラクタディスプレイ 80文字×24行=1920バイトで収まるぞ。当時のマイコンはメモリが少なかったですからね~

上記資料によると…
・使用メモリ容量 2.5Kバイト
・プログラム作成に使用した言語 アセンブラ 800ステップ

さて、どうプログラムを作るかもクリアになったし、後はひたすらプログラミングなのですが…
大学の前期試験の前(>_<)
試験勉強をするか、プログラミングするか? それが問題だ~!
でも期限のある仕事だしな~
このプログラムが出来たら面白いゾ~(^o^)
と、試験勉強をせずにプログラミング(何日間か興味の無い講義には出ずに、図書館でプログラミング)

あ、ここで当時のマイコンのプログラミングについて補足説明…
現在、プログラミングといえばキーボードを叩きますが、当時のプログラミングは紙にコーディング。
コーディングしたら、そのコードをじっと睨んで、頭の中で動きをシミュレーションして、「机上デバッグ
これでヨシ!(動くハズ)という自信を持てるコードになったら、「ハンド・アセンブル
SNAKEゲームの場合、800ステップもあったから、それをハンド・アセンブルするのは大変(@_@)
このハンド・アセンブルの手間を軽減するために使ったのが、日立のH68/TR  これにはコンソールにフルキーが付いており、簡易アセンブラを内蔵していたのです。なかなかの優れものだったのでMMAで購入してあったのかな?それとも誰かの私物を借りたのかな?(記憶が定かでない)
富士通のLKIT-8用のプログラムを日立のH68/TRを使って開発するってのもちょっとアレですが、まぁ効率優先・期限厳守ですから。あ、どちらのマイコンもモトローラのMC6800だったので、そういう技が使えたのです。で、プログラムコードをH68/TR → LKIT-8に移すには、カンサスシティスタンダードでカセットテープを使って… てなことをして、SNAKEゲームが完成したのでした~w(^o^)w

出来上がったSNAKEゲームを富士通の人が受け取りに来て、SNAKEゲームを見て…「学生に作らせると、面白いものができるもんだね~」みたいな感想を漏らしてました。
で、プログラムを記録したカセットテープを富士通に渡し、LKIT-8はめでたくMMAの所有となったのでした~
そして、1977年の調布祭「マイクロコンピュータ事始め」では、このLKIT-8を使ってSNAKEゲームを図書館ロビーで公開。その脇にカンパ用の箱を置いといたら、百円玉だけじゃなくて、千円札も入ってた~!
実はその千円札は私の親が入れたものと判明(^^; 「調布祭を見に行ったけど、おまえいなかったじゃないか。だけど千円入れてきたよ。」と… その時間帯、私はB棟の講堂でマイコンゲーム Star Trek の解説・実演をしてました。


ところで、「スネークゲーム」で検索したら約 846,000 件もある~!
「"snake game"」で検索すると約 15,100,000 件。
「snake game 」(最後スペース)でサジェストされるリストに「snake game classic」ってある。
え~!スネークゲームって、ゲームの古典になっちゃってたんですか~!
原作者が知らないうちにスネークゲームって長~く生き延びて繁殖していたんですね~ 35年の間に…
(このブログ記事を書いて、私がスネークゲームを作ったのは 1977年(大学3年生)の前期試験前だったと明確になりました。これからも記憶は薄れていくからな~ブログに記録を残しておかなきゃ…と思う今日この頃)

※ブログに自分の活動記録を残した力作(^^?
科学体験クラブ府中での10年間の出展報告書をまとめてみた


※2013/4/22追記
そういえば:Googleさんからの年賀状がスネークゲームだった件 - ねとらぼ
…という記事を今日になって見つけた(^^;
え~!そうだったんですか~ 2013/1/1にPCを起動しなかったんだっけ?

« ASCII 創刊号 | トップページ | ウイルスバスター マスコット人形(足裏シール付) »

パソコン・インターネット」カテゴリの記事

コメント

コメントを書く

(ウェブ上には掲載しません)

« ASCII 創刊号 | トップページ | ウイルスバスター マスコット人形(足裏シール付) »

フォト
2017年6月
        1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30  

Google AdSense


無料ブログはココログ

blog parts

  • ココログカレンダーPlus 月曜はじまり