ファイル・プログラム操作

DIRECTモード専用命令 →解説

CLEAR BASIC内部のメモリーを初期化
NEW プログラムを消去
LIST EDITモードに切り替え、プログラムを表示
RUN プログラムを実行
CONT プログラムを再開
PROJECT カレントプロジェクトの変更・取得
BACKTRACE 最後に実行していた場所を表示

ファイル

FILES ファイルの一覧(またはプロジェクト一覧)を表示
LOAD ファイルの読込
SAVE ファイルに保存
RENAME ファイルの名前を変更
DELETE ファイルを削除
EXEC ファイルを読み込んで実行
USE 別SLOTにあるプログラムを使用可能にする
CHKFILE ファイルが存在するか調べる

ソースコード操作

PRGEDIT プログラムを操作するSLOTと行を指定
PRGGET$ プログラムから1行取得
PRGSET プログラムの1行を書き換え
PRGINS プログラムに1行挿入
PRGDEL プログラムから行削除
PRGSIZE プログラムのサイズ情報を取得
PRGNAME$ プログラムのファイル名を取得

画面表示操作

画面の基本設定 →解説

XSCREEN 各画面のサイズなどを設定
DISPLAY 上下どちらの画面を操作するか指定
VISIBLE 各画面(CONSOLE,GRP,BG,SPRITE)の表示・非表示を設定
BACKCOLOR 画面の背景色を指定
ACLS 画面表示設定を初期値に戻す
FADE 画面をフェードさせる
FADECHK 画面がフェード中か調べる

コンソール制御 →解説

CLS コンソール画面を消去
COLOR コンソール画面の文字色・背景色を設定
LOCATE コンソール画面の座標を指定
PRINT コンソール画面に文字を表示
ATTR コンソール画面に表示する文字の回転・反転を設定
SCROLL コンソール画面全体をスクロール
CHKCHR コンソール画面の指定位置の文字コードを調べる
INPUT キーボードからの文字入力を待つ(複数データ可)
LINPUT キーボードからの文字入力を待つ(「,」入力可)
INKEY$ キーボードから今入力されている文字を調べる
FONTDEF フォントデータを変更
? 画面に文字を表示する。PRINTと同じ意味
WIDTH コンソール画面の文字サイズを変更する

スプライト画面 →解説

SPPAGE スプライトキャラの定義に使用するグラフィックページを指定・取得
SPCLIP スプライトキャラを表示する範囲を指定
SPDEF スプライトキャラの定義データを変更・取得
SPSET スプライト番号にキャラクターをセット
SPCLR スプライト番号のキャラ設定をクリア
SPSHOW スプライトを表示状態にする
SPHIDE スプライトを非表示状態にする
SPHOME スプライトキャラの原点座標を変更・取得
SPOFS スプライトキャラの表示座標を変更・取得
SPROT スプライトキャラの回転角度を変更・取得
SPSCALE スプライトキャラの表示倍率を変更・取得
SPCOLOR スプライトキャラの色合いを変更・取得
SPCHR スプライトキャラのキャラ種類を変更・取得
SPLINK スプライトの同士をリンク・取得
SPUNLINK スプライトの同士のリンクを解除
SPANIM スプライトにアニメーションを設定
SPSTOP スプライトのアニメーションを一時停止
SPSTART スプライトのアニメーションを再開
SPCHK スプライトのアニメーション状況を取得
SPVAR スプライト用内部変数の値を設定・取得
SPCOL スプライトの衝突判定のルールを設定・取得
SPCOLVEC スプライトの衝突判定用に移動量を設定
SPHITSP スプライト同士の衝突判定
SPHITRC スプライトと指定領域との衝突判定
SPHITINFO スプライトの最後の衝突結果を取得
SPUSED スプライト番号が使用されているかチェック
SPFUNC スプライト番号にコールバック処理を割り当て

バックグラウンド画面 →解説

