懐古コードの発掘
このブログでレトロゲームの想い出話を書くようになってからというもの、やたらと懐古的な気分になりやすくなり、このところ倉庫から昔のカセットとかを引っ張り出しては、「あ~!こんなのあったなぁ~」という感じな日々が続いています。
そんな中、先日はこのような物を発掘してニヤリとしてしまいました。
それは…
ですwww
コンピュータに携わる仕事をしているので、たまに世間話程度には出てくるハードウェアではありましたが、1986年を最後に一度も出していなかったので、かなりヤヴァイ保管状況になっていました…(割と湿度の高い所に保管されていたために、カセットのシールが風化{酸化?}してしまったりしていました…w)
そして驚いたのは、コレの箱の中にマニュアルと一緒に自作ゲームのソースコード(紙ベース)が出てきました。
このようなブログでも書いていなければ、人目につかずにそのまま墓まで一緒に行ってしまいそうだったので、これを機にここで公開してみようかと思いました。
このソースは、当時ファミリーベーシックを覚えたての頃(1984年の秋口)辺りから、その年のクリスマスに作成したという想い出があります。
それでは、以下に内容を…
---- ここからが当時(1984)の私の説明 ----
【タイトル】
SUPER PENPEN(スーパーペンペン)
【ストーリー】
秘密捜査官のペンペンは宇宙ギャングが持つ重大な情報の入手をクライアントから依頼され、これの入手に成功して脱出を図ろうとしたところ、ギャングの設置した防犯装置に引っ掛かってしまい、脱出用宇宙船までの道が苦しい脱出になってしまうのであった…
【操作方法】
・ペンペンを左右に動かして、部屋の出口に進んでください。
・ファイアーに触れるとミスとなります。
・ルーム4はトラップステージとなっており、どこかの位置でSTARTボタンを押します。
【特徴】
・BG入力が不要で実行できます。
・ステージが5つあります。
---- これからが現在(2008)の私の説明 ----
【環境】
・V1.0で動きます。
・グラフィックモードのBG入力が不要です。(プログラマブルで構築しています)
【実行方法や操作方法等】
・ソースを入力して、RUNするとSTARTボタンを促されます。STARTボタンでゲーム開始です。
・自機であるペンペンを左右に動かし、右側の部屋の出口へ移動させます。
【ソースコード】





