IchigoJam web by WebAssembly

(IchigoJam BASIC 1.4 β 相当・随時ベータ版を反映)


Web ブラウザ上で IchigoJam BASIC が動作します。

インターネットに接続できる環境であれば、すぐに使用できます。

OS を問わずに使用できるのも大きなメリットです。

 

以前一部機能だけ動作可能だった IchigoJam.js がありましたが、

2017年4月に WebAssembly・WASM をベースとした
「IchigoJam web by WebAssembly」となって公開されました。

キー動作は一部使用できませんが、

比較的新しいベータ版の IchigoJam BASIC を随時適用し、
機能はほぼ使用可能です。

 

動作可能なブラウザは次のとおりです。

  • Mozilla Firefox
  • Google Chrome
  • Chromium (Google Chrome の派生元)
  • Apple Safari
  • Microsoft Edge

Internet Explorer は WebAssembly 非対応ですのでご注意下さい。

 

2020年4月より、画面上でキーボード表示が可能になりました。

これにより Android・iOS からブラウザで参照し、

直接 IchigoJam の画面でプログラムを入力・実行できるようになりました。

Windows タブレットなどでの使用では KEY をタップする事で、

キーボードを表示できます。

 

⇧(Shift)・CTL(Ctrl) は押しながらではなく、一度押すとキーが変化し、

入力後に戻るようになります。

ALT(Alt) は絵文字などを用いてキーボード表示を行っています。

この絵文字などは下のテキストエリアでも有効です。

(128・#80 の空白は全角空白で対応されています)


起動方法

Web ブラウザより次のアドレスを参照するだけです。
(2019年1月、常時 SSL(AOSSL)に対応 し http: → https: に変わっています)

 

https://fukuno.jig.jp/app/IchigoJam/

 

起動画面が表示されると正常に使用できます。キーボードを入力してみて下さい。


プログラムの入力・実行

プログラムの入力は通常の IchigoJam 実機同様に IchigoJam 画面上で入力する事ができます。

 

また、下の表示枠にテキストのプログラムを貼り付け、

import ボタンで IchigoJam 画面へ反映する事ができます。

ネット上に掲載されている IchigoJam BASIC のプログラムをコピー・貼り付けして、すぐに実行可能です。

2019年1月よりカナ入力に対応しました。テキストに貼り付けるプログラムは全角カナを入れて変換できます。

また、IchigoJam 画面のキー入力は Shift+Ctrl キーでカナ切り替えできます。

 

下の入力枠にはプログラムだけではなく、任意のコマンドを入れる事もできます。

末尾に RUN を入れておくと、プログラムを入力し、実行まで行う事が可能です。


プログラムの公開

import を行った際にブラウザのアドレス(URL)部分が変化しています。

このアドレスをコピーし、Web サイトなどにリンクとして貼り付けておくと、

リンクをクリックするだけで、プログラムを入力した状態にする事ができます。

 

# 以降にプログラムが直接入っています。

RUN などのプログラムでない部分も入ります。

IchigoJam web が動作するサーバに保存されず、

GitHub Gist のような短縮 URL ではなく、

プログラムが URL に入っているのも特徴です。

 

実際に BASIC/プログラム 内の一部プログラムでこれを使用しています。

 

Facebook グループ IchigoJam-FAN でもこれでプログラム公開が見られます。



プログラムの保存

プログラムを入力した状態で(LIST で表示ができる状態)

画面表示の下にある export をクリックすると、

現在メモリ保存されているプログラムがテキストフィールドで表示されます。

すべて選択→コピー して、テキストエディタへ貼り付け、ファイル保存して下さい。

 

このテキストファイルは USB-シリアルモジュール を用いるなどして、
IchigoJam 実機へ移して動作させる事が可能です。

IchigoJam BASIC RPi では ijbconv で変換し SD カードへ入れる方法もあります。 

動作がおかしい場合は改行コードを変えてみて下さい。



フルスクリーン(全画面)表示

full screen ボタン でフルスクリーン(全画面)表示に対応しています。

IchigoJam PC や IchigoJam BASIC RPi などに近い表示にできます。

16:10 や 16:9 の画面では縦の余白が狭く、横の余白が広くなります。

 

フルスクリーンの解除はキーボードの Esc キーです。
プログラムの実行を止めるのに使うキーは

Esc キーの代わりに Ctrl+C を使用して下さい。



LED

ページの右上には 数字 LED が表示されています。

これは OUT 1〜6・LED に該当します。(LED=OUT 7)並びは右のとおりです。

FOR I=1 TO 7:OUT I,1:NEXT または OUT `11111111 (OUT 127) で確認できます。

 

また、本体 LED が点灯している状態は IchigoJam 画面の周辺が反転するようになります。

LED 1 で確認できます。

 

なお、画面の変化だけで、物理的なピンの入出力は対応していません。

 

OUT 1 / 1  

OUT 6

/ 32

 

OUT 2

/ 2

  OUT 7・LED / 64  

OUT 5

/ 16

 

OUT 3

/ 4

  OUT 4 / 8  


処理速度

基本的に IchigoJam 実機よりも速度は遅くなります。

参考として、次のプログラムを実行してみました。FOR〜NEXT の 10000 回ループです。

 

10 CLT
20 FOR I=0 TO 9999
30 NEXT
40 PRINT TICK()
50 END

 

結果は次のとおりとなります。

 

IchigoJam バージョン TICK() 秒への換算
IchigoJam BASIC 1.2.3(IchigoJam 本体) 1219 約 20.3 秒
IchigoJam BASIC 1.3.0(IchigoJam 本体) 777 約 12.9 秒
IchigoJam BASIC 1.3.0web(2019年1月現在) 2500 約 41.6 秒
IchigoJam BASIC 1.4.0web(2019年11月現在) 2500 約 41.6 秒

 

なお、i5・Core Duo・Celeron と CPU の異なるパソコン、

また Chrome・Firefox・Edge と Web ブラウザを変えて試したところ、速度は変わりませんでした。

また、時期とオリジナルバージョンに関係なく、速度は変化していません。