ファミリーベーシック 命令辞典|全コマンドを実機で引ける総目次
ファミリーベーシック(Family BASIC) の命令・関数・演算子・エラーを、エミュレータ上で1つずつ動かして確かめた辞典です。「PRINT はどう書く?」「?SN ERROR の意味は?」といった1命令単位の疑問から、該当ページへ直接引けるように並べました。
マニュアルの記述ではなく、実際にカセットを挿して動かした結果を一次ソースにしています。だから「マニュアルに載っていない記法」や「AI(LLM)の想定と実機が食い違う挙動」まで載っています。
この辞典は3層構造の真ん中にあります。制作の物語(hub) で全体像をつかみ → この辞典で命令を引き → 各連載回で検証の詳細を読む、という流れです。
カテゴリ別インデックス
| カテゴリ | 収録 | 内容 |
|---|---|---|
| ステートメント(命令文) | 43命令 | PRINT FOR〜NEXT GOTO IF〜THEN DEF SPRITE MOVE POKE など、プログラム本体で使う文 |
| 関数 | 23関数 | RND ASC CHR$ MID$ STICK SCR$ INKEY$ など、値を返す関数 |
| 演算子・記法・実用パターン | 28項目 | 算術・関係・論理演算子、変数名や桁数の制約、スプライト組み立ての定石 |
| エラーコード | 17コード | ?SN ?OV ?IL など全エラー。マニュアルと実機が食い違うものを明示 |
| システムコマンド・メモリ | 11項目 | RUN LIST NEW などの実行制御と、2KBユーザ領域・PEEK/POKE |
| 言語仕様・文字コード | 約40項目 | 整数16bit・実数なし・変数名2文字などの前提と、画面に出せる文字コード表 |
AIに書かせる前に最低限(クイックスタート)
ファミリーベーシックは現代のBASICと違う点が多く、AIに書かせると他言語の感覚で間違えます。まずこの要点だけ押さえてください。各項目の詳細は上のカテゴリ別ページにあります。
- 整数16bitのみ(-32768〜+32767)。実数(小数)はありません。
- 変数名は英字+英数字で最大2文字(
AX1AB)。3文字以上は受け付けても先頭2文字として扱われ、衝突します。 - 英字は大文字のみ。
printではなくPRINT。 LETは使えません(LET A=1は?SN ERROR)。代入はA=1。NEXTに変数を付けない(NEXT Iは?SN ERROR、NEXT単独で書く)。- 配列の添字は0始まり(
DIM A(10)は 0〜10 の11要素)。 - 真は -1・偽は 0(C系の 1/0 とは違う)。関係式の結果も -1/0。
- 関係演算子は
<>>=<=(≠≧≦は不可)。 - 文字列は最大31文字。
?はPRINT、'はREMの略記。&Hは16進プレフィックス。- 変数と論理演算子の間はスペース必須(
NOT XはOK、NOTXは別の識別子扱い)。 - 16×16スプライトは4タイル構成(左上→右上→左下→右下)。左右反転はタイル並べ替え+反転フラグの両方が必要。
対応バージョンについて
本辞典の「✅ 実機確認」は Family BASIC V2.0A / V2.1(HVC-BS 相当)での観察です。エラーコードや基本命令は V3(RAM 4KB・命令増) でも共通ですが、V3 固有の挙動は今後 🔵 マークで追記していきます。各エントリ先頭の凡例:
- ✅ 実機確認 … エミュレータで実際に動かし、画面表示まで観察したもの
- 📖 規格 … マニュアル記載。発生条件が特殊で本検証では未発火(挙動は規格ベース)
この辞典の作り方
各命令は、Family BASIC のエミュレータに短いコードを流し込み、RUN した後の画面・スプライト・メモリをそのまま記録しています。手で再現しづらいエラーも、キーやコントローラの操作を自動で送り込んで発生条件を組み立てて観察しました。どうやってこの辞典を作ったかという制作の物語は、連載で読めます。
- 総論・制作記:ファミリーベーシック 命令・コマンド完全リファレンス(hub)
- 創作トラック(実際に作って遊ぶ):Family BASIC バイブコーディング