BGPAGE BGキャラの定義に使用するグラフィックページを指定・取得
BGSCREEN BGレイヤーの大きさを指定
BGCLR BGレイヤーの設定をクリア
BGSHOW BGレイヤーを表示状態にする
BGHIDE BGレイヤーを非表示状態にする
BGCLIP BGレイヤーを表示範囲を指定
BGHOME BGレイヤーの原点を指定・取得
BGOFS BGレイヤーの表示座標を指定・取得
BGROT BGレイヤーの回転角度を変更・取得
BGSCALE BGレイヤーの表示倍率を変更・取得
BGPUT BGレイヤーにキャラクターを配置
BGFILL BGレイヤーの指定範囲を指定キャラで埋める
BGGET BGレイヤーのキャラクター情報を取得
BGANIM BGレイヤーのアニメーションを設定
BGSTOP BGレイヤーのアニメーションを一時停止
BGSTART BGレイヤーのアニメーションを再開
BGCHK BGレイヤーのアニメーション状況を取得
BGVAR BGレイヤー用内部変数の値を設定・取得
BGCOPY BGレイヤーの指定範囲を別の場所にコピー
BGLOAD BGレイヤーに配列変数からデータを読込
BGSAVE BGレイヤーのキャラ配置データを配列変数に格納
BGCOORD BGレイヤー上での座標と画面上の座標を相互変換
BGCOLOR BGレイヤーの色合いを変更・取得
BGFUNC BGレイヤーにコールバック処理を割り当て

グラフィック画面 →解説

GPAGE グラフィックページの表示ページと操作ページを指定・取得
GCOLOR グラフィック画面に描写する基本色を指定・取得
RGB 色を、A(透明度)R(赤)G(緑)B(青)で指定
RGBREAD 色コードからRGBAを取得
GCLIP グラフィック画面の表示範囲・描写範囲を指定
GPRIO グラフィック画面のZ座標を指定
GCLS グラフィック画面をクリア(塗りつぶす)
GSPOIT グラフィック画面の指定座標の色を取得
GPSET グラフィック画面に点を描く
GLINE グラフィック画面に直線を描く
GCIRCLE グラフィック画面に円・弧を描く
GBOX グラフィック画面に四角形の枠を描く
GFILL グラフィック画面を四角形に塗りつぶす
GPAINT グラフィック画面の囲われた部分を塗りつぶす
GCOPY グラフィック画面の指定範囲を別の場所にコピー
GSAVE グラフィック画面の描画データを配列変数に格納
GLOAD グラフィック画面に配列変数からデータを読込
GTRI グラフィック画面を三角形に塗りつぶす
GPUTCHR グラフィック画面に8ドットの文字を描く
GOFS グラフィック画面の座標変更・取得
GPUTCHR16 プチコンBIG グラフィック画面に16ドットの文字を描く

ハードウェア操作

各種入出力

XON 3DS/WiiUモード切替、マイク、センサーの使用開始
XOFF マイク、拡張スライドパッド、各センサーの使用を終了
BUTTON 物理ボタン(十字キー、ボタン)の情報を取得
BREPEAT 物理ボタンのキーリピート機能(自動連打)を設定
STICK スライドパッドの情報を取得
STICKEX 拡張スライドパッドの情報を取得
ACCEL モーションセンサー(加速度センサー)情報を取得
GYROA ジャイロセンサー(角度センサー)の「角度変化」情報を取得
GYROV ジャイロセンサー(角度センサー)の「角速度」情報を取得
GYROSYNC ジャイロセンサー(角度センサー)の値をリセット
TOUCH タッチパネルの情報を取得
MICSTART マイクからのサンプリング(音声取得)を開始
MICSTOP マイクからのサンプリング(音声取得)を停止
MICDATA サンプリングデータの指定位置を調べる
MICSAVE サンプリングデータを配列にコピー
CONTROLLER コントローラーの情報取得
VIBLATE プチコンBIG コントローラーを振動させる

効果音とBGM

