MSX 版で作っていた 15パズル を
IchigoJam で作ってみました。
実行すると完成状態から 100 回
IchigoJam が動かしてバラバラにしていきます。
「COUNT 0」が表示されたらカーソルキーで
元の状態に戻して下さい。空いてる「..」が基準です。
画面は左上表示でシンプルですが、
これによってシリアル接続を行っている場合でも
通常の画面(UART 1 の表示)で遊べます。
画面サイズを気にしない作りで、
同じプログラムで対応ファームウェアも広くしています。
10 '15 Puzzle
20 CLS:I=0:S=100
30 I=I+1:[I]=I:IF I<17 GOTO 30
40 GOSUB 200
50 R=RND(4):GOSUB 280
60 IF C GOTO 50
70 T=[P]:[P]=[M]:[M]=T
80 S=S-1:IF S GOTO 40
90 GOSUB 200:?"COUNT ";S:?:I=0
100 I=I+1:IF [I]<>I GOTO 130
110 IF I<17 GOTO 100
120 END
130 R=INKEY():IF R GOTO 130
140 R=INKEY()-28
150 IF(R<0)+(R>3)GOTO 140
160 GOSUB 280
170 IF C GOTO 130
180 T=[P]:[P]=[M]:[M]=T
190 S=S+1:GOTO 90
200 LC 0,0:?:I=1
210 IF [I]<16 GOTO 230
220 ?".. ";:P=I:M=I:GOTO 250
230 IF [I]<10 ?" ";
240 ?[I];" ";
250 IF I%4=0 ?
260 IF I<16 LET I,I+1:GOTO 210
270 ?:RETURN
280 C=0:GOTO 290+R*20
290 IF M%4=1 LET C,1:RETURN
300 M=M-1:RETURN
310 IF M%4=0 LET C,1:RETURN
320 M=M+1:RETURN
330 IF(M-1)/4=0 LET C,1:RETURN
340 M=M-4:RETURN
350 IF(M-1)/4=3 LET C,1:RETURN
360 M=M+4:RETURN
MixJuice ダウンロード ?"MJ GET kidspod.club/mj/588
MicJack ダウンロード ?"MJ GKP 588
下記に変更すると IchigoJam BASIC 0.8.9 以降で動作します。
280 C=0:IF R GOTO 305
305 IF R>1 GOTO 325
325 IF R>2 GOTO 350
SkyBerryJAM は 栃木県立栃木工業高等学校 が管理する登録商標であり、
SkyBerryJAM は 栃木県立栃木工業高等学校 の商標です。
Raspberry Pi は
Raspberry Pi 財団 の登録商標です。
Raspberry Pi is a registered trademark or
trademark of
the Raspberry Pi Foundation.
"RISC-V" の商品名は RISC-Vインターナショナル が管理する登録商標です。
The “RISC-V” trade name is a registered trade mark of
RISC-V International.