って、20年以上前のこんな汚ったねー手書きのソース掲載じゃヤヴァイので、清書を以下に…
※スプライト定義にカタカナがありますが、これは1バイト表現です(このコード打つ人なら分かるとは思いますが…(^^))
【その他(20年以上前の自分を他人としてみての説明と所感)】
・当時のベーシックマガジン等に掲載されているゲームというのは、ゲーム内容がチープな分、やたらとストーリー背景があったと記憶しています。多分、このゲームのストーリーもそんなものだと思いますw
・自機は1機しかいません。
・かなりシビアなゲームです。難易度が洒落にならないです。作ったのは私自身ですが、「ヲイヲイ!」とか思ってしまいましたw
・4面は速攻で進んで行き、ファイアに触れそうになる辺りでSTARTを押下していればクリアできます。
・DEF MOVE(高機能スプライトアニメーション)を使用していないのは、ペンペンをカニ歩きさせたかったのと、ファイアみたいなトリッキーな動作をさせたかったからだと思いますw
・ミスの際、パレット処理にて自機をコゲた感じを出しているのだと思います。ちょっと感心。
・ゲームクリアで星をRND関数とか使って描いています。これもちょっと感心。
・効果音以外にも何げに曲を何曲か作曲しています。しかも和音で書いていてビックリ。
・ギリギリのソースコード領域を使っているみたいです。適当にあと数行の追記をしてみたらOM(Out of Mememory)エラーになりました。その為か、ステートメントが割と圧縮されていますね。LOCATEとPRINTの文法とかMSXのBASICでは通らない気がしますw
・この時代は雑誌にこんなミニゲームばっかりが掲載されていましたねぇ。シミジミ。
【その他】
あまりにも懐しすぎて動画を撮ってしまいました。Youtubeにアップロードしています。
◇ ◇ ◇
当時はこのようにソースを書いては、データレコーダーを持っていなかった私は、紙に書き留めていたりしました。
これは普通のカセットレコーダーでは何故か上手くセーブができず、セーブを完了したとしても、その後のベリファイに失敗したり、一度メモリをクリアしてロードを行っても読み込みに失敗して、その日一日かけて入力したものが無駄になり、テレビの前でボーゼンとする…という状況が、「ファミリーベーシックのみではなく、ぴゅう太でも発生していた…」という事から紙に書き留める作業を行うようになりました。
(テープレコーダーのボリュームの調整等も行いましたが、何故か上手く行かない…って感じでした。テープの内容を聴いてみるとピーガー言っていたので、セーブは出来ていたとは思うのですが、それでもNGとなっていました。そして時代的にプリンタなんて高級なものは当然ありませんでした…)
この事から、「データレコーダーがある家庭=ボンボン」「プリンタがある家庭=貴族」位の図式を偏見で持ったものですw
また、ファミリーベーシックのカセットには電池がセットでき、このバッテリー機構でデータのバックアップが行えるのですが、これがまたとても曲者で、このカセットのバックアップON/OFFスイッチを切り替えようとカセットに触ると、カセットの接触不良で、ソフトがフリーズする…なんて事がザラでした。
(ファミコンのカセットでは誰もが経験したことがあるであろう、あの「接触不良でゲームが止まる」というヤツですねw)
この為、私の取った確実な方法が「本体に触れずにリストを紙に書き留める。」という事になった訳です。
そして、この手のプログラムを作っては、「ベーシックマガジンに投稿したい!」と思い、電波新聞社に電話をして問い合わせたところ、「ウチでは手書きのリストは扱っていないので、テープかフロッピー、もし紙だとしたらプリンタで出力したものを郵送してください。」と言われ、電話の前で「orz」となっていたという、とても悲しい想い出があります(°дÅ)ホロリ
この時の私は「けっ! ベーマガっつー雑誌は、金持ちだけしか相手してくんねーのかよっ!」と、「しあわせのそねみ」のキャラクターのようになってしまっていました…(嗚呼、恥かしいw)
今考えると、馬鹿みたいな事を思っていたりしたものです。
もちろん今では当然そんな事は思いませんが、当時の私の頭の構造は厨房回路だったので、そこは一つ暖い目でって感じです。(^^ゞ
このような遍歴を重ねたお陰でリストが紙で残り、20年以上経ったソースが入力できて、且つこうしてお披露目できたので、これはとても良い流れだったのかと思います。
もしもこれがテープの媒体として残っていたら、テープがカビたりして再生できなかったかもしれないですしね。(と、前向きに考える事にしますw)
◇ ◇ ◇
という感じで、こんな時代からゲームプログラムを書いていますが、たまたまこのような場があるから話題に出せるものの(このブログを読んでいる私をよく知っている方々にこんな話をするのも初めてですし)、これがなければ、本当にタダの独りよがりのバイブレーション(by BOOWY)並のマスターベーションプログラムだと思います…が、なんだかんだいってサンデープログラミングはやめられないので、こんな感じで独りで何十年も作っていくんだろうなぁ~とかも思います。
まさに!
ですwwww
カナ入力がこの配列で使えるのはファミリーベーシックだけ!(ジャンプ風) << ウソです
お後はよろしくないですが、こんなところで。(^^ゞ
そんな中、先日はこのような物を発掘してニヤリとしてしまいました。
それは…
ですwww
コンピュータに携わる仕事をしているので、たまに世間話程度には出てくるハードウェアではありましたが、1986年を最後に一度も出していなかったので、かなりヤヴァイ保管状況になっていました…(割と湿度の高い所に保管されていたために、カセットのシールが風化{酸化?}してしまったりしていました…w)
そして驚いたのは、コレの箱の中にマニュアルと一緒に自作ゲームのソースコード(紙ベース)が出てきました。
このようなブログでも書いていなければ、人目につかずにそのまま墓まで一緒に行ってしまいそうだったので、これを機にここで公開してみようかと思いました。
このソースは、当時ファミリーベーシックを覚えたての頃(1984年の秋口)辺りから、その年のクリスマスに作成したという想い出があります。
それでは、以下に内容を…
---- ここからが当時(1984)の私の説明 ----
【タイトル】
SUPER PENPEN(スーパーペンペン)
【ストーリー】
秘密捜査官のペンペンは宇宙ギャングが持つ重大な情報の入手をクライアントから依頼され、これの入手に成功して脱出を図ろうとしたところ、ギャングの設置した防犯装置に引っ掛かってしまい、脱出用宇宙船までの道が苦しい脱出になってしまうのであった…
【操作方法】
・ペンペンを左右に動かして、部屋の出口に進んでください。
・ファイアーに触れるとミスとなります。
・ルーム4はトラップステージとなっており、どこかの位置でSTARTボタンを押します。
【特徴】
・BG入力が不要で実行できます。
・ステージが5つあります。
---- これからが現在(2008)の私の説明 ----
【環境】
・V1.0で動きます。
・グラフィックモードのBG入力が不要です。(プログラマブルで構築しています)
【実行方法や操作方法等】
・ソースを入力して、RUNするとSTARTボタンを促されます。STARTボタンでゲーム開始です。
・自機であるペンペンを左右に動かし、右側の部屋の出口へ移動させます。
【ソースコード】





って、20年以上前のこんな汚ったねー手書きのソース掲載じゃヤヴァイので、清書を以下に…
1 CLS:A=2:B=3:DEFSPRITE1,(0,1,0,0,0)="ピプペポ":DEFSPRITEA,(0,1,0,0,0)="ケコサシ":DEFSPRITEB,(0,1,0,1,0)="コケシサ":DEFSPRITE4,(1,1,1,0,0)="チツテト" 2 PALETS 0,15,48,38,18:PALETS 1,15,48,38,22:R=1:SPRITE1 3 LOCATE10,10PRINT"PUSH START":IFSTRIG(0)<>1THEN3 4 PLAY"T1Y2O5B5GGFERCD:Y2T1O1G5FEGFECD" 5 CLS:X=0:Y=127:LOCATE9,5PRINT"SUPER PENPEN":LOCATE12,7PRINT"ROOM";R:FORN=0TO27:LOCATEN,10PRINTCHR$(192):LOCATEN,15PRINTCHR$(192):NEXT:SPRITEON 6 FORN=0TO24:SWAPA,B:SPRITEA,X,Y:SPRITEB:X=X+1:PAUSE6:NEXT:I=10:FORN=0TO4:LOCATE0,I:PRINTCHR$(192):I=I+1:PLAY"O1C0D":NEXT 7 ONR GOTO8,9,11,12,13 8 W=200:Z=110:J=7:GOTO35 9 W=200:Z=115:J=4:GOTO40 11 W=240:Z=127:J=20:GOTO47 12 W=205:Z=127:GOTO49 13 W=0:Z=127:K=127:SPRITE1,240,K:GOTO51 20 T=STICK(0):IFT=1THENX=X+3:GOSUB23:GOSUB56:IFX>236THEN54 21 IFT=2THENX=X-3:GOSUB23:GOSUB25:IFX<24THENX=24 22 PAUSE6:GOSUB25:GOTO24 23 SWAPA,B:SPRITEA,X,Y:SPRITEB:RETURN 24 SPRITE4,W,Z:RETURN 25 IFX>W-12THEN27 26 RETURN 27 IFX<W+12THEN29 28 RETURN 29 IFY>Z-10THEN31 30 RETURN 31 IFY<Z+10THEN72 32 RETURN 35 J=J-1:Z=Z+J:W=W-5:GOSUB20:IFJ=-7THEN38 36 IFW<24THENW=200 37 GOTO35 38 J=J+1:Z=Z+J:W=W+3:GOSUB20:IFJ=7THEN35 39 GOTO38 40 J=J-1:Z=Z+J:W=W-10:GOSUB20:IFJ=-4THEN43 41 IFW<24THENW=230 42 GOTO40 43 J=J+1:Z=Z+J:GOSUB20:IFJ=4THEN40 44 GOTO43 47 J=J-1:W=W-J:GOSUB20:IFW>235THENW=24:J=20:FORN=0TO44:GOSUB20:NEXT:W=250 48 GOTO47 49 W=W-1:GOSUB20:GOTO49 51 FOR N=0TO14:GOSUB20:NEXT 52 W=W+4:GOSUB20:GOTO52 54 IFR=5THENPLAY"O3B5BBGAO4C":GOTO65 55 R=R+1:SPRITEOFF:SPRITE4:PLAY"O4E5EGFR5DFAEGO5C9":PLAY"O4E5EGF7D5E7C":GOTO5 56 IFR=4THEN58 57 RETURN 58 IFX>150THEN60 59 RETURN 60 IFSTRIG(0)<>1THENRETURN 62 LOCATE17,15PRINT" ":S=0:PLAY"O5B5DGGEC:DFGEC" 63 PAUSE6:S=S+1:Y=Y+S:SPRITEA,X,Y:IFY>235THEN55 64 GOTO63 65 SPRITEA:K=K-1:SPRITE1,240,K:IFK<20THEN67 66 GOTO65 67 SPRITEOFF:CLS:FORN=0TO99:LOCATERND(27),RND(23):PRINTCHR$(205):NEXT 68 LOCATE7,4PRINT"CONGRATULATIONS":LOCATE10,7PRINT"YOU CLEAR!":LOCATE9,13PRINT"SUPER PENPEN" 69 PLAY"O3Y2G6ABGGABR9G6F:O0C8CGCG" 70 PLAY"A9G8F7G4F5A6BAFO5GGG:CDEAGB" 71 GOTO2 72 SPRITE4:PALETS 0,15,5,8,13:PLAY"O0B4AGFEDC":PAUSE100 73 CLS:SPRITEOFF:LOCATE10,10PRINT"GAME OVER":PLAY"O5C5CGGAAGRFFEEDDC":PAUSE100:GOTO2 |
※スプライト定義にカタカナがありますが、これは1バイト表現です(このコード打つ人なら分かるとは思いますが…(^^))
【その他(20年以上前の自分を他人としてみての説明と所感)】
・当時のベーシックマガジン等に掲載されているゲームというのは、ゲーム内容がチープな分、やたらとストーリー背景があったと記憶しています。多分、このゲームのストーリーもそんなものだと思いますw
・自機は1機しかいません。
・かなりシビアなゲームです。難易度が洒落にならないです。作ったのは私自身ですが、「ヲイヲイ!」とか思ってしまいましたw
・4面は速攻で進んで行き、ファイアに触れそうになる辺りでSTARTを押下していればクリアできます。
・DEF MOVE(高機能スプライトアニメーション)を使用していないのは、ペンペンをカニ歩きさせたかったのと、ファイアみたいなトリッキーな動作をさせたかったからだと思いますw
・ミスの際、パレット処理にて自機をコゲた感じを出しているのだと思います。ちょっと感心。
・ゲームクリアで星をRND関数とか使って描いています。これもちょっと感心。
・効果音以外にも何げに曲を何曲か作曲しています。しかも和音で書いていてビックリ。
・ギリギリのソースコード領域を使っているみたいです。適当にあと数行の追記をしてみたらOM(Out of Mememory)エラーになりました。その為か、ステートメントが割と圧縮されていますね。LOCATEとPRINTの文法とかMSXのBASICでは通らない気がしますw
・この時代は雑誌にこんなミニゲームばっかりが掲載されていましたねぇ。シミジミ。
【その他】
あまりにも懐しすぎて動画を撮ってしまいました。Youtubeにアップロードしています。
当時はこのようにソースを書いては、データレコーダーを持っていなかった私は、紙に書き留めていたりしました。
これは普通のカセットレコーダーでは何故か上手くセーブができず、セーブを完了したとしても、その後のベリファイに失敗したり、一度メモリをクリアしてロードを行っても読み込みに失敗して、その日一日かけて入力したものが無駄になり、テレビの前でボーゼンとする…という状況が、「ファミリーベーシックのみではなく、ぴゅう太でも発生していた…」という事から紙に書き留める作業を行うようになりました。
(テープレコーダーのボリュームの調整等も行いましたが、何故か上手く行かない…って感じでした。テープの内容を聴いてみるとピーガー言っていたので、セーブは出来ていたとは思うのですが、それでもNGとなっていました。そして時代的にプリンタなんて高級なものは当然ありませんでした…)
この事から、「データレコーダーがある家庭=ボンボン」「プリンタがある家庭=貴族」位の図式を偏見で持ったものですw
また、ファミリーベーシックのカセットには電池がセットでき、このバッテリー機構でデータのバックアップが行えるのですが、これがまたとても曲者で、このカセットのバックアップON/OFFスイッチを切り替えようとカセットに触ると、カセットの接触不良で、ソフトがフリーズする…なんて事がザラでした。
(ファミコンのカセットでは誰もが経験したことがあるであろう、あの「接触不良でゲームが止まる」というヤツですねw)
この為、私の取った確実な方法が「本体に触れずにリストを紙に書き留める。」という事になった訳です。
そして、この手のプログラムを作っては、「ベーシックマガジンに投稿したい!」と思い、電波新聞社に電話をして問い合わせたところ、「ウチでは手書きのリストは扱っていないので、テープかフロッピー、もし紙だとしたらプリンタで出力したものを郵送してください。」と言われ、電話の前で「orz」となっていたという、とても悲しい想い出があります(°дÅ)ホロリ
この時の私は「けっ! ベーマガっつー雑誌は、金持ちだけしか相手してくんねーのかよっ!」と、「しあわせのそねみ」のキャラクターのようになってしまっていました…(嗚呼、恥かしいw)
今考えると、馬鹿みたいな事を思っていたりしたものです。
もちろん今では当然そんな事は思いませんが、当時の私の頭の構造は厨房回路だったので、そこは一つ暖い目でって感じです。(^^ゞ
このような遍歴を重ねたお陰でリストが紙で残り、20年以上経ったソースが入力できて、且つこうしてお披露目できたので、これはとても良い流れだったのかと思います。
もしもこれがテープの媒体として残っていたら、テープがカビたりして再生できなかったかもしれないですしね。(と、前向きに考える事にしますw)
という感じで、こんな時代からゲームプログラムを書いていますが、たまたまこのような場があるから話題に出せるものの(このブログを読んでいる私をよく知っている方々にこんな話をするのも初めてですし)、これがなければ、本当にタダの独りよがりのバイブレーション(by BOOWY)並のマスターベーションプログラムだと思います…が、なんだかんだいってサンデープログラミングはやめられないので、こんな感じで独りで何十年も作っていくんだろうなぁ~とかも思います。
まさに!
ですwwww
カナ入力がこの配列で使えるのはファミリーベーシックだけ!(ジャンプ風) << ウソです
お後はよろしくないですが、こんなところで。(^^ゞ
コメント
初めまして。
初めまして~
初めまして、Beepさん。このブログ書いているOKIです。(^^)
>YouTubeで「ファミリーベーシック」を検索していたら
>このサイトへ来ました。
www
Youtubeのカウンタをみると、割とあの動画を見ている方がいますね。
私の勘だと「V3のCMでも見たくて検索していたついでに引っかかったかな?」とか思っているのですがw
「ファミリーベーシック専用カセット V333333333333333333333333333333333333333」
初めて見たときには、テレビの前で卒倒しました。「マ、マイク使えるの?」と。
>スーパーペンペンは、なかなか面白いゲームですね。
>ひとつひとつのステージがどれも個性的で面白いです。
あはははは。あえてコメントを頂くとお恥かしい。(^^ゞ
今見るとあまりの難易度にビックリしました。
>もしOMエラーがでたら:やTHENをDELキーで削除すると良いですよ。
www ですよねー。
某サイトの言葉ではないですが、「文法的にはDr.Dに怒られそう」ですがwww
この手のチューニングはかなり後期になって編み出されましたよねー。
POKEで直接、RAM空間を操るとか…
>これからも面白いゲームが出来ましたらアップして下さいね。
ブログのタイトルどおり、だらだらやっていこうと思っていますが、がんばりますね。(´▽`)
それでは♪
>YouTubeで「ファミリーベーシック」を検索していたら
>このサイトへ来ました。
www
Youtubeのカウンタをみると、割とあの動画を見ている方がいますね。
私の勘だと「V3のCMでも見たくて検索していたついでに引っかかったかな?」とか思っているのですがw
「ファミリーベーシック専用カセット V333333333333333333333333333333333333333」
初めて見たときには、テレビの前で卒倒しました。「マ、マイク使えるの?」と。
>スーパーペンペンは、なかなか面白いゲームですね。
>ひとつひとつのステージがどれも個性的で面白いです。
あはははは。あえてコメントを頂くとお恥かしい。(^^ゞ
今見るとあまりの難易度にビックリしました。
>もしOMエラーがでたら:やTHENをDELキーで削除すると良いですよ。
www ですよねー。
某サイトの言葉ではないですが、「文法的にはDr.Dに怒られそう」ですがwww
この手のチューニングはかなり後期になって編み出されましたよねー。
POKEで直接、RAM空間を操るとか…
>これからも面白いゲームが出来ましたらアップして下さいね。
ブログのタイトルどおり、だらだらやっていこうと思っていますが、がんばりますね。(´▽`)
それでは♪
管理人のみ閲覧できます
このコメントは管理人のみ閲覧できます
Re: はじめまして
初めまして、***さん。
(一応、匿名モードになっているようなのでハンドル名も伏せさせていただきます)
このブログを書いているOKIです。
管理人のみ閲覧できるコメントでしたので、コメントに気がつかず、返信が遅れてしまいました。(メールでのコメント通知をOFFってしまっていたため)
申し訳ございません。
本件、承知いたしました。私の方といたしましては別段問題ございません。お使いいただいて結構です。
とりあえず、ご使用の際は本サイトの本記事のURL(http://ockeysprogramming.blog42.fc2.com/blog-entry-161.html)を説明として入れておいていただけると幸いです。
それでは。
(一応、匿名モードになっているようなのでハンドル名も伏せさせていただきます)
このブログを書いているOKIです。
管理人のみ閲覧できるコメントでしたので、コメントに気がつかず、返信が遅れてしまいました。(メールでのコメント通知をOFFってしまっていたため)
申し訳ございません。
本件、承知いたしました。私の方といたしましては別段問題ございません。お使いいただいて結構です。
とりあえず、ご使用の際は本サイトの本記事のURL(http://ockeysprogramming.blog42.fc2.com/blog-entry-161.html)を説明として入れておいていただけると幸いです。
それでは。
音がテレビゲームらしくていい!
こんにちは、OKIさん。
スーパーペンペンすごく参考になりました。
わたしとしては、ゲームらしいゲームだと思いました。
最後宇宙に飛んでいってしまうのが時代を感じさせますね。
ステージごとにきちんと作ってるなぁ、と感動しました!
スーパーペンペンすごく参考になりました。
わたしとしては、ゲームらしいゲームだと思いました。
最後宇宙に飛んでいってしまうのが時代を感じさせますね。
ステージごとにきちんと作ってるなぁ、と感動しました!
ありがとうございます!
初めましてmrgaritaさん。
このブログ書いているOKIです。(^^)
ファミリーベーシックで何かを作る機会があったのでしょうか?
少しでもお役に立てて何よりです♪
>最後宇宙に飛んでいってしまう
当時の自分が「何故あの演出にしたのか」は覚えていないのですが、最後に星空を出す処理には、「よく考えたなぁ~」と20数年後の自分として素直に感心しましたw
(しかし、4面の処理には「そんなの分かるかよ!」というツッコミもw)
このブログ書いているOKIです。(^^)
ファミリーベーシックで何かを作る機会があったのでしょうか?
少しでもお役に立てて何よりです♪
>最後宇宙に飛んでいってしまう
当時の自分が「何故あの演出にしたのか」は覚えていないのですが、最後に星空を出す処理には、「よく考えたなぁ~」と20数年後の自分として素直に感心しましたw
(しかし、4面の処理には「そんなの分かるかよ!」というツッコミもw)
コメントの投稿
« 昔のゲームの想い出 [0062] 「妖怪探偵ちまちま」 [ボーステック] [1985] [FM-7] l Home l 「Sample Action Game」紹介記事インデックス »
YouTubeで「ファミリーベーシック」を検索していたら
このサイトへ来ました。
スーパーペンペンは、なかなか面白いゲームですね。
ひとつひとつのステージがどれも個性的で面白いです。
もしOMエラーがでたら:やTHENをDELキーで削除すると良いですよ。
これからも面白いゲームが出来ましたらアップして下さいね。
それでは、さようなら。