BEEP BEEP(通知・警告音)や楽器の単音を鳴らす
BGMCHK BGMトラックの演奏状態を取得
BGMCLEAR BGMのユーザー定義曲を消去
BGMPLAY BGMを演奏
BGMSET BGM定義にユーザーBGMをMMLで定義
BGMSETD BGM定義にユーザーBGMをDATAからMMLで定義
BGMVAR BGMトラック用内部変数の値を設定・取得
BGMSTOP BGMの演奏を停止
BGMVOL BGMの音量を指定
WAVSET ユーザー定義楽器音(GM)を直接設定
WAVSETA ユーザー定義楽器音(GM)を数値配列から設定
EFCOFF BEEP,BGM,TALKのエコーを止める
EFCON BEEP,BGM,TALKのエコーを再開
EFCSET BEEP,BGM,TALKにエコーをかける
EFCWET BEEP,BGM,TALKそれぞれのエコー量を設定
TALK 音声合成を再生
TALKCHK 音声合成が再生中か調べる
TALKSTOP 音声合成を停止
BGMPAUSE BGMの演奏を一時停止・状態取得
BGMCONT BGMの演奏を再開
SNDSTOP 全ての音を停止

高度サウンドユニット

BIQUAD BiQuadフィルタ
BQPARAM BiQuadフィルタのフィルタ係数を計算
FFT 複素数配列に対してフーリエ変換
IFFT 複素数配列に対してフーリエ逆変換
FFTWFN 配列 W に nで指定した種類の窓関数値を返す
PCMCONT PCMSTREAM停止時の状態から再開
PCMSTOP PCMSTREAMを停止
PCMSTREAM PCM再生の各種設定
PCMVOL PCMSTREAMの音量を設定
RINGCOPY リングバッファとしてデータをコピー
ARYOP 配列間で要素の一括演算を行う

ワイヤレス通信

MPSTART プチコン3号 ワイヤレス通信を開始
MPEND プチコン3号 ワイヤレス通信を終了
MPSEND プチコン3号 ワイヤレス通信でメッセージを送る
MPRECV プチコン3号 ワイヤレス通信で受信したメッセージを調べる
MPSTAT プチコン3号 ワイヤレス通信の接続状況を調べる
MPNAME$ プチコン3号 ワイヤレス通信中の相手の端末名を調べる
MPGET プチコン3号 ワイヤレス通信時、共用の内部変数の値を取得
MPSET プチコン3号 ワイヤレス通信時、共用の内部変数に値をセット

変数・配列・文字列・数値

計算・演算

算術演算子 + - * / MOD DIV << >> NOT カッコ
比較演算子 == != < <= > >=
論理演算子 && || AND OR XOR !

変数と配列

= 変数に値を代入
DIM 変数の使用を宣言
VAR 変数の使用を宣言。別SLOTの変数内容を取得
SWAP 2つの変数の値を交換
INC 変数に値を加算
DEC 変数の値を減算
COPY 配列の内容を一括代入
SORT 配列を昇順に並び替え
RSORT 配列を降順に並び替え
PUSH 1.文字列の最後に文字を追加 2.配列の最後に要素を追加する
POP 1.文字列の最後の1文字を削除 2.配列の最後の要素を削除し取得
UNSHIFT 1.文字列の先頭に文字列を追加 2.配列の先頭に要素を追加する
SHIFT 1.文字列の先頭の1文字を削除 2.配列の先頭の要素を削除し取得
FILL 配列の全要素に同じ値を代入

文字列操作

ASC 文字から、文字コードを取得
CHR$ 文字コードから、文字を取得
VAL 文字列を数値に変換
STR$ 数値を文字列に変換
HEX$ 数値を16進数の文字列に変換
FORMAT$ 数値や文字列を指定の書式に変換
LEN 1.文字列の長さを調べる 2.配列の要素数を調べる
MID$ 文字列の一部分を取得
LEFT$ 文字列の左から指定文字数分を取得
RIGHT$ 文字列の右から指定文字数分を取得
INSTR 文字列内を検索
SUBST$ 文字列内を置換
BIN$ 数値を2進数の文字列に変換

数学関数

