IchigoJam BASIC 版 も公開している
GIVE UP! の PanCake 版です。
中心から伸びる物体をカーソルで操作し、長く生きて下さい。
ぶつかってしまうと派手なゲームオーバーの後、
スペースキーで IchigoJam 側にスコアが表示されます。
以前から PanCake で作ろうと思っていたのですが、
PanCake から特定位置の色が検出できないという問題で
しばらく製作できずにいました。
それを解決したのは仮想画面。
仮想アドレス #800〜 に画面情報を入れています。
これは配列・変数の値が入っている領域です。
そのため CLV で初期化が完了できます。
でも普通のドットだとこの領域からあふれてしまうので、
横長にする事で、収めてあります。
使用変数を Q〜Z にしてあるのは、このためでもあります。
IchigoCake BASIC 1.3.2 は BTN(~) で不具合があります。
26 POKE #1E02,0 の 1 行を加えて下さい。
10 'PanCake GIVE UP!
20 CLV:X=20:Y=22:Q=0:R=1
25 IF VER()>11000 UART 1
30 ? CHR$(128,4,5,1):VIDEO 0
40 ? CHR$(128,4,0,11)
50 W=RND(40):V=RND(45)
60 IF W-X<-2 OR W-X>2 GOTO 90
70 IF V-Y<-2 OR V-Y>2 GOTO 90
80 GOTO 50
90 Z=PEEK(#800+W/8+V*5)
100 POKE #800+W/8+V*5,Z|(1<<(W%8))
110 ? CHR$(128,8,1,W*2,V,W*2+1,V,1)
120 W=(BTN(RIGHT))-(BTN(LEFT))
130 V=(BTN(DOWN))-(BTN(UP))
140 IF W<>0 OR V<>0 Q=W:R=V
150 IF X+Q<0 OR X+Q>39 GOTO 230
160 IF Y+R<0 OR Y+R>44 GOTO 230
170 X=X+Q:Y=Y+R
180 Z=PEEK(#800+X/8+Y*5)
190 IF Z&(1<<(X%8)) GOTO 230
200 POKE #800+X/8+Y*5,Z|(1<<(X%8))
210 ? CHR$(128,8,1,X*2,Y,X*2+1,Y,1)
220 S=S+1:WAIT 10:GOTO 50
230 FOR T=0 TO 49
240 ? CHR$(128,8,1,X*2,Y);
250 ? CHR$(RND(80),RND(45),RND(16))
260 NEXT
270 IF !INKEY(SPACE) GOTO 270
280 ? CHR$(128,4,5,0):VIDEO 1
290 ?"SCORE:";S
MixJuice ダウンロード ?"MJ GET kidspod.club/mj/622
MicJack ダウンロード ?"MJ GKP 622
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.