フォト
無料ブログはココログ

MyList

« IchigoJam BASICのFOR/NEXT | トップページ | 跡取り娘の経営学 »

2015年4月 7日 (火)

IchigoJam BASICのFOR/NEXT (2)

 IchigoJam BASICにはFOR/NEXTが無いと書いたら。

 作者のブログを見たら、「容量の壁と戦う IchigoJam FOR/NEXT 対応!(2015/03/29)」というエントリがある。var 0.9.8でFOR/NEXTに対応しているぢゃないか。

 公式サイトの下の方のリンクから IchigoJam ver 0.9.8-beta(開発途上版) をDLして、今回はFlashMagicで書いてみた。

Flashmagic

 LPC1114FN28をISPモードにして(トラ技オマケボートの場合はSW1とSW2を同時に押して、SW1(RESET)を先に放す)、COMポート、ファームウェアのHEXファイルを選んで[START]をクリックするだけ。(OpenOCDで書くより簡単だ)

 再起動すると↓ver 0.9.8に上がってる。

IchigoJam 0.9.8 by @taisukef
OK

LIST

10 VIDEO 0
20 CLV
90 [1]=1 : S=1
100 FOR Y=2 TO 8
110 FOR X=S TO 8
130 GOSUB 200
135 REM PRINT "Y=";Y;",X=";X
140 IF R=0 THEN [Y]=X : GOSUB 300 : S=1 : X=8
150 NEXT
160 IF R=0 THEN GOTO 180
170 IF [Y-1]=8 THEN S=[Y-2]+1 : Y=Y-3 ELSE S=[Y-1]+1 : Y=Y-2
180 NEXT
190 GOSUB 300 : END
200 R=0 : E=Y-1
210 FOR I=1 TO E
220 IF [I]=X THEN R=1 : I=E
230 IF [I]=X-(Y-I) THEN R=1 : I=E
240 IF [I]=X+(Y-I) THEN R=1 : I=E
250 NEXT
260 RETURN

300 PRINT
310 FOR I=1 TO 8
320 FOR J=1 TO 8
330 IF Y>=I AND [I]=J THEN PRINT "|Q"; ELSE PRINT "| ";
340 NEXT
350 PRINT "|"
360 NEXT
370 RETURN

RUN

|Q| | | | | | | |
| | | | |Q| | | |
| | | | | | | |Q|
| | | | | |Q| | |
| | |Q| | | | | |
| | | | | | |Q| |
| |Q| | | | | | |
| | | |Q| | | | |
OK

 ちゃんと対応しているようだ。

 試しにNEXTを飛び越えてループを脱出するように変えてみると、関係ないところで、関係ないエラーが発生する。

 飛び越えたNEXTあたりでエラーがでると分かり易いと思う。


Ver0.9.7 で

IF A=0 THEN PRINT "OK"; ELSE PRINT "NG";

のようなコードを書くと、THEN節の";"が解釈されず、常に改行してしまうバグがあったけどVer 0.9.8では改修されているようだ。



最近の投稿】【最近のCPUボード】【最近のIchigoJam】【2017の投稿】【2016の投稿】【2015の投稿

« IchigoJam BASICのFOR/NEXT | トップページ | 跡取り娘の経営学 »

CPUボード」カテゴリの記事

IchigoJam」カテゴリの記事

プログラミング」カテゴリの記事

コメント

コメントを書く

コメントは記事投稿者が公開するまで表示されません。

(ウェブ上には掲載しません)

トラックバック


この記事へのトラックバック一覧です: IchigoJam BASICのFOR/NEXT (2):

« IchigoJam BASICのFOR/NEXT | トップページ | 跡取り娘の経営学 »