2013.4.21
前へ
次へ
ホームページトップへ戻る

復活!CP/M ワンボードマイコンでCP/Mを!
CP/MがTK−80互換のワンボードマイコンの上で復活します
ND80ZVとMYCPU80の上でCP/Mが走ります

[第376回]


●STARTREK完全記録

本日も1日中CP/M互換DOSのプログラム完成に向けて作業をしておりました。
少し進みましたが、まだもうすこしかかりそうです。
4日ほど前のことになりますが、毎日説明書作業やプログラムの修正作業をやっておりますと、たまには少しばかり息抜きをしたくなってきます。
それで。
おお、そうだ。
こんなときには、ちょっとSTARTREKをやってみましょう。
ということで、やり始めましたら、なんと。
ミッションをクリアしてしまいました。
途中でとんでもないおばかなミスをやってしまったものですから、クリアするまでにえらく遠回りをしてしまいましたが、それでもスタートからミッションをクリアするまでの完全な記録が取れましたので、ちょっとボリュームがありますけれど、参考までに全部掲載することにいたしました。
なお、これはMBASIC版ではなくてZB3BASIC版([第367回]のリスト)を、Windows98SEに接続したND80ZV+増設メモリボードで実行したものです。

プログラムをロード後、RUNコマンドで実行開始です。
ZB3BASICは命令の省略形が使えます。R.はRUNの省略形です。

>r.






                    THE USS ENTERPRISE --- NCC-1701

                   ,------*------,
   ,-------------   '---  ------'
    '-------- --'      / /
        ,---' '-------/ /--,
         '----------------'


                     ,------*------,
     ,-------------   '---  ------'
      '-------- --'      / /
          ,---' '-------/ /--,
           '----------------'


                       ,------*------,
       ,-------------   '---  ------'
        '-------- --'      / /
            ,---' '-------/ /--,
             '----------------'


                         ,------*------,
         ,-------------   '---  ------'
          '-------- --'      / /
              ,---' '-------/ /--,
               '----------------'


                           ,------*------,
           ,-------------   '---  ------'
            '-------- --'      / /
                ,---' '-------/ /--,
                 '----------------'


                             ,------*------,
             ,-------------   '---  ------'
              '-------- --'      / /
                  ,---' '-------/ /--,
                   '----------------'


                               ,------*------,
               ,-------------   '---  ------'
                '-------- --'      / /
                    ,---' '-------/ /--,
                     '----------------'


                                 ,------*------,
                 ,-------------   '---  ------'
                  '-------- --'      / /
                      ,---' '-------/ /--,
                       '----------------'


                                   ,------*------,
                   ,-------------   '---  ------'
                    '-------- --'      / /
                        ,---' '-------/ /--,
                         '----------------'


                                     ,------*------,
                     ,-------------   '---  ------'
                      '-------- --'      / /
                          ,---' '-------/ /--,
                           '----------------'


                                       ,------*------,
                       ,-------------   '---  ------'
                        '-------- --'      / /
                            ,---' '-------/ /--,
                             '----------------'


                                         ,------*------,
                         ,-------------   '---  ------'
                          '-------- --'      / /
                              ,---' '-------/ /--,
                               '----------------'


                                           ,------*------,
                           ,-------------   '---  ------'
                            '-------- --'      / /
                                ,---' '-------/ /--,
                                 '----------------'


                                             ,------*------,
                             ,-------------   '---  ------'
                              '-------- --'      / /
                                  ,---' '-------/ /--,
                                   '----------------'


                                               ,------*------,
                               ,-------------   '---  ------'
                                '-------- --'      / /
                                    ,---' '-------/ /--,
                                     '----------------'


                                                 ,------*------,
                                 ,-------------   '---  ------'
                                  '-------- --'      / /
                                      ,---' '-------/ /--,
                                       '----------------'


                                                   ,------*------,
                                   ,-------------   '---  ------'
                                    '-------- --'      / /
                                        ,---' '-------/ /--,
                                         '----------------'


                                                     ,------*------,
                                     ,-------------   '---  ------'
                                      '-------- --'      / /
                                          ,---' '-------/ /--,
                                           '----------------'


                                                       ,------*------,
                                       ,-------------   '---  ------'
                                        '-------- --'      / /
                                            ,---' '-------/ /--,
                                             '----------------'


                                                         ,------*------,
                                         ,-------------   '---  ------'
                                          '-------- --'      / /
                                              ,---' '-------/ /--,
                                               '----------------'







