ひさびさにMSXをさわる。
実家に到着。
押し入れからキーボードとゲームカセットを引っ張り出して1chipMSXで遊ぶ。
ああMSXの新ハードが出るなんて、と涙がちょちょ切れる。
そしてF1スピリットはやはり最高に面白いぞと。この頃のコナミは(以下昔は良かった話
ゲームだけではなんなのでプログラムを書いてみる。
童謡「汽車」を演奏しながら汽車が走る(というかなんというか)プログラム。
10 ' 20 ' ### KISHA ### 30 ' 40 CALL MUSIC:CALL BGM(1):DIM A$(20) 50 SCREEN 1,3 60 RESTORE 600 70 SN=0:GOSUB 500 80 ' 90 'INIT 100 ' 110 BA$="t120o4l8v15@1" 120 BB$="t120o3l8v12@6" 130 BC$="t120o6l8v13@2" 140 BD$="t120V15" 150 ' 160 'MML 170 ' 180 B$="b!sh8sh16sh16sh8sh8" 190 A$(0)=""'"ec16c16cc" 200 A$(1)=""'"ec16c16cc" 210 A$(2)="g.g16gg" 220 A$(3)="gbag" 230 A$(4)="e.e16dg" 240 A$(5)="a4r4" 250 A$(6)="b.b16bb" 260 A$(7)="a4>d4" 270 A$(8)="<bb16>c16<ba" 280 A$(9)="g4r4" 290 A$(10)="d4ed" 300 A$(11)="dded" 310 A$(12)="g.g16f#g" 320 A$(13)="a4r4" 330 A$(14)="b.b16bb" 340 A$(15)=">ddd<a" 350 A$(16)="bb16>c16<ba" 360 A$(17)="g4r4" 370 ' 380 'PLAY MUSIC 390 ' 400 PLAY #2, BA$, BB$, BC$, BD$ 410 L=1:T=0 420 X=260:Y=150 430 PUT SPRITE 0,(X,Y),14,0 440 X=X-8 450 PLAY #2, A$(T),A$(T),A$(T),B$ 460 T=T+1 470 IF T>17 THEN T=0:L=L+1 480 IF L<=3 THEN 430 490 END 500 ' 510 'SET SPRITE 520 ' 530 FOR I=1 TO 16 540 READ D$ 550 A$=A$+CHR$(VAL("&b"+LEFT$(D$,8))) 560 B$=B$+CHR$(VAL("&b"+RIGHT$(D$,8))) 570 NEXT I 580 SPRITE$(SN)=A$+B$ 590 RETURN 600 'KISHA 610 DATA 0011110000100000 620 DATA 0111111000110000 630 DATA 0011010011111111 640 DATA 0011010010010010 650 DATA 0011010010010010 660 DATA 0011010010010010 670 DATA 0111111111111111 680 DATA 1000000000000001 690 DATA 1111111111111111 700 DATA 1011111111111111 710 DATA 1111111111010101 720 DATA 1010101010101011 730 DATA 0101010101010101 740 DATA 0010100000000001 750 DATA 0101101111011110 760 DATA 1010100110001100
ソースはもちろんMSXのBASICインタプリタで書きましたよ。たぶんテキストエディタで書いた方が効率はいいだろう。でも書いてみて気がついたのだが気分が全然違う。MSXの青い画面を眺めているとドンドンと8bit脳になっていく。ちょっと復習すれば脳内アセンブルが普通にできそうな・・・いやいやそんな脳は必要ないですよ。
参考資料は
- やさしく弾けるピアノソロ 文部省唱歌・童謡集
- MSX2パーソナルコンピュータ BASIC説明書(松下電器産業株式会社 情報機器部:FS-A1Fに付いてきたもの)
- MSX2+パワフル活用法(杉谷成一:MSX MUSICの使い方が結構詳しく載っている)
押し入れの奥の方を覗いたら、
もあった。これがあれば大抵何でも作れるなぁ・・・作らない作らない。投稿先だったMSX・FANも「休刊」したままだし。
1chipMSXの画期的な部分はSDカードが使えることだろう。これがフロッピー代わりになるのでソースコードを今のマシンに引っ張ってくるのは簡単。容量も2GBまで使えるらしいから、もうMSXの限界というのは
- CPUが遅い*1
しかないのだな。(しか?)
さて。明日はUSBフロッピーディスクドライブを買ってきて、MSX・FANのフロッピーでも吸い出してみよう。
*1:Z80Aの3.579545MHz