PIC24FJ64GAでGAME言語(その5) [PIC]
マイコン上で動作するベーシック言語環境として IchigoJam がありますが、数十行のソースが色々公開されていて見ていて楽しいですね。
目指す方向はかなり違いますがPIC24FJ64GA用GAME言語の動作確認の意味も込めて迷路生成プログラムを作ってみました。
PIC24FJ用GAME言語ではシリアル接続での表示なので制御コードでカーソル移動や表示色制御を行っています。
迷路生成と探索を行う画面表示のサンプルを YouTube にアップしましたのでご覧くださいませ。
https://youtu.be/n53Iz6BRqWE
ソース自体は60数行程度の小規模なものです。
迷路生成&探索(GAME言語)
[TOP] [ 前へ ] 連載記事 [ 次へ ]
目指す方向はかなり違いますがPIC24FJ64GA用GAME言語の動作確認の意味も込めて迷路生成プログラムを作ってみました。
PIC24FJ用GAME言語ではシリアル接続での表示なので制御コードでカーソル移動や表示色制御を行っています。
迷路生成と探索を行う画面表示のサンプルを YouTube にアップしましたのでご覧くださいませ。
https://youtu.be/n53Iz6BRqWE
ソース自体は60数行程度の小規模なものです。
1' meiro(boutaoshi method) 2015/09/27 by skyriver 2 S=60 T=36 #=100 8' move cursor 9 Y=P/S X=%(0) 10 $=$1B "[" ?=Y+1 ";" ?=X+1 "H" ] 18' set wall 19 Y=P/S X=%(0) 20 B:Y*S+X)=8 ] 29' wait 30 ¥=8 @ @=(¥=0) ] 100 D=& B=D+8 102 D(0)=1 D(1)=S D(2)=-1 D(3)=-S U=S*T-1 110 @ 119' create maze 120 I=S*T @ I=I-1 B:I)=0 @=(I=0) 130 Y=0,T 140 X=0 !=20 150 @=Y+1 160 X=0,S 170 Y=0 !=20 Y=T !=20 180 @=X+1 190 G=2,T-2 200 F=2,S-2 210 X=F Y=G !=20 P=S*G+F 220 @ R=P+D('(4-(G>2))) @=(B:R)=0) 230 P=R !=19 240 @=F+2 250 @=G+2 259' display maze 260 $=$1B "[2J" X=0 Y=0 !=10 $=$1B "[36m" 270 Y=0,T 280 X=0,S 290 Z=" " ;=B:Y*S+X) Z="#" 300 $=Z 310 @=X+1 320 / 330 @=Y+1 340 $=$1B "[m" 350 X=S-1 Y=T-1 !=10 $="@" 360 ¥=100 @ @=(¥=0) 369' explore 370 P=S+1 Z=0 380 @ 390 !=9 "+" $=8 Z=(Z-2)&3 400 @ "" 410 Z=(Z+1)&3 R=P+D(Z) 420 @=(B:R)<8) 430 P=R B:P)=B:P)+1 440 !=30 450 @=(P=U) 459' best route 460 $=$1B "[43m" P=S+1 470 @ 480 !=9 "+" $=8 490 N=0 E=8 500 Z=0,3 510 W=B:P+D(Z)) 520 ;=(W>0)&(W<E) E=W N=Z 530 @=Z+1 540 B:P)=7 P=P+D(N) 550 !=30 560 @=(P=U) 570 $=$1B "[m" 580 @=(0) |
[TOP] [ 前へ ] 連載記事 [ 次へ ]
コメント 0