YOUR ORDERS ARE AS FOLLOWS:
--------------------------
   DESTROY THE 16 KLINGON WARSHIPS WHICH HAVE INVADED
   THE GALAXY BEFORE THEY CAN ATTACK FEDERATION HEADQUARTERS.
THIS GIVES YOU 34 DAYS. THERE  IS 
  1 STARBASE  IN THE GALAXY FOR RESUPPLYING YOUR SHIP.

ARE YOU READY TO ACCEPT COMMAND ('N' FOR INSTRUCTIONS)?y

YOUR MISSION BEGINS WITH YOUR STARSHIP LOCATED
IN THE GALACTIC QUADRANT, 'SIRIUS II'.

   +--1---2---3---4---5---6---7---8-+
 1 |  *                             | 1        STARDATE          2500.0
 2 |                              * | 2        CONDITION          GREEN
 3 |                                | 3        QUADRANT           1,6
 4 |                              * | 4        SECTOR             5,6
 5 |                     <E>        | 5        PHOTON TORPEDOES     10
 6 |                                | 6        TOTAL ENERGY       3000
 7 |                                | 7        SHIELDS               0
 8 |  *                            >| 8        KLINGONS REMAINING   16
   +--1---2---3---4---5---6---7---8-+

小宇宙(QUADRANT 1,6)からのスタートです。
銀河全体に敵(KLINGON戦艦)は16艦存在します。
それを撃破するのが今回のミッションです。

8×8あるQUADRANTのうちで、(1,6)は上の端ですから、LRSでスキャンするために1つ下に移動します(このままだと3×3個のスキャンのうち上3個が無駄になってしまいます)。
NAVで方向7、ワープ距離1を指令しました。
COMMAND?NAV

COURSE (0-9)?7
WARP FACTOR (0-8)?1


NOW ENTERING DENEB II QUADRANT . . .

   +--1---2---3---4---5---6---7---8-+
 1 |                                | 1        STARDATE          2501.0
 2 |                                | 2        CONDITION          GREEN
 3 |                                | 3        QUADRANT           2,6
 4 |                                | 4        SECTOR             5,6
 5 |                     <E>        | 5        PHOTON TORPEDOES     10
 6 |                  *             | 6        TOTAL ENERGY       2982
 7 |                                | 7        SHIELDS               0
 8 |          *                    >| 8        KLINGONS REMAINING   16
   +--1---2---3---4---5---6---7---8-+

COMMAND?LRS

LONG RANGE SCAN FOR QUADRANT 2,6

-------------------
| 001 | 004 | 006 |
-------------------
| 103 | 002 | 002 |
-------------------
| 003 | 005 | 005 |
-------------------

COMMAND?SHE

ENERGY AVAILABLE =2982NUMBER OF UNITS TO SHIELDS?1000
DEFLECTOR CONTROL ROOM:
  'SHIELDS NOW AT1000UNITS PER YOUR COMMAND.'

QUADRANT(2,6)に移動しました。
LRSでスキャンしました。
おお。左のQUADRANT(2,5)に敵がいます(数値の100の位が敵の数です)。
ワープしたときに変なところに敵がいてぶつかってしまってもまずいですから、先にSHEでシールドをしました。
エネルギーはどれぐらいがよいのかわかりませんが、[第366回]でご紹介しました「BASIC COMPUTER GAMES」のsample runを見ますとかなり大きな値を設定していますから、ここは気張って1000単位を指令しました。

NAVで方向5、ワープ距離1を指令しました。
敵は座標(8,7)にいました。
当艦は(5,6)てす。
ということは、下に3、右に1ですから、方向は7.33333です。
方向の算出法は[第370回]を参照してください。
TORで光子魚雷発射です。

COMMAND?NAV

COURSE (0-9)?5
WARP FACTOR (0-8)?1