FLOOR 数値の小数点以下を切り捨て
ROUND 数値の小数点以下を四捨五入
CEIL 数値の小数点以下を切り上げ
ABS 数値の絶対値を求める
SGN 数値の符号を調べる
MIN 最小値を求める
MAX 最大値を求める
RND 乱数(ランダム)値を取得(整数)
RNDF 乱数(ランダム)値を取得(0~1未満)
RANDOMIZE 乱数の発生源を初期化
SQR 数値の平方根(ルート)を求める
POW 数値のべき乗を求める
EXP e(自然対数の底)のべき乗を求める
LOG 数値の対数を求める(log)
PI 円周率πの値を得る
RAD 角度値を、度数からラジアンに変換
DEG 角度値を、ラジアンから度数に変換
SIN 三角関数SIN値を求める
COS 三角関数COS値を求める
TAN 三角関数TAN値を求める
ASIN 逆三角関数ASIN値を求める
ACOS 逆三角関数ACOS値を求める
ATAN 逆三角関数ATAN値を求める
SINH 双曲線関数SINH値を求める
COSH 双曲線関数COSH値を求める
TANH 双曲線関数TANH値を求める
CLASSIFY 数値が通常の数値か調べる

プログラム制御・アルゴリズム

制御と分岐

@ プログラムの任意の場所を示すラベル(名前)
GOTO 指定したラベルの場所にジャンプ
GOSUB 指定したラベルの場所のサブルーチンを実行
RETURN サブルーチンの処理を終了し、元の場所に処理を戻します
ON~GOTO,GOSUB~ idxの値を参照し、指定したラベルにジャンプ
IF~THEN~ELSEIF~ELSE~ENDIF もし~なら…の条件式で処理を分岐
FOR~NEXT 同じ処理をカウント数だけ繰り返す
WHILE~WEND 同じ処理を、指定条件を満たしている間繰り返す
REPEAT~UNTIL 同じ処理を、指定条件を満たすまで繰り返す
CONTINUE ループ処理をスキップし、次に進む
BREAK ループ処理を終了する
END プログラムを終了する
STOP プログラムを中断させる

ユーザー定義関数

DEF~END ユーザー関数・ユーザー命令を定義する
COMMON DEF~END 別SLOTから呼び出せるユーザー定義関数・命令を定義する
CALL 1.ユーザー定義関数/命令を呼び出す 2.コールバック処理をする

その他の命令

READ DATAに書かれた内容で変数に値を一括代入する
DATA READで読み取るためのデータを記述
RESTORE READで読込むDATAの位置を指定
OPTION プログラムの動作モードを設定
WAIT プログラムを指定フレーム数停止
VSYNC プログラムを指定フレーム間隔まで停止
' プログラムの中にコメントを書く
REM プログラムの中にコメントを書く
KEY ファンクションキーの設定を上書/読込
DTREAD 日付/曜日を数値で取得
TMREAD 時刻を数値で取得
CHKLABEL ラベル名が存在するか調べる
CHKCALL ユーザー定義命令・関数に使われている名前か調べる
CHKVAR 変数に使われている名前か調べる
DIALOG 画面にダイアログを表示する
CLIPBOARD クリップボードへの読み書き
DLCOPEN プチコン3号 カタログIPの利用開始を宣言

その他

<付録>

DIRECT,EDITモード プログラムの保存・読込・編集などを行う操作画面
画面構成 コンソール/SPRITE/BG/グラフィック/背景色 の各画面
画面サイズ 各単位での画面サイズまとめ
システム予約変数 プチコンSmileBASICが使用している変数
エラーコード表 エラーコードとエラー内容一覧
# 定数リテラル(固定)値を呼び出す
関数と命令 関数と命令の使い方と違い

サンプルコード

サンプルについて サンプルコードについての解説
例:文字の表示 文字の表示・位置指定・色指定
例:キャラ操作(1) スプライトキャラの表示・移動
例:キャラ操作(2) スプライトキャラのジャンプ・移動制限・アニメーション
例:マップ作成表示 BG画面(背景・マップ)の作成