スペック
『プチコン3号SmileBASIC』の基本仕様と制限事項です。
エディタ | 行単位のスクリーンエディタ。EDITモードでは自動的に行番号が発生する。 |
---|---|
行番号の範囲 | 0〜999999 |
行番号の扱い | 行番号に過去のBASICのような意味はなく、スクリーンエディタの行番号として扱う。GOTO等の分岐先は行番号ではなく「@ラベル」を使用する。 |
行の折り返し | あり。オプションで切り替え可能。 |
1行文字数 | 文字数制限なし(空メモリーに依存)。 |
マルチプログラム | スロット0〜スロット3の4スロットに、別個のプログラムを記憶・実行可能。 |
SMILEボタン | 編集中のプログラムを破壊せず、別のプログラムを起動する。 デフォルトでは「SMILEツール」が登録されている。 トップメニューのオプションにて、SMILEボタンに任意のプログラムを割り当てることができる。 |
キーボード | ソフトウェアキーボード(英字、カナ、欧州文字、記号など) |
---|---|
ハードウェアボタン | 十字ボタン、A、B、X、Y、L、Rはプログラム中から利用可能 |
スライドパッド | 動かした方向、強さ、角度、移動量 |
拡張スライドパッド | スライドパッド相当の情報を拡張スライドパッドから取得 |
タッチスクリーン | タッチ状態、タッチ位置 |
モーションセンサー | 3軸の加速度 |
ジャイロセンサー | 3軸の角速度と角度 |
表示要素 |
|
---|---|
表示優先順位 | 表示要素ごとのz座標を操作することで自由に設定可能。立体視の場合、z座標が奥行としても扱われる |
出力画面 | 上画面と下画面へ個別に表示可能。上下2画面を連続した1枚として扱うことも可能(XSCREEN 4) |
グラフィックページ | 各画面の表示画像を格納するメモリー領域。GRP0〜GRP5の6枚からなる |
グラフィック解像度 | 上画面 400×240ドット 下画面 320×240ドット XSCREEN 4では、上下画面合わせて320×480ドット |
3Dスクリーン奥行き | z座標で設定 -256(手前)〜1024(奥) |
コンソール文字数 | 上画面 50×30 下画面 40×30 XSCREEN4では、上下画面合わせて40×60 |
コンソール文字色 | 透明色を含む16色から、文字色・背景色に1色ずつ使用可能 |
同時発音数 | BGMと効果音を合わせて24音 |
---|---|
効果音 | プリセット音134種類 周波数、音量、パンポットの変更 同時に8音まで再生 |
BGM用音源 | 128種類の楽器音 2種類のドラムセット PSGとノイズ音源 |
BGM用波形定義 | 32種類の波形定義に対応(WAVSET) |
BGM | プリセット43曲 ユーザー定義128曲(BGMSET) 最大8曲同時に演奏が可能 |
音声合成 | TALK命令で指定文字列の発音可能 |
エフェクター | リバーブ(EFCSET) プリセット3パターン、各種パラメータ指定可能 |
サンプリング | マイクから音声を録音しBEEPやBGMの音色として再生可能 |
文字コード | UNICODE |
---|---|
文字種類 | 数字、英字、ひらがな、カタカナ、ロシア文字、ギリシャ文字、記号 |
データ型 # | 倍精度実数型…変数名末尾が#(省略可能・デフォルト) |
データ型 $ | 文字列型…変数名末尾が$ 最大長2^31、空メモリーに依存 |
データ型 % | 整数型…変数名末尾が% 32ビット符号あり |
16進数表記 | &H |
2進数表記 | &B |
変数名 | 英字で始まる任意長の英数字列とアンダースコア 大文字小文字の区別はない。 |
予約語 | 変数名・ステートメント名として使えない予約語は次のとおり。 IF THEN ELSE ENDIF GOTO GOSUB RETURN ON FOR NEXT WHILE WEND REPEAT UNTIL BREAK CONTINUE DEF END VAR DIM AND OR XOR NOT DATA READ RESTORE PRINT INPUT LINPUT CALL TRUE FALSE SWAP OUT COMMON USE EXEC |
暗黙の型変換 | 数値型間で値を交換する場合、すべて暗黙で値が変換される。文字と数値間では変換されない。 |
ラベル文字列 | @で始まるラベル名が入った文字列変数 |
配列 | 4次元配列まで 添字用のかっこは[]のみ。()は対応していない。最大要素数は2^31、空メモリーに依存 |
マルチステートメント | 可能 :(コロン)で区切る |
サブルーチンとネスト | 制限なし |
プロジェクト | ファイルを階層化して管理する単位。ルート直下に1階層だけフォルダが作られ、ファイルをまとめて管理できる。 |
ファイルの種別 |
|
算術演算子 | |
+ | 加算(A+B) |
---|---|
- | 減算(A-B) |
* | 乗算(A*B) |
/ | 除算(A/B)※0除算はエラー |
MOD | 剰余(A MOD B)※0除算はエラー |
DIV | 整数除算(A DIV B) 商の小数部を切り捨てる。※0除算はエラー |
文字列変数は加算と乗算が利用できます。
- (例)文字列の足し算
- A$="ABC":B$="XYZ":PRINT A$+B$
結果→ABCXYZ
- (例)文字列の掛け算(乗算)
- A$="ABC"*4:PRINT A$
結果→ABCABCABCABC
比較演算子 | |
> | 左辺が右辺より大きい(A>B) |
---|---|
< | 左辺が右辺より小さい(A<B) |
>= | 左辺が右辺より大きいか等しい(A>=B)※=>は使えません |
<= | 左辺が右辺より小さいか等しい(A<=B)※=<は使えません |
== | 両辺が等しい(A==B) 1文字の=は代入の意味として使用。 |
!= | 両辺が等しくない(A!=B)※<>は使えません |
ビット演算子 | |
AND | 論理積(A AND B) |
---|---|
OR | 論理和(A OR B) |
XOR | 排他的論理和(A XOR B) |
NOT | 否定(NOT A) |
<< | 算術シフト左 (A << 1 …左に1ビットシフト) |
>> | 算術シフト右 (A >> 3 …右に3ビットシフト) |
論理演算子 | |
&& | かつ (IF A<3 && B==2 THEN ~) |
---|---|
¦¦ | または (IF A>3 ¦¦ B>3 THEN ~) |
! | 論理反転記号
|
演算子優先順位 | |
(高)① | ()で囲まれた部分 |
---|---|
② | - (単項)、NOT(1の補数)、!(論理反転) |
③ | *、/、DIV(整数除算)、MOD |
④ | +、-(2項) |
⑤ | <<、>> (シフト) |
⑥ | ==、!=、<、<=、>、>= |
⑦ | AND、OR、XOR(ビット演算) |
(低)⑧ | &&、||(論理演算子。ショートカットあり) |