NOW ENTERING DENEB I QUADRANT . . .

     COMBAT AREA      CONDITION RED  

   +--1---2---3---4---5---6---7---8-+
 1 |                                | 1        STARDATE          2502.0
 2 |                                | 2        CONDITION          *RED*
 3 |                                | 3        QUADRANT           2,5
 4 |                                | 4        SECTOR             5,6
 5 |                  *  <E>        | 5        PHOTON TORPEDOES     10
 6 |                              * | 6        TOTAL ENERGY       2964
 7 |          *                     | 7        SHIELDS            1000
 8 |                         +K+   >| 8        KLINGONS REMAINING   16
   +--1---2---3---4---5---6---7---8-+

COMMAND?TOR

PHOTON TORPEDO COURSE (1-9)?7.33333
TORPEDO TRACK:
               6,6
               7,7
               8,7

*** KLINGON DESTROYED ***


COMMAND?NAV

COURSE (0-9)?7
WARP FACTOR (0-8)?2


NOW ENTERING BETELGEUSE I QUADRANT . . .

   +--1---2---3---4---5---6---7---8-+
 1 |                                | 1        STARDATE          2503.0
 2 |  *                             | 2        CONDITION          GREEN
 3 |                  *             | 3        QUADRANT           4,5
 4 |                                | 4        SECTOR             5,6
 5 |                     <E>        | 5        PHOTON TORPEDOES      9
 6 |                                | 6        TOTAL ENERGY       2936
 7 |          *                     | 7        SHIELDS            1000
 8 |                               >| 8        KLINGONS REMAINING   15
   +--1---2---3---4---5---6---7---8-+

COMMAND?LRS

LONG RANGE SCAN FOR QUADRANT 4,5

-------------------
| 004 | 003 | 005 |
-------------------
| 002 | 003 | 003 |
-------------------
| 005 | 007 | 104 |
-------------------
敵(KLINGON)を破壊しました。
またLRSでスキャンするため下に2つ移動しました。
QUADRANT(2,5)から(4,5)へ移動です。
敵の残りは15艦です。
LRSでスキャンしました。
お。
右下(ということはQUADRANT(5,6))に敵です。

ここで今までのLRS情報を確認するため、COMコマンドで0を指定しました。
過去のセンサーのデータが全て得られます。

COMMAND?COM

COMPUTER ACTIVE AND AWAITING COMMAND?0


       COMPUTER RECORD OF GALAXY FOR QUADRANT4,5

       1     2     3     4     5     6     7     8
    +-----+-----+-----+-----+-----+-----+-----+-----+
1 | *** | *** | *** | *** | 001 | 004 | 006 | *** |
    +-----+-----+-----+-----+-----+-----+-----+-----+
2 | *** | *** | *** | *** | 003 | 002 | 002 | *** |
    +-----+-----+-----+-----+-----+-----+-----+-----+
3 | *** | *** | *** | 004 | 003 | 005 | 005 | *** |
    +-----+-----+-----+-----+-----+-----+-----+-----+
4 | *** | *** | *** | 002 | 003 | 003 | *** | *** |
    +-----+-----+-----+-----+-----+-----+-----+-----+
5 | *** | *** | *** | 005 | 007 | 104 | *** | *** |
    +-----+-----+-----+-----+-----+-----+-----+-----+
6 | *** | *** | *** | *** | *** | *** | *** | *** |
    +-----+-----+-----+-----+-----+-----+-----+-----+
7 | *** | *** | *** | *** | *** | *** | *** | *** |
    +-----+-----+-----+-----+-----+-----+-----+-----+
8 | *** | *** | *** | *** | *** | *** | *** | *** |
    +-----+-----+-----+-----+-----+-----+-----+-----+


COMMAND?NAV

COURSE (0-9)?8
WARP FACTOR (0-8)?1

DAMAGE CONTROL REPORT:  DAMAGE CONTROL STATE OF REPAIR IMPROVED


