ファミリーベーシック 命令辞典|全コマンドを実機で引ける総目次

ファミリーベーシック(Family BASIC) の命令・関数・演算子・エラーを、エミュレータ上で1つずつ動かして確かめた辞典です。「PRINT はどう書く?」「?SN ERROR の意味は?」といった1命令単位の疑問から、該当ページへ直接引けるように並べました。

マニュアルの記述ではなく、実際にカセットを挿して動かした結果を一次ソースにしています。だから「マニュアルに載っていない記法」や「AI(LLM)の想定と実機が食い違う挙動」まで載っています。

この辞典は3層構造の真ん中にあります。制作の物語(hub) で全体像をつかみ → この辞典で命令を引き → 各連載回で検証の詳細を読む、という流れです。

カテゴリ別インデックス

カテゴリ 収録 内容
ステートメント(命令文) 43命令 PRINT FORNEXT GOTO IFTHEN 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文字A X1 AB)。3文字以上は受け付けても先頭2文字として扱われ、衝突します。
  • 英字は大文字のみprint ではなく PRINT
  • LET は使えませんLET A=1?SN ERROR)。代入は A=1
  • NEXT に変数を付けないNEXT I?SN ERRORNEXT 単独で書く)。
  • 配列の添字は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 した後の画面・スプライト・メモリをそのまま記録しています。手で再現しづらいエラーも、キーやコントローラの操作を自動で送り込んで発生条件を組み立てて観察しました。どうやってこの辞典を作ったかという制作の物語は、連載で読めます。