Blastar

original by Elon Reeve Musk

 

イーロン・マスクでさえ、小さい頃からパソコンに触れ、

昔は BASIC プログラミング言語でゲームを作っていました。

12歳の時に雑誌掲載により 500 ドルを得た作品が

Spectravideo SV-318/SV-328 版「Blastar」というゲームです。

この「Blastar」を IchigoJam BASIC に移植しました。

 

さすがにサイズが大きく、

ロゴと説明、ゲーム本体で2つのプログラムにしてあります。

(プログラム 1)+ 1 =(プログラム 2) となるように

一度本体や EEPROM に保存して実行して下さい。

 

プログラム 1 の実行でロゴ⇢説明(原作そのままなので英語)、
プログラム 2 から実行してすぐにゲーム実行できます。
エイリアンが左から右に出てくるので、自機を矢印キーで操作し、

スペースキー水素爆弾ミサイルを打ち込んで倒して下さい。

エイリアンの視界に入るとステータスビームでやられてしまいます。

全滅したら RUN(F5)で再度ゲームが可能です。

 




IchigoJam BASIC 1.1~

プログラム 1

100 'BLASTAR
110 CLS
120 LC6,6
130 ?CHR$(#8B,#83,#84,#85,0,0,#86,#83,#84,#86,#83,#84,#83,#87,#81,#86,#83,#84,#87,#83,#84)
140 LC6,7
150 ?CHR$(#8A,#8C,#81,#85,0,0,#85,0,#85,#89,#8C,0,0,#85,0,#85,0,#85,#85,0,#85)
160 LC6,8
170 ?CHR$(#8A,0,#85,#85,0,0,#87,#83,#85,#84,0,#85,0,#85,0,#87,#83,#85,#87,#8B)
180 LC6,9
190 ?CHR$(#83,#83,0,#83,#83,#81,#81,0,#81,#82,#83,0,0,#81,0,#81,0,#81,#81,0,#81)
200 FORI=1TO2
210 PLAY"T200L16O3CECECDBABADACECEBDACDBDCEGG
220 IFSOUND()CONT
230 PLAY"T200L16O4CECECDBABADACECEBDACDBDCEGG
240 IFSOUND()CONT
250 NEXT
260 CLS
270 ?"BY E.R.MUSK
280 WAIT60
290 CLS
300 LC12,3
310 ?"BLASTAR
320 LC4,7
330 ?"DO YOU NEED INSTRUCTIONS
340 LC13,9
350 ?"(Y/N)
360 CLK
370 I=INKEY()
380 IF!IGOTO370
390 IFI<>89ANDI<>121GOTO570
400 CLS
410 LC8,3
420 ?"
430 LC8,5
440 ?"FOR CONTROL AND
450 LC10,7
460 ?"FIRE BUTTON
470 LC11,9
480 ?"TO SHOOT
490 LC0,15
500 ?"MISSION:DESTROY ALIEN FREIGHTER
510 ?
520 ?"CARRYING DEADLY HYDROGEN BOMBS
530 ?
540 ?"AND STATUS BEAM MACHINES
550 CLK
560 IF!INKEY()CONT
570 LRUNFILE()+1

MixJuice ダウンロード ?"MJ GET kidspod.club/mj/2229

MicJack ダウンロード ?"MJ GKP 2229

IchigoJam web でプログラムを実行します。

このQRコードはアクセス解析のためにCookieを使用しています。

アクセス解析は匿名で収集されており、個人を特定するものではありません。

この機能はCookieを無効にすることで収集を拒否することができますので、
お使いのデバイスのブラウザの設定をご確認ください。

プログラム 2

100 ' BY E.R.MUSK
110 POKE240*8,#99,#99,#99,#E7,#C3,#C3,#C3,#C3
120 POKE241*8,0,0,#42,#A5,#42,0,0,0
130 POKE242*8,#18,#42,#E7,#BD,#5A,#24,#3C,#66
140 POKE243*8,0,#10,#38,#7C,#7C,#38,#10,0
150 X=0:Y=5:P=16:C=22:W=0
160 H=0:G=RND(20)+1:CLS
170 LC3,0:?"SCORE ";X
180 LC22,0:?"SHIPS ";Y
190 D=PEEK(#1002):CLT
200 IFTICK()<5CONT
210 O=P-(P>0)*(D&1)+(P<30)*((D&2)/2)
220 B=C-(C>1)*((D&4)/4)+(C<22)*((D&8)/8)
230 IFO=PANDB=CGOTO250
240 LCP,C:?" "
250 LCO,B:?CHR$(240):P=O:C=B
260 IF!(D&16)GOTO300
270 PLAY"L16O3DO4F"
280 IFW>0LCU,W:?" "
290 U=P:W=C
300 IFW=0GOTO390
310 LCU,W:?" ":W=W-1
320 IFW=0GOTO390
330 LCU,W:?CHR$(241)
340 IFW<>GOR(U<>HANDU<>H+1)GOTO390
350 LCU,W:?" "
360 LCH,G:?CHR$(244):WAIT60
370 LCH,G:?" ":H=0:G=RND(20)+1
380 X=X+80:GOTO160
390 LCH,G:?" ":H=(H+1)%32
400 LCH,G:?CHR$(242)
410 IFH<>PORG>CGOTO190
420 IFRND(3)GOTO190
430 FORZ=G+1TOC
440 PLAY"O2L15G"
450 LCH,Z:?CHR$(243):WAIT5
460 LCH,Z:?" ":NEXT
470 LCP,C:?CHR$(244):WAIT60
480 Y=Y-1:IFY>=0GOTO160
490 LC12,3:?"BLASTAR
500 LC8,5:?"FLEET DESTROYED
510 CLK

MixJuice ダウンロード ?"MJ GET kidspod.club/mj/2230

MicJack ダウンロード ?"MJ GKP 2230

IchigoJam web でプログラムを実行します。

このQRコードはアクセス解析のためにCookieを使用しています。

アクセス解析は匿名で収集されており、個人を特定するものではありません。

この機能はCookieを無効にすることで収集を拒否することができますので、
お使いのデバイスのブラウザの設定をご確認ください。



IchigoCake BASIC

100 'BLASTAR
110 CLS
120 LC6,6
130 ?CHR$(#8B,#83,#84,#85,0,0,#86,#83,#84,#86,#83,#84,#83,#87,#81,#86,#83,#84,#87,#83,#84)
140 LC6,7
150 ?CHR$(#8A,#8C,#81,#85,0,0,#85,0,#85,#89,#8C,0,0,#85,0,#85,0,#85,#85,0,#85)
160 LC6,8
170 ?CHR$(#8A,0,#85,#85,0,0,#87,#83,#85,#84,0,#85,0,#85,0,#87,#83,#85,#87,#8B)
180 LC6,9
190 ?CHR$(#83,#83,0,#83,#83,#81,#81,0,#81,#82,#83,0,0,#81,0,#81,0,#81,#81,0,#81)
200 FORI=1TO2
210 PLAY"T200L16O3CECECDBABADACECEBDACDBDCEGG
220 IFSOUND()CONT
230 PLAY"T200L16O4CECECDBABADACECEBDACDBDCEGG
240 IFSOUND()CONT
250 NEXT
260 CLS
270 ?"BY E.R.MUSK
280 WAIT60
290 CLS
300 LC12,3
310 ?"BLASTAR
320 LC4,7
330 ?"DO YOU NEED INSTRUCTIONS
340 LC13,9
350 ?"(Y/N)
360 CLK
370 I=INKEY()
380 IF!IGOTO370
390 IFI<>89ANDI<>121GOTO570
400 CLS
410 LC8,3
420 ?"
430 LC8,5
440 ?"FOR CONTROL AND
450 LC10,7
460 ?"FIRE BUTTON
470 LC11,9
480 ?"TO SHOOT
490 LC0,15
500 ?"MISSION:DESTROY ALIEN FREIGHTER
510 ?
520 ?"CARRYING DEADLY HYDROGEN BOMBS
530 ?
540 ?"AND STATUS BEAM MACHINES
550 CLK
560 IF!INKEY()CONT
570 POKE240*8,#99,#99,#99,#E7,#C3,#C3,#C3,#C3
580 POKE241*8,0,0,#42,#A5,#42,0,0,0
590 POKE242*8,#18,#42,#E7,#BD,#5A,#24,#3C,#66
600 POKE243*8,0,#10,#38,#7C,#7C,#38,#10,0
610 X=0:Y=5:P=16:C=22:W=0
620 H=0:G=RND(20)+1:CLS
630 LC3,0:?"SCORE ";X
640 LC22,0:?"SHIPS ";Y
650 D=PEEK(#1E02):CLT
660 IFTICK()<5CONT
670 O=P-(P>0)*(D&1)+(P<30)*((D&2)/2)
680 B=C-(C>1)*((D&4)/4)+(C<22)*((D&8)/8)
690 IFO=PANDB=CGOTO710
700 LCP,C:?" "
710 LCO,B:?CHR$(240):P=O:C=B
720 IF!(D&16)GOTO760
730 PLAY"L16O3DO4F"
740 IFW>0LCU,W:?" "
750 U=P:W=C
760 IFW=0GOTO850
770 LCU,W:?" ":W=W-1
780 IFW=0GOTO850
790 LCU,W:?CHR$(241)
800 IFW<>GOR(U<>HANDU<>H+1)GOTO850
810 LCU,W:?" "
820 LCH,G:?CHR$(244):WAIT60
830 LCH,G:?" ":H=0:G=RND(20)+1
840 X=X+80:GOTO620
850 LCH,G:?" ":H=(H+1)%32
860 LCH,G:?CHR$(242)
870 IFH<>PORG>CGOTO650
880 IFRND(3)GOTO650
890 FORZ=G+1TOC
900 PLAY"O2L15G"
910 LCH,Z:?CHR$(243):WAIT5
920 LCH,Z:?" ":NEXT
930 LCP,C:?CHR$(244):WAIT60
940 Y=Y-1:IFY>=0GOTO620
950 LC12,3:?"BLASTAR
960 LC8,5:?"FLEET DESTROYED
970 CLK

 IchigoCake BASIC は容量が大きいので、
専用の1プログラムを用意しました。

全滅後の RUN はロゴ表示となります。

2プログラムの結合以外に

PEEK(#1002)⇢PEEK(#1E02) も存在します。

 

IchigoCake は音声端子が存在している事もあり、

YouTube の動画は IchigoCake 版で収録しています。

MixJuice ダウンロード ?"MJ GET kidspod.club/mj/2231

MicJack ダウンロード ?"MJ GKP 2231



オリジナル版

Blastar Elon Musk Spectravideo 318 / 328 | Internet Archive -

 

オリジナル版 Spectravideo SV-318・SV-328 版の映像が

意外と存在していなかったので、実際に撮影しました。

 

Spectravideo SV-318・SV-328 は MSX 規格の元となった機種で

BASIC 上では MSX1 と類似している仕様が多いです。

そのため MSX エミュレータの一部で対応しています。

BASIC での大きな違いは英語を表示する仕様だったために

6✕8 ドットのフォントによる 40✕24 文字表示となっていて、

これはグラフィック画面でも同様のh常時となります。

一方でグラフィック画面でも LOCATE・PRINT が使用でき、

 

この点では IchigoJam の VIDEO による拡大表示に似ています。

 





他の方が作った Blastar


他のバージョン