月間ラム 1980年11月号

キーフレーズ

000 PRINT THEN -4 プログラム LPRINT 9. マイコン NEXT RAM PRI FOR -2 800 システム LET LOCATE 表示 -1 RETURN -3 使用 649 入力 BASIC REM RCL プログラ 8001 データ COLOR GOSUB 場合 探査機 200 CRC STO 計算 GND インタフェイス 日立 GOTO シャープ 標準価格 32K INPUT ROM 地区 Vcc インターフェイス INT バイト PET 実行 惑星 コンピュータ ソフト 500 0000 グラフィック COS 出力 レジスタ 可能 VIC 衛星 DATA 方法 カラー モード Min 文字 ソフトウェア GOT 対角行列 結果 ディスプレイ 400 80K カセット 必要 東京 問い合わせ ドット コース 地球 マイワロ・マイワロ マスターマインド Apple

目次ページ

います。 2 ) マス目の表示 は , マス目に子の手を表示し , さらに親の判定を表示 キーを使って入力データを修正できるからです。あと も , ーキーを押す前であれば一 みることにしました。 こうすると , 並べ終ってからで 子の手を打っ時には , ます一度マス目の外に並べて ています ) 。 表示する必要がありません ( 実際のゲームでも隠され ただし図 1 に示したのと異なって , M 領域のマス目は 次に , ゲーム盤のマス目をモニタ上に表示させます。 3 ) POKE 命令について します。 グラムを他機種に移植する時は , ちょっと考える必要 表示には PO KE 命令を使っていますので , このプロ す。 親の判定が終わると , 子はそれを参考にして次の手 を前回の 1 つ上の行に打ちます。親の判定も , 前回の 判定の上の行に置きます。こうして , 子の石が親の石 の色および列と一致するまで ( もしくは , 当らないま ま第 10 手目まで ) 繰り返されます。子は , いままでに 自分が打った手と親の判定から , M 領域に隠されてい る石を推定します。 このゲームを , コンピュータ的発想ですべての組み 合わせを考えながらやれば , 時間も手数もよけいにか かってしまうでしよう。推理を働かせることによって , より少ない手数で当てるところが , このゲームの面白 さです。かといって , まったくカンだけに頼ってもダ メなのです。 次にレベル 2 の選び方を説明します。この場合 , 親は 6 色の石のうちから , 色が重複してもよいから 4 つを 選び出して M 領域に並べます。それ以外の遊び方はレ ベル 1 と同じです。これだけで , レベル 1 より数段難 しくなります。 スタート プロクラ乙の説明 このプログラムでは , CBM3032 に親をやらせ , 私 たち人間が子をやることになっています。そして少な い手数で親の置いた石を当てることができれば , マイ コンがお世辞を言ってくれることになっています。 1) 色の決め方 ます最初に , 乱数により 4 つの石の色を決めます。 コモドール社の製品はカラーモニタが使えす , 高分解 能のグラフィック機能もありませんから , 6 つの色の 代わりにグラフィック・キャラクタであるスペード , ハート , ダイヤ , クラブ , 黒丸 , 丸・・・・・・の計 6 種を使 行 580 ~ 600 ・ゲームのレベル を入力 ・親の手を作る ・マス目を作る 子の手を入力 NO 入力正常か ? Y E S 子の手をマスの 中に表示 入力工ラー表示 レのくノレ 10r2 色と 位置共に同し YES 判定“黒〃を表示 N 0 同 と 左 色のみ 同しか ? YES NO 判定“白″を表示 親の 手と一致した YES N 7 手以上 3 手以下 行 20 行 330 行 360 ~ 行 370 行 380 行 393 ~ 行 398 行 4 ~ 410 行 418 行 425 / 行 620 行 430 / 行 625 行 455 / 行 650 ~ 660 行 465 / 行 670 行 58 ~ 0 行 550 , 58 何手目で一致 6 手以下 賛辞を表示 YES 再度 ゲームをする NO ストップ 賛辞を表示 マスターマインドプロクラ乙・フローチャート 79

