MCL(11)

インデックスに戻る

前のMCLへ  次のMCLへ

▼ My Computer Life (11)

11. MSXの日々

 MSXを持っている友達の家に良く遊びに行くようになり、自分の物ではないながらも結構MSXに触れる機会が多くなった。その時の経験は、その後に大きく繋がったように思う。

 まず、前回でも触れたが、ベーマガ等のリストを入力して遊ぶ事が多く、それはそれでプログラムの勉強になった。
 前にも書いた通り、私は「MSX早わかり事典」という本で勉強し、電機屋の店頭で少々動くプログラムを動かしただけで、自分ではそこそこプログラムというものについて理解したつもりでいたが、やはりそれでは不十分もいいところで、今から考えるとほとんど何も理解出来ていない状態に近かった。
 それが、ベーマガのリストを入力したりして、他人のコードを色々読むようになってくると、それまで見えてこなかった物が見えてくる。そうやって、自分のスキルを向上させていた。

 ただ、そこでの経験が逆に、私の中でのプログラマというものに対する「諦め」をある程度生んでしまった事は否めない。
 というのも、前回説明した通り、ベーマガ等雑誌に載るようなリストでは、出来るだけコード量が短く、かつ実行速度の速い定石的なコードの組み方というのが結構ある。私がベーマガのプログラムを打ち始めた当初、それらの定石的コードがあまりにも技巧的だったので、色々一つずつ動作を確認していき、最終的には、「このプログラムは凄い。この組み方は、自分にはとても真似できない」、と考えるようになった。そのように思い、自分の中でプログラマとして凄い人になろうという事は諦めたし、また自分自身がそういう事には全く向いていない人間だとも自覚していた。
 もちろん、その頃の私は勘違いをしている。
 そのような技巧的な定石的プログラムでも、書いている人全員がその場で思いついてスラスラ書いている訳ではない。大抵の場合、その定石部分は更に前に誰かが書いたプログラムから流用してきており、便利なルーチンとして使用しているだけなのだ。そしてもう一つ、その当時雑誌にプログラムを投稿していたのは、恐らく学校でコンピュータをいじれる大学生かせいぜい高校生くらいだったのに対し、私は自分のコンピュータすら持たない小学生であったという事だ。当然、思考力のキャパシティが小さい小学生が、大学生などと同等のプログラム能力を持っている訳がない(…とは言い切れないが、持ってたら怖い)。そのへん、身の程をわきまえていない私は、無駄に力量の差を感じていたと言っていい。
 とにかくそういう事で、私はコードを工夫してプログラマとしての技量を上げようと思った事はほとんどないまま今日に至ってしまった。それには、そういう初心の頃の思い出があるからだ。
 しかし今でも似たような事は思う。技巧的に良く練られたコードを見ると、私にはそこまでのコードは書けないといつも感心するし、やはり諦めに近い気持ちを抱いてしまう。

 少し話がそれた。
 プログラムを打ち込んだり、デバッグしたりは、とても楽しかったし、大変勉強になった。
 大体リストを入力している時は、ゲームしたい一心で必死に入力している。一刻も早くやりたい、ゲームで遊びたいという気持ちで打っている内に、段々プログラムの内容からゲームの動作を把握し始めるようになってくる。何本も入力していると、「ははーん、こういう事するゲームなんだな」、という事が実行する前からわかってくる。
 また、実際に動かしてデバッグしていくと、例えばバグの種類からどんな入力ミスを犯したか段々見当がつくようになるので、ソースのどこを間違えたのか、わかるようになってくる。
 そんなこんなで、リストの入力という事自体が私にとってのプログラムの訓練になっていた。

 最近は人様のプログラムの入力はあまりしないが、でも結構いい思い出ではある。マシン語の入力なんかは、上記のようなプログラムの勉強にはならないけど、それはそれで思い出深い。
 というのも、リスト中に埋め込まれたマシン語や、あるいはスプライトデータなどは、大体16進数の形のデータの羅列になっている。本には、「16,FE,3D,A4…」などと書いてある訳だ。
 で、それを入力するのだが、大抵どこを入力しているのか段々わからなくなってくる。そこで、私はこのような16進数の羅列を入力する時には、近くの人に読み上げをお願いする事にしていた。誰かに口で「イチロク、エフイー、サンデー、エーヨン…」などと言ってもらうのだ。で、私は一応両手でタイピングできるので、普通に読み上げてくれれば大体入力できる。
 そういう事をしている内にルールも出来てきて、例えば読む方は「D」を「ディー」と発音してしまうと、場合によっては「E」や「B」などと聞き間違える時があるので、そこはあえて年寄りくさくなるのを我慢して、「デー」と読んでもらう事にしたりしていた。これはのちに自分の家でプログラムを入力するようになった時でも、兄弟にやらせていたので、今でも話せば思い出す事だろう。

 そんな風に、つい先日ビデオゲームレビューの方で紹介したMSX用の「ボコスカウォーズ」などをやるかたわら、プログラムに対する理解を深めつつある自分がいたりしたのだった。


前のMCLへ  次のMCLへ

戻る

TOM 2003