NOW ENTERING ALDEBARAN II QUADRANT . . .

     COMBAT AREA      CONDITION RED  

   +--1---2---3---4---5---6---7---8-+
 1 |      *               *         | 1        STARDATE          2504.0
 2 |      *                         | 2        CONDITION          *RED*
 3 |                                | 3        QUADRANT           5,6
 4 |                                | 4        SECTOR             5,6
 5 |                     <E>        | 5        PHOTON TORPEDOES      9
 6 |     +K+  *                     | 6        TOTAL ENERGY       2918
 7 |                                | 7        SHIELDS            1000
 8 |                               >| 8        KLINGONS REMAINING   15
   +--1---2---3---4---5---6---7---8-+

うむむ。
表示桁が1つずれていますねえ。
後で直しておきましょう。
それでは。
右下へワープです。
NAVで方向8、距離1を指令しました。
QUADRANT(5,6)に移動しました。
斜めに移動するときは、ワープ距離は1.414かと思っていたのですが…。
どうやらそういうことではないようです。
斜め方向でも、1つ移動するなら距離は1でよいようです。
その証拠に移動前と移動後でQUADRANT内の座標は同じです。
さて。
敵がいますが、ちょっと星(*)が邪魔です。
こういうときは…。

超強力武器フェイザー砲です。
宇宙戦艦ヤマトの波動砲のようなものでしょうかねえ。
PHAを指令しました。
エネルギーはどの程度必要かわかりません。
ためしに50単位だけでやってみましたが、全然足りませんでした。
そこでもう一度同じく50単位でPHAを指令しました。
おお。
今度は破壊できました。

COMMAND?PHA

PHASERS LOCKED ON TARGET;  ENERGY AVAILABLE =1918UNITS
NUMBER OF UNITS TO FIRE?50
SENSORS SHOW NO DAMAGE TO ENEMY AT 6,2.

140UNIT HIT ON ENTERPRISE FROM SECTOR6,2.
      <SHIELDS DOWN TO860UNITS>
DAMAGE CONTROL: 'SHIELD CONTROL DAMAGED BY THE HIT'

COMMAND?PHA

PHASERS LOCKED ON TARGET;  ENERGY AVAILABLE =1868UNITS
NUMBER OF UNITS TO FIRE?50
16UNIT HIT ON KLINGON AT SECTOR6,2.
*** KLINGON DESTROYED ***


COMMAND?LRS

LONG RANGE SCAN FOR QUADRANT 5,6

-------------------
| 003 | 003 | 002 |
-------------------
| 007 | 004 | 104 |
-------------------
| 003 | 103 | 202 |
-------------------


もう一度LRSで広域センサーしました。
うわあ。
今度は右に1、下に1、右下に2の敵がいます。

そこで、まずは下(6,6)に移動して、1艦を破壊しました。
次に右(6,7)に移動して、そこでも1艦を破壊しました。

COMMAND?NAV

COURSE (0-9)?7
WARP FACTOR (0-8)?1

DAMAGE CONTROL REPORT:          SHIELD CONTROL REPAIR COMPLETED.

NOW ENTERING REGULUS II QUADRANT . . .

     COMBAT AREA      CONDITION RED  

   +--1---2---3---4---5---6---7---8-+
 1 |                                | 1        STARDATE          2505.0
 2 |                                | 2        CONDITION          *RED*
 3 |  *          +K+                | 3        QUADRANT           6,6
 4 |                                | 4        SECTOR             5,6
 5 |                     <E>        | 5        PHOTON TORPEDOES      9
 6 |          *                     | 6        TOTAL ENERGY       2660
 7 |                                | 7        SHIELDS             860
 8 |  *                            >| 8        KLINGONS REMAINING   14
   +--1---2---3---4---5---6---7---8-+

COMMAND?TOR

PHOTON TORPEDO COURSE (1-9)?4
TORPEDO TRACK:
               4,5
               3,4

*** KLINGON DESTROYED ***


COMMAND?NAV

COURSE (0-9)?1
WARP FACTOR (0-8)?1


NOW ENTERING REGULUS III QUADRANT . . .

     COMBAT AREA      CONDITION RED  

   +--1---2---3---4---5---6---7---8-+
 1 |                                | 1        STARDATE          2506.0
 2 |                                | 2        CONDITION          *RED*
 3 |                                | 3        QUADRANT           6,7
 4 |                                | 4        SECTOR             5,6
 5 |                     <E> +K+    | 5        PHOTON TORPEDOES      8
 6 |                                | 6        TOTAL ENERGY       2640
 7 |  *                             | 7        SHIELDS             860
 8 |         +K+              *    >| 8        KLINGONS REMAINING   13
   +--1---2---3---4---5---6---7---8-+