CBM3032 版マスターマインド・プログラ乙リスト があります。 C B M 3032 では , モニタは 40 文字 x 25 行 で表示され , モニタの左上端が 32768 番地に , 右下端 が 33767 番地になっています。 また本プログラムの 405 行 , 465 行 , その他で使われ ている POKE 命令には必す 33648 番地が続いています。 これは , モニタ左下端の番地が 33728 ですから , その 2 行上 , つまり下から 3 行目の左端の番地のことです。 そして , この 33648 番地は , 1 手目の石が置かれる 2 行下にあります。 藝蠧 合第 N ー - (J}¯ 0T0 5 ② ON 合 ~ ーさ 8T ま 3 , ま 4 は 15. ま 16 , 1 ま ?. 1 XT 第 1 T N } = 1 TO 9 LACE S IHA NPU HEN PRINT"LINE IS NOT 0 3 3 HEN JJ=I き THEN PRINT"AGAIN ! " = 00T0 366 + 2*IB,E(IB) H= 1 TO 4 : G い H ) 第 8 : NEX T ー H 6 0 631 = い」 0 ? 6 ~ 》ー名 4HEN G(IE ) 第 合◆ 9 + 2 E , G<IE ) E 第一 E + 4 ? ② NEXT IC 第十 R HT ー ・合 4 THEN PR NT" YOU ARE EXCELLEN 7 THEN PRINT"YOU ARE BRIGHT" N X 88 IN リ T " 00 YOU PLAY AGAIN(Y OR N)";Y$ F Y$="Y" 60T0 18 ND 5 ミ 1 ー c = ↓ TO 4 E : E= ◆ プロクラ乙の遊ひ万 マスターマインドそのものについての遊び方はすで に説明しましたので , こでは , プログラムを R U N させてから , 具体的にどのように遊べばよいかを説明 します。 ① LEVELI OR 2 ? と表示されたら 1 または 2 を入力してください。 ② PLACE YOUR ESTIMATION ? と表示されたら , ハートやスペード等のグラフィッ ク・キャラクタを入力します。ーキーを 押すと , C 領域のマス目に子の手が表示されます。 以後 , これを繰り返すだけです。 ③ LINE IS NOT FULFILLED と表示されたら , それは 3 つ以下しか石を入力して いない時ですから , もう一度 4 つの石を入力し直し てください。また , LEVE L 1 で , 同じ石を 2 つ以上 おいた場合も , 、、 AG AI N ! " の表示が出てやり直し となります。 ④ DO YOU PLAY AGAIN (Y OR N) ? と表示されたら , 「まだゲームを続けますか ? 」と 聞いているわけですから , Y または N を入力します。 このプログラムの長さは約 70 ステップで , 難しい演 算はやっていませんから , メモリ容量の少ない機種で の実行 , 他機種への移植も容易と思います。 また , 以上で述べましたように , その遊び方も非常 に簡単です。みなさんも , ぜひキーインして , たつぶ り楽しんでください。 ( T ん記 e N なん法。盟の 0 53 ② 80

