「Android-Basic」の版間の差分
1行目: | 1行目: | ||
{{出典の明記|date=2015年11月14日 (土) 02:29 (UTC)}} |
{{出典の明記|date=2015年11月14日 (土) 02:29 (UTC)}} |
||
{{特筆性|date=2015年11月14日 (土) 02:29 (UTC)}} |
{{特筆性|date=2015年11月14日 (土) 02:29 (UTC)}} |
||
'''Android-Basic'''は[[Android]]上で動作する[[BASIC]]言語<ref>{{Cite web|url=https://androider.jp/a/0239d07a0ec2073f/|title=アンドロイダー|accessdate=2012/08/19}}</ref>である。 |
'''Android-Basic'''は[[Android (オペレーティングシステム)|Android]]上で動作する[[BASIC]]言語<ref>{{Cite web|url=https://androider.jp/a/0239d07a0ec2073f/|title=アンドロイダー|accessdate=2012/08/19}}</ref>である。 |
||
==概要== |
==概要== |
||
[[BASIC]]が標準搭載だった時のスタンドアロン型[[BASIC]]が[[Android]]上で動作するようになっている<ref>{{Cite web|url=http://androidbasic.ninja-web.net/indexj.html|title=出典 Android-Basic公式マニュアル|accessdate=2015/08/15}}</ref>。 |
[[BASIC]]が標準搭載だった時のスタンドアロン型[[BASIC]]が[[Android (オペレーティングシステム)|Android]]上で動作するようになっている<ref>{{Cite web|url=http://androidbasic.ninja-web.net/indexj.html|title=出典 Android-Basic公式マニュアル|accessdate=2015/08/15}}</ref>。 |
||
[[コンソール]]画面とエディット画面が同一でダイレクトコマンドでマシンコントロールが可能な仕様。 |
[[コンソール]]画面とエディット画面が同一でダイレクトコマンドでマシンコントロールが可能な仕様。 |
||
13行目: | 13行目: | ||
'''変数表'''や'''ステップ実行'''といった最近の[[統合開発環境|IDE]]に見られるような開発補助機能も持っている。 |
'''変数表'''や'''ステップ実行'''といった最近の[[統合開発環境|IDE]]に見られるような開発補助機能も持っている。 |
||
これをベースに[[Android]]の機能をコントロールする拡張命令が上乗せされている。 |
これをベースに[[Android (オペレーティングシステム)|Android]]の機能をコントロールする拡張命令が上乗せされている。 |
||
拡張命令は '''EX_''' のように2文字とアンダーラインで始まり区別されている。 |
拡張命令は '''EX_''' のように2文字とアンダーラインで始まり区別されている。 |
||
22行目: | 22行目: | ||
高速な[[OpenGL]]での描画に切り替えることができ、弾幕[[シューティングゲーム|シューティング]]が動く程処理は高速である。 |
高速な[[OpenGL]]での描画に切り替えることができ、弾幕[[シューティングゲーム|シューティング]]が動く程処理は高速である。 |
||
[[Android]]ではゲーム用のパッドが標準でないため画面にバーチャルなパッドが表示され、従来の[[ジョイスティック]]関数で8方向と2ボタンの状態を読み取ることができる。 |
[[Android (オペレーティングシステム)|Android]]ではゲーム用のパッドが標準でないため画面にバーチャルなパッドが表示され、従来の[[ジョイスティック]]関数で8方向と2ボタンの状態を読み取ることができる。 |
||
==その他の特徴== |
==その他の特徴== |
||
*[[Android]]が標準で保有している[[SQLite]]のデータベース機能を利用でき、このモードは[[Windows]]のコマンド式[[SQL]]ソフトと同様の操作体系になっている。 |
*[[Android (オペレーティングシステム)|Android]]が標準で保有している[[SQLite]]のデータベース機能を利用でき、このモードは[[Windows]]のコマンド式[[SQL]]ソフトと同様の操作体系になっている。 |
||
*[[Bluetooth]]の入出力命令があり端末間の通信や[[ロボット]]制御等への応用が可能になっている。 |
*[[Bluetooth]]の入出力命令があり端末間の通信や[[ロボット]]制御等への応用が可能になっている。 |
||
*[[Java]]形式の[[正規表現]]が利用可能。 |
*[[Java]]形式の[[正規表現]]が利用可能。 |
||
38行目: | 38行目: | ||
*'''GET@,PUT@'''命令はグラフィックバッファを使用するためデータは全く別のものになっている。 |
*'''GET@,PUT@'''命令はグラフィックバッファを使用するためデータは全く別のものになっている。 |
||
*'''セミグラフィック'''文字は存在しない。 |
*'''セミグラフィック'''文字は存在しない。 |
||
*キーを直接読み込む'''INP()'''関数の指定値は[[Android]]のキーコードを指定しなければならない。 |
*キーを直接読み込む'''INP()'''関数の指定値は[[Android (オペレーティングシステム)|Android]]のキーコードを指定しなければならない。 |
||
==Hu-BASICとの互換性== |
==Hu-BASICとの互換性== |
2020年9月6日 (日) 08:49時点における版
この記事の主題はウィキペディアにおける独立記事作成の目安を満たしていないおそれがあります。 (2015年11月) |
Android-BasicはAndroid上で動作するBASIC言語[1]である。
概要
BASICが標準搭載だった時のスタンドアロン型BASICがAndroid上で動作するようになっている[2]。 コンソール画面とエディット画面が同一でダイレクトコマンドでマシンコントロールが可能な仕様。
言語仕様は基本的にMS形式のものと互換性があり、特に日本で一番普及している N88-BASICのプログラムが最小限の手直しで動作するようになっている。
和製アプリのためソース内部やマニュアルは日本語に対応。 変数表やステップ実行といった最近のIDEに見られるような開発補助機能も持っている。
これをベースにAndroidの機能をコントロールする拡張命令が上乗せされている。 拡張命令は EX_ のように2文字とアンダーラインで始まり区別されている。
ユーザーが使用できるフリーエリアの最大サイズの表記はないが、フレキシブルメモリーとして自動でその機種の利用可能最大値まで伸びる仕組みと記されている。
スプライト機能
80年代後半BASICに見られたBGグラフィックとスプライト機能の制御が取り入れられている。 BGグラフィックはチップ16*16を一画面単位として広さを自由に設定でき、最大16*16画面でRPGのフィールド作りに適した構成になっている[3]。 高速なOpenGLでの描画に切り替えることができ、弾幕シューティングが動く程処理は高速である。
Androidではゲーム用のパッドが標準でないため画面にバーチャルなパッドが表示され、従来のジョイスティック関数で8方向と2ボタンの状態を読み取ることができる。
その他の特徴
- Androidが標準で保有しているSQLiteのデータベース機能を利用でき、このモードはWindowsのコマンド式SQLソフトと同様の操作体系になっている。
- Bluetoothの入出力命令があり端末間の通信やロボット制御等への応用が可能になっている。
- Java形式の正規表現が利用可能。
- C言語への変換SAVE機能があるので手直しによりC言語への転用も可能。
- DOSと共通するコマンドをいくつか持っている。copy,mkdir,chdir,zip等。
N88-BASICとの互換性
基本命令では細かい所まで修正なしで動作するようにできている。 N88-BASICのプログラムを動かす上での主な変更点、注意点[4]。
- テキストカラーやグラフィックのLINE文等で指定するカラーコード(0から7または15まで)の指定はCOL(コード値)のようにフルカラー変換関数で囲う。
- SCREEN命令のパラメーター指定法が違う。
- GET@,PUT@命令はグラフィックバッファを使用するためデータは全く別のものになっている。
- セミグラフィック文字は存在しない。
- キーを直接読み込むINP()関数の指定値はAndroidのキーコードを指定しなければならない。
Hu-BASICとの互換性
一部にHu-BASICやBASIC-M25との互換を考慮された命令もある[5]。
- DATA文の読み込み行番号を取得するDTL関数。
- 文字列での式を計算した値で返すCALC()関数。
- テキスト画面の文字列を読み込むSCRN$()関数。
- ブロックIF文。
- 流れ制御のREPEAT UNTIL文。
- 処理を一時停止するPAUSE命令。
- LIST内を検索するSEARCH命令。
- CONSOLE命令でY軸だけでなくX軸の位置と幅を指定可能。
- 進数変換をするHEX$(),BIN$()関数。
- 度とラジアンを変換するRAD(),DEG()関数。
- 文字をグラフィックに描画するSYMBOL命令。
- カラーコードを生成するRGB(),HSV()関数。
- グラフィックをロード、セーブするGLOAD,GSAVE命令。
- 画面の表示優先順位を決定するPRIORITY命令。
- ジョイスティック関係のSTICK(),STRIG()関数。
- 各種設定をするINIT命令。
ユーザー関数と再帰処理を備えていて用意されたサンプルプログラムにはタートルグラフィックスやハノイの塔といったおなじみのものがある。
出典
- ^ “アンドロイダー”. 2012年8月19日閲覧。
- ^ “出典 Android-Basic公式マニュアル”. 2015年8月15日閲覧。
- ^ “公式マニュアル BG画面構成図”. 2015年8月15日閲覧。
- ^ 参考文献 NEC N88-BASIC REFERENCE MANUAL
- ^ 参考文献 SHARP Hu-BASIC MANUAL