COMMAND?TOR

PHOTON TORPEDO COURSE (1-9)?1
TORPEDO TRACK:
               5,7

*** KLINGON DESTROYED ***


77UNIT HIT ON ENTERPRISE FROM SECTOR8,3.
      <SHIELDS DOWN TO783UNITS>

COMMAND?NAV

COURSE (0-9)?3
WARP FACTOR (0-8)?1


24UNIT HIT ON ENTERPRISE FROM SECTOR2,7.
      <SHIELDS DOWN TO759UNITS>
DAMAGE CONTROL: 'SHIELD CONTROL DAMAGED BY THE HIT'
DAMAGE CONTROL REPORT:          SHIELD CONTROL REPAIR COMPLETED.
DAMAGE CONTROL REPORT:  LIBRARY-COMPUTER DAMAGED


NOW ENTERING ALDEBARAN III QUADRANT . . .

     COMBAT AREA      CONDITION RED  

   +--1---2---3---4---5---6---7---8-+
 1 |                                | 1        STARDATE          2507.0
 2 |                          *     | 2        CONDITION          *RED*
 3 |                          *     | 3        QUADRANT           5,7
 4 |                         +K+    | 4        SECTOR             5,6
 5 |                     <E>        | 5        PHOTON TORPEDOES      7
 6 |                                | 6        TOTAL ENERGY       2519
 7 |                          *     | 7        SHIELDS             759
 8 |                  *            >| 8        KLINGONS REMAINING   12
   +--1---2---3---4---5---6---7---8-+

COMMAND?TOR

PHOTON TORPEDO COURSE (1-9)?2
TORPEDO TRACK:
               4,7

*** KLINGON DESTROYED ***

あれ?
まだもう1艦残っているのに上(5,7)へ移動してしまいましたよ。
ここでも1艦撃破です。

LRSで広域センサーをして、1艦残してきたことにやっと気が付きました。
そこでまた下に戻ってそこで1艦撃破しました。

COMMAND?LRS

LONG RANGE SCAN FOR QUADRANT 5,7

-------------------
| 003 | 002 | 002 |
-------------------
| 004 | 004 | 004 |
-------------------
| 003 | 102 | 003 |
-------------------

COMMAND?NAV

COURSE (0-9)?7
WARP FACTOR (0-8)?1


NOW ENTERING REGULUS III QUADRANT . . .

     COMBAT AREA      CONDITION RED  
   +--1---2---3---4---5---6---7---8-+
 1 |                                | 1        STARDATE          2508.0
 2 |                              * | 2        CONDITION          *RED*
 3 |                                | 3        QUADRANT           6,7
 4 |                                | 4        SECTOR             5,6
 5 |                     <E>        | 5        PHOTON TORPEDOES      6
 6 |                                | 6        TOTAL ENERGY       2499
 7 |     +K+                  *     | 7        SHIELDS             759
 8 |                               >| 8        KLINGONS REMAINING   11
   +--1---2---3---4---5---6---7---8-+

COMMAND?TOR

PHOTON TORPEDO COURSE (1-9)?5.5
TORPEDO TRACK:
               6,5
               6,4
               7,3
               7,2

*** KLINGON DESTROYED ***


COMMAND?LRS

LONG RANGE SCAN FOR QUADRANT 6,7

-------------------
| 004 | 004 | 004 |
-------------------
| 003 | 002 | 003 |
-------------------
| 003 | 004 | 002 |
-------------------

COMMAND?COM

COMPUTER DISABLED.

もう一度LRSでスキャンしました。
周りに敵はいなくなりました。
でもまだどこかに10艦残っているはずです。
情報を確認しておこうと思ってCOMコマンドを指令しましたら。
コンピュータがダウンですと。
うむむ。

本日は時間がなくなってしまいました。
この続きは次回にいたします。

ワンボードマイコンでCP/Mを![第376回]
2013.4.21upload

前へ
次へ
ホームページトップへ戻る