5 D ー M 合 ( 4 ) 第 B ( 4 ) 第 E ( 4 ) 第 F ( 4 ) , G ( 5 ) FL ( 4 わ FM ( 4 ) ー MAS TER M I ND 6 白 ME " : PR I N T 1 日 PR I N T " 1 OR 2 、 ';LE 29 INPLlTit 39 PRINT"MRSTER IS THINKING . 49 FOR l=l TO 4 53 R ( い = 6 *R ND ( 1 ) + 1 55 ( I ) = I N T ( 日 ( い ) 69 1 F 日 ( い = 7 60 TO 5 65 IF LE=2 60T0 11 目 7 日 I F I = 1 60 T 0 11 目 8 日 FOR J= 1 T 0 1 ー 1 9 日 I F 日 ( I ) = 白 ( 、 - い 60 T 0 5 1 日日 NEXT J 119 NEXT : 111 FOR I = 1 TO 4 112 ON 日 ( い GO TO 113 .. 114 115 第 1 ié . は 17 11 113 B ( I ) = 72 : GO T 0 119 114 B ( い = 71 : 60 T 0 11 ? 115 ( I ) = 65 = GOTO 119 11 B ( 1 ) = 68 = 60T0 119 18 お ( I) = 79 19 NEXT ー 38 PRINT" 149 FOR 1 = 1 「〒 - 百 -- 1- ・一 1 168 PRINT" 179 PRINT" 189 NEXT I 33 日 PRINT" 358 FOR I 日 = 1 TO 1 ら 369 PRINT" YOLIR EST IMA 79 INPUT C$ 82 IF LEN(C$)<4 THEN PRINT"LINE IS NOT FULFILLED" : 60T0 398 FOR IB=I TO 4 39 F(IB)=ASC(MID$(C$*IB,I)) 393 JJ=Ø 334 lF IB : 1 GOTO 4 日 39 IF F ( J ) =F ( I B ) THEN JJ= 1 98 IF 、ロ = 1 THEN PRINT"AGRIN !":GOTO 36 493 E ( 1 B ) =F ( 1 B ) ー 1 ら 491 IF E(IB)=98 THEN E(IB)=E(IB)—22:GOT 0 419 492 IF E(IB)=ee THEN E(IB)=E(IB)—IB:GOT 0 412 493 IFÆ(IB)=Si THEN E(IB)=E(IB)—IB:GOT 0 41 日 494 1 F E ( I B ) = 97 THEN E ( I B ) =E ( 1 B ) ー 15 412 NEX T I B 411 FOR IB=i TO 4 : PO ト : E 5412 一 8 日 * I 日 + 2 家ー B ,E(IB):NEXT IB 415 PR ー N を平 417 1 E= 1 : FOR I H= 1 T 0 4 : G ( I H ) = 目 : NEX T I H 418 IF LE=2 60T0 E , 目 1 429 FOR IC=I TO 4 425 1 F B ( I C ) <)E ( I こ ) GO TO 442 435 G ( I E ) = 71 : POKE 54128 ー ~ * I 白 + ヨ + 2 * ー E , G ( ー E ) E= I E + 1 44 NEXT lC 45 FOR IC=I TO 4bF? ( { 8 ~ ? 4HEN G(IE ) = : 60T0 465 469 NExæ ID = 60T0 479 465 POK 54128 ー 89 * I 日 + 9 + 2 * IE 6 ( IE ) :IE=IE 479 NEXT IC 589 IG=I 519 IF 6 ( IG ) ( 〉 71 60T0 53 ら 522 1 G= I G + 1 : GO TO 51 日 539 IF IGCS 60T0 5 ? 日 548 PRINT" 58 IF 1 ( 4 THEN PRNT"YOIJ RRE EXCELLENT : 60T0 565 568 IF I 日 ( 7 THEN PRINT'IYOIJ ARE BRIGHT" 565 60T0 589 78 NEXT IA 75 PR I N T " ST" MIND 図 FOR IJ=I TO 4:POKE 54128 + 24 + IJ B ( ー J ) : N X T I J 88 INPU}"DO YOIJ PLAY AGAIN(Y OR N)";Y$ 88 END 691 IE=I 618 FOR IC=I TO 4 618 FL(lC)=e:FM(IC)=e E) :IE=IE + 1 626 FL ( I C ) = 1 : FM ( I C ) = 1 638 NEXT IC 4 日 FOR ID=I TO 4:FOR IQ=I TO 4 58 1 F ( FL ( 10 ) = 1 ) + ( FM ( I Q ) = 1 ) GO TO 689 66 I F B ( I D ) OE ( I Q ) 60 TO 68 日 679 6 ( IE ) = 72 : POKE54128 ー 89 * I + 9 + 2 IE , 6 ( 1 E) :IE=IE + I:FM(IQ)=I:GOTO 698 688 NEXT IQ 699 NEXT ID R 冐 Y60T0 5 日日 ー版マスターマインド・プログラ乙リスト マスターマインド・プログラム MOVE 後藤真希子 8 編集部からの依頼で , マスターマインドのプログラ ムを MZ-80K に移植しました。内容的にはまったく同 しプログラムですので , 遊び方も CBM 版と一緒です。 移植の際 , 細かいところで手直しが必要な部分があ りました。以下に箇条書きしておきます。 M Z をお持 ちの方も , いきなりキーインし始めないで , PET のプ ログラムを読み , 以下を読んでからしてみてください。 今後 , 移植する場合のヒント程度にはなると思います。 ① MZ-80K では ,AND,OR が使えません。かわりに * , + を使用します。 ② CBM と MZ -80K では POKE 命令で使われている 番地が違います。 MZ-80K の場合 , 左下端の番地は 54128 です。 ③ A S CI I コード→ディスプレイコードの変換は , CBM では単純に 128 を引けば良いのですが , MZ-80 K ではそのような対応がありません。そこで , ハー トとスペードについては 160 を引き , その後 , その 他のものについて 1 つ 1 っ I F 文で分けていきまし ( Ma ん法 0 Go ) 読者プレゼントのあ知らせ ↓↓ 4 ・↓↓↓↓よ↓↓↓ 4 ・↓↓↓ , ↓↓↓↓ー 4- ↓ - ↓↓↓↓↓十↓↓十↓↓↓事↓↓↓↓↓↓寺→→ ( 株 ) 河田のこ好意により , オリジナル・マ スターマインド ( タイト丿 6 写真と同じもの ) を , 10 名様にプレゼント。マイコン相手のマ スターマインドにあきたら , 今度は恋人どう しでやってみよう ! ご希望の方は , 愛読者カードにその旨こ記 入の上 , CR 編集部分室まであ申し込み ください ( 希望者が多い場合 , 抽選になりま なあ , ( 株 ) 河田からはミ ・マスターマイ ンド ( \ 65 の ~ クランド・マスターマインド ( ¥ 3 , 40 のまでア種類 , また単 3 乾電池 2 本 使用のエレワトリッワ・マスターマインド ( \ 7 , 800 ) ガ市販されてあり , 全国のテノヾート , オモチャ屋さんで買うことガできます。 よ 4 、いいし↓↓↓↓ 4 ・↓↓↓↓↓↓↓↓↓↓ 81