SHIROのIchigoJam日記

マイコン「IchigoJam」(イチゴジャム)の電子工作とプログラミングをメインに

LIFE PC

FacebookIchigoJam-FANグループで、PCで動くソフト版IchigoJam BASIC「IchigoJam PC」のβ版が公開されています。
一部の機能が実装されていませんが、動作速度はハードウェア版よりかなり速いです。
IchigoJam PCの動作速度を検証するために、ライフゲームのフル画面版を作ってみました。

ハードウェア版のIchigoJamだと、1世代進めるのに約2分50秒〜3分かかります。気長に待ってください。
IchigoJam PCでは、ThinkPad X100e(CPU:Athlon Neo MV-40 1.60GHz)で、1世代に1秒かかりません。200倍くらい速いです。

1 '*LIFE PC
2 CLV
3 '@RESTART
4 FORZ=50TO97:[Z]=(RND(256)<<8)+RND(256):NEXT:BEEP:GSB27
5 '@LOOP
6 L=0:K=0
7 FORY=0TO23:FORX=0TO31:C=0
8 FORE=-1TO1:FORD=-1TO1
9 U=(X+D)&31
10 V=Y+E:V=V+24*((V<0)-(V>23))
11 Z=V*2+U/16:M=1<<(U%16)
12 B=[Z]&M:C=C+(B<>0)
13 NEXT:NEXT
14 Z=Y*2+X/16:M=1<<(X%16)
15 B=[Z]&M
16 IFBB=1:C=C-1
17 Q=0
18 IFC=2Q=B
19 IFC=3Q=1
20 IFQ[Z+50]=[Z+50]|M
21 IFB<>QK=1
22 L=L+Q
23 NEXT:NEXT
24 GSB27
25 IFL>0&&K>0GOTO5
26 GOTO3
27 '@PRTLIFE
28 CLS:A=#900
29 FORZ=50TO97:D=[Z]:[Z-50]=D:[Z]=0:FORX=0TO15
30 B=D&1:POKEA,B
31 A=A+1:D=D>>1
32 NEXT:NEXT:RTN