ファミリーベーシック 言語仕様・文字コード一覧|整数16bit・カナ文字を実機で確かめた辞典

ファミリーベーシック(Family BASIC)は、現代の感覚で書くと細かいところでつまずきます。整数は16bit止まりで実数(小数)が無い変数名は2文字まで英字は大文字のみ真は -1・偽は 0…といった「言語そのものの前提」が、いまの BASIC や他言語とは違うからです。本ページは、その前提となる言語仕様と、画面に出せる文字コードを一覧にした辞典です。

ポイントは、AI(LLM)に Family BASIC を書かせると、まさにこの前提のところで間違えること。print "hello" と小文字で書いたり、SCORE のような3文字以上の変数を使ったり、A=3.14 と小数を入れたり——どれも実機では通りません。命令そのもの(ステートメントや関数)を引く前に、ここで「言語の地雷」を先に潰しておくのが本ページの役割です。下表から各項目へ飛んでください。

辞典シリーズ:この辞典は命令カテゴリごとに分かれています。総目次は ファミリーベーシック 命令・コマンド完全リファレンス(hub)から。

対応バージョンと凡例

言語仕様・文字コードは基本的に Family BASIC V2.0A / V2.1 / V3 で共通です(RAM 容量など一部はバージョン差があり、その都度注記します)。本ページの「実機確認」は V2.0A(HVC-BS 相当)で観察した結果です。各エントリの先頭にマークを付けています。

  • ✅ 実機確認 … エミュレータで実際に挙動を確認したもの
  • 📖 規格 … マニュアル記載の仕様。本ページは前提情報が中心のため、大半が 📖 です

このページは「命令を打つ前に知っておくべき前提」を集めているため、画面出力をともなう観察ブロックは少なめです。値が載っているコード表は、すべてマニュアルの規格値です。

言語仕様

AI が他言語 BASIC の感覚で間違える5点(先に知っておきたい)

この辞典で一番効くのがこの5点です。AI にコードを書かせると、ここで的を外します。

  1. 実数(小数)が無い — 数値は 16bit 符号付き整数のみ。A=3.14 のような小数は扱えません(整数の範囲)。
  2. 変数名は2文字までSCORE は使えず、3文字目以降は無視されます。SC のように2文字へ。
  3. 英字は大文字のみ — 小文字キーが存在せず、print "hello"PRINT "HELLO" に直す必要があります(使える文字種)。
  4. 真は -1・偽は 0 — 関係式の結果は 0/1 ではなく 0/-1。論理演算とビットの扱いがこれに従います(全演算子の優先順位)。
  5. 文字列は31文字まで — 連結や LEFT$/MID$ の結果が31文字を超えると扱えません(文字列の長さ)。

言語仕様 早見表

項目 要点 詳細
使える文字種 数字・英大文字・カナ・記号(小文字/ひらがな/漢字なし)
整数の範囲(16bit) -32768〜+32767。実数なし
文字列の長さ 0〜31文字
マルチステートメント : で1行に複数文
サブルーチン・ネスト 固定上限なし(メモリ次第)
エディタ スクリーンエディタ
画面モード BG/スプライト/バックドロップの3層
画面解像度 テキスト28×24 / ドット256×240 / 1字8×8
発色 52色のマスタパレット
サウンド 同時3音+効果音
コントローラ 十字キー+トリガー(STICK/STRIG)
ファイル入出力 カセットテープ(1200ボー)
命令数 基本74命令
アニメキャラ 内蔵16種類から選ぶ
予約語索引 全命令の分類+略号一覧
算術演算子の優先順位 * /MOD+ -
全演算子の優先順位 算術>関係>論理の10段階
命令解説の表記規則 [ ] ( ) 《》 等の読み方
同梱ソフト BASIC/計算/伝言/作曲の4ボード
ROM構成 プログラム32KB+CHR 8KB
RAM構成 本体2KB/カセット8KB
文字表示能力 28×24=672文字
スプライト表示能力 16×16単位/256×240
サウンド詳細 3重音+効果音の内訳
キーボード配列 HVC-007(ASCII+JISかな)
外部インタフェース テープ用ピンジャック
メモリバックアップ カセット内RAMを一定期間保持
外形・重量 キーボード/カセットの寸法
カラーチャート パレット参照表(4×4×2系統)

各仕様の詳細

使える文字種

📖 規格

使えるのは 数字・英文字・カナ・記号 です。

  • 漢字・ひらがなは扱えません(カナ=カタカナのみ)。
  • 英文字は大文字のみ。小文字は存在しません(キーボードに小文字キーが無く、キャラクタコード表 B も A-Z のみで a-z は欠番)。
  • AI が print "hello" のように小文字で書いた場合、PRINT "HELLO" に補正する必要があります。

整数の範囲(16bit)

📖 規格

整数の表現範囲は 16ビット符号付き(-32768〜+32767) です。

  • 16進表記では &H0000&HFFFF
  • 実数(浮動小数点)はサポートしません — 整数型のみです。
  • この範囲を超える演算結果は保証されません(乗算での桁あふれ挙動はエラーコード辞典の ?OV 参照)。

文字列の長さ(31文字)

📖 規格

文字列の長さは 0〜31文字 です。

  • 31文字を超える文字列は扱えません。
  • 文字列連結や LEFT$/RIGHT$/MID$ の結果が31を超えないよう注意します(超過は ?ST エラー)。

マルチステートメント

📖 規格

:(コロン)で区切れば、1行に複数の文を書けます。

  • 例: 10 A=1:B=2:PRINT A,B

サブルーチン・ネスト

📖 規格

GOSUB のネスト数に固定上限はなく、メモリの範囲内で制限なしです。FORNEXT のネストも同様です。

エディタ

📖 規格

編集はスクリーンエディタ方式です。画面上でカーソルを動かして直接編集します。LIST で表示してからカーソルを戻して再編集するのが基本の流儀です。

画面モード

📖 規格

画面は BG GRAPHIC 面・スプライト面・バックドロップ面の3層です。重ね合わせ表示で、BG GRAPHIC が背景、スプライトが手前、バックドロップが背景色になります。

画面解像度

📖 規格

  • テキスト座標は 28列 × 24行LOCATE で指定する範囲)。
  • ドット単位の座標は 256 × 240XPOS/YPOS、SPRITE 系)。
  • 1キャラクタは 8×8ドット固定です。

発色

📖 規格

カラーゼネレータは 52色を発色します。同時表示は別途パレット制約があります(PALET 文、カラーチャート参照)。

サウンド

📖 規格

音色・テンポ・3重音・効果音を扱えます。同時発音は3音(3重音)。BEEP / PLAY 文で制御します。

コントローラ

📖 規格

左右コントローラ+トリガースイッチの入力が可能です。読み取りは STICK / STRIG 関数で行います。

ファイル入出力

📖 規格

補助記憶はカセットテープのみ(1200ボー)です。SAVE / LOAD でテキスト・BG GRAPHIC を保存します。

命令数

📖 規格

命令数は 基本74。全予約語は予約語索引を参照してください。

アニメキャラクタ(内蔵16種類)

📖 規格

DEF SPRITE / DEF MOVE で使うアニメキャラクタは、本体内蔵の16種類から選んで使います(任意のドット絵を作って登録するわけではありません)。DEF MOVE の引数 A=0〜15 の順は次のとおりです。

A キャラクタ A キャラクタ
0 マリオ 8 スターキラー
1 レディ 9 スターシップ
2 ファイターフライ(ハエさん) 10 爆発
3 アキレス 11 ニタニタ
4 ペンペン(ペンギンさん) 12 レーザー(8×8単タイル)
5 ファイアーボール 13 シェルクリーパー(カメさん)
6 14 サイドステッパー(カニさん)
7 スピナー 15 ニットピッカー(トリさん)

視覚的な絵柄はキャラクタテーブルA、完全な CHR$ マッピングはスプライト全マップを参照。ユーザがオリジナルキャラを描く方法は CGSET(表示する絵柄セットの切替え)/ BG GRAPHIC(背景)エディタ経由で、こちらは「アニメキャラクタ」とは別系統です。

予約語索引

📖 規格

全予約語を機能別に分類した索引です。各命令の略号は . で終端して省略入力できます(例: PRINTP.)。

システムコマンド(実行制御) CLEAR(CLE.) NEW LIST(L.) RUN(R.) CONT(C.) LOAD(LO.) SAVE(SA.) LOAD?(LO.? / LO.P.)

一般ステートメント 代入 PRINT(?, P.) INPUT(I.) LINPUT(LIN.) CLEAR(CLE.) DIM(DI.) GOTO(G.) GOSUB(GOS.) RETURN(RE.) IF~THEN(IF~T.) FOR~TO~STEP(F.~TO~ST.) NEXT(N.) ON~(O.) STOP(STO.) END(E.) SWAP(SW.) REM(略号 'READ(REA.) DATA(D.) RESTORE(RES.) CALL(CA.) POKE(PO.)

画面制御ステートメント LOCATE(LOC.) COLOR(COL.) CGEN(CGE.) CLS(CL.) CGSET(CG.) PALET(PAL.B, PAL.S)

MOVE コマンド(スプライトの自動移動) DEF MOVE(DE.M.) MOVE(M.) CUT(CU.) ERA(ER.) POSITION(POS.) XPOS(XP.) YPOS(YP.) MOVE(n)(M.(n))

特殊ステートメント KEY(K.) KEYLIST(K.L.) PAUSE(PA.) SYSTEM(S.) VIEW(V.)

サウンド制御 BEEP(B.) PLAY(PL.)

数値関数 ABS(AB.) SGN(SG.) RND(RN.)

文字関数 ASC(AS.) CHR$(CH.) VAL(VA.) STR$(STR.) HEX$(H.) LEFT$(LEF.) RIGHT$(RI.) MID$(MI.) LEN(LE.)

特殊関数 PEEK(PE.) POS FRE(FR.) STICK(STI.) STRIG(STRI.) CSRLIN(CS.) SCR$(SC.)

入出力用文字関数 INKEY$(INK.)

スプライト制御ステートメント DEF SPRITE(DE.SP.) SPRITE(SP.) SPRITE ON(SP.O.) SPRITE OFF(SP.OF.)

算術演算子の優先順位

📖 規格

算術演算子の優先度は高い順に次のとおりです。

  1. * /(乗算・除算)
  2. MOD(剰余)
  3. + -(加減算)

同じ優先度が並んだら左から順に評価します。順序を変えたいときは ( ) で囲みます。

全演算子の優先順位

📖 規格

全演算子の優先順位は次の10段階です。同じレベルなら左から評価します。

  1. ( ) — 括弧内
  2. 関数(ABS, RND, ASC, …)
  3. *, / — 乗算・除算
  4. MOD — 剰余
  5. -, + — 加減算(単項マイナスも可)
  6. =, <>, >, <, >=, <= — 関係演算子
  7. NOT — 否定
  8. AND — 論理積
  9. OR — 論理和
  10. XOR — 排他的論理和

算術 > 関係 > 論理 の階層なので、IF X > 0 AND X < 10 THEN のような自然な書き方ができます(関係が先に評価される)。なお関係式の結果は真が -1、偽が 0 である点に注意してください。

命令解説の表記規則

📖 規格

本リファレンスの各命令解説は、以下の6ブロックで構成しています。

  1. 番号(色) … 命令の番号と分類カテゴリ
  2. 文法 … 引数形式
  3. 省略形 … 短縮入力形(例: PRINTP.
  4. 説明 … 動作の解説
  5. サンプルプログラム … 実行例
  6. デフォルト値 … 引数省略時の値

構文表記の記号:

  • [ ] … 省略可能
  • ( ) … 演算優先や引数の括弧
  • ,... … 繰り返し可能
  • ( | ) … 区切られた選択肢
  • 《》 … メタ要素(型・パラメタの意味)

GAME BASIC モード起動直後の状態(引数省略時の基準): CGEN2(CGEN=表示する絵柄セットの切替え) / SPRITE OFF / POSITION n, 120, 120 / PLAY "O3V15T4M0"(音程の長さ5)/ パレットは BG・SPRITE 用とも配色1。

同梱ソフト(4ボード)

📖 規格

ファミリーベーシック ROM カートリッジには、以下4つの「ボード」が同梱されています。

  1. BASIC(BG GRAPHIC を含む)— GAME BASIC モード
  2. カリキュレータボード(CALC) — 関数電卓
  3. メッセージボード — 伝言板/グラフィック編集
  4. ミュージックボード — 作曲機能

AI がコードを書くのは主に (1) の GAME BASIC モードです。(2)-(4) は対話的 UI モードで、BASIC コードからの直接呼出は限定的です。

ROM構成

📖 規格

ROM は合計 24KB(仕様欄表記)。

領域 サイズ
プログラム用 ROM 8ビット × 16K × 2
キャラクタジェネレータ ROM 8ビット × 8K(=8KB)

仕様欄の「8ビット ×16K×2」は連結表現の可能性があります。実物 ROM ファイル(Family BASIC.nes)は通常32KBなので、プログラム部 32KB + CHR 8KB の慣用解釈で整合します。

RAM構成

📖 規格

RAM は本体内蔵とカセット内蔵に分かれます。

領域 サイズ
ワーキングメモリ用バックアップ RAM(カセット側 8ビット × 8K(=8KB)
本体内蔵 S-RAM 8ビット × 2K(=2KB)

本体2KBは &H0000&H07FF、カセット8KBは &H7000&H7FFF 範囲を含みます(全部がユーザ領域ではありません)。

「ファミベは2KBしか使えない」は本体 RAM を指す慣用表現で、実際にプログラムが入るのは BASIC カセット側 RAM の &H7040&H77FF です。容量に余裕がほしい場合は RAM 4KB の V3 が選択肢になります。

文字表示能力

📖 規格

  • 8×8ドットマトリックス × 28文字 × 24行
  • 表示文字種: 英文字+カタカナ+数字+記号+特殊記号(アイコン)+キャラクタ
  • 28列 × 24行 = 画面672文字

スプライト表示能力

📖 規格

  • 8×8ドット(ただし1スプライトは 16×16ドット=8×8を4枚)
  • 256 × 240ドット(BASIC 画面)
  • スプライト ON 時の上限・色制約は別エントリで詳細

サウンド詳細

📖 規格

  • 2個の効果音(システム的に予約されている可能性)
  • 1個の効果音(BEEP 用)
  • 同時3重音はサウンドと整合

キーボード配列(HVC-007)

📖 規格

  • 配列: ASCII 配列(英、カタカナ50音配列)準拠
  • ASCII 配列 + JIS かなのハイブリッド
  • キーの種類: 文字キー、ファンクションキー(F1-F8)、カーソルキー

外部インタフェース

📖 規格

  • カセットテープ用ピンインタフェース — 1200ボー
  • 3.5φ プラグで READ・WRITE 接続可
  • これが SAVE/LOAD で使うピンジャック

メモリバックアップ

📖 規格

電源を切っても、BASIC カセット内 RAM の内容を一定期間保持します(バックアップスイッチ)。

外形・重量

📖 規格

  • キーボード(HVC-007): 368(W) × 163(D) × 54(H) mm
  • カセット(HVC-FB): 110(W) × 110(D) × 17(H) mm
  • 重量: キーボード 956g/カセット 95g(電池含まず)
  • 電源/環境: 使用湿度 35〜75% など

カラーチャート

📖 規格

CGSET 文や DEF SPRITE / DEF MOVE で指定するカラーコードの参照表です。

  • スプライト用パレット: 4つのパレットセット × 各4色
  • バックグラウンド用パレット: 4つのパレットセット × 各4色
  • 各パレットは色番号で指定し、PALET 文で切り替えます。

各パレットの色番号は 52色のマスタパレットから選びます。同時表示できる色はスプライト16色+BG16色程度。透明色(背景色=パレット0)はスプライト用と BG 用で共通です。

文字コード

ここからは、画面に出せる文字・スプライトのコード表です。PRINT / CHR$()(文字コードから文字や絵柄を得る関数)/ ASC() で使うテキストコードと、DEF SPRITE / DEF MOVE で使うスプライトコードに分かれます。AI が見落としやすいのは コード92が \ ではなく ¥(円記号) という JIS の慣例です。

文字コード 早見表

項目 要点 詳細
スプライト用コード表A 0-255、キャラごとにポーズ可変
BG/キーボード用コード PRINT/CHR$/ASC で使うテキスト体系
キャラクタテーブルB(視覚) BG GRAPHIC 用の元画像格子
キャラクタテーブルA(視覚) スプライト絵柄の一覧
8×8単タイルスプライト レーザー208-213、弾丸向き
スプライト全マップ キャラ×ポーズ×CHR$の網羅
カンマ , オペランド区切り/PRINT のタブ揃え
コロン : マルチステートメント区切り
セミコロン ; PRINT の密着連結
クエスチョン ? PRINT の代用
&H 接頭辞 16進数リテラル
CTRL コード表 CTR+キーの制御コード一覧

各文字コードの詳細

スプライト用コード表A(0-255)

📖 規格

DEF SPRITE / SPRITE 文で n として指定するスプライトキャラクタの ID です。各 ID にプリセットの絵柄が割り当てられています。キャラごとにポーズ数は可変(2〜7)で、32コード均等ではありません。確定マップはスプライト全マップを参照。

コード範囲 キャラクタ ポーズ数
0-27 マリオ 7
28-55 レディ 7
56-63 ファイターフライ(ハエさん) 2
64-87 アキレス 6
88-95 ニタニタ 2
96-111 ペンペン(ペンギンさん) 4
112-119 ファイアーボール 2
120-143 6
144-151 スピナー 2
152-163 スターキラー 3
164-175 スターシップ 3
176-183 爆発 2
184-191 シェルクリーパー(カメさん) 2
192-199 サイドステッパー(カニさん) 2
200-207 ニットピッカー(トリさん) 2
208-213 レーザー(8×8単タイル) 6

BG/キーボード用キャラクタコード(PRINT 用)

📖 規格

BASIC 上で扱う「テキスト」のコード体系です。PRINTCHR$()ASC() を使うときの参照になります。

コード 0-31: グラフィック領域(CGEN1) 各コードに (A0)(D7) のような CGEN ID(絵柄セット内での絵柄の位置を表す識別子)が割り当てられた小キャラクタ。コード値は ASCII 制御コード位置と重なりますが、CGSET で割り当てられたグラフィックパターンとして表示されます。

コード 32-95: ASCII 互換領域

下表のコード番号に併記した ($20) などは、そのコードを16進数で表したものです。

コード 文字 コード 文字
32 ($20) (空白) 64 ($40) @
33 ($21) ! 65 ($41) A
34 ($22) 66-90 B-Z(連続)
35 ($23) # 91 ($5B) [
36 ($24) $ 92 ($5C) ¥(円記号)
37 ($25) % 93 ($5D) ]
38 ($26) & 94 ($5E) ^
39 ($27) 95 ($5F) _
40-47 ($28-$2F) ( ) * + , – . /
48-57 ($30-$39) 0-9
58-63 ($3A-$3F) : ; < = > ?

コード 96-127: カタカナ領域(JIS X 0201 半角カタカナ相当)

コード 文字 コード 文字 コード 文字 コード 文字
96 ($60) 104 ($68) 112 ($70) 120 ($78)
97 ($61) 105 ($69) 113 ($71) 121 ($79)
98 ($62) 106 ($6A) 114 ($72) 122 ($7A)
99 ($63) 107 ($6B) 115 ($73) 123 ($7B)
100 ($64) 108 ($6C) 116 ($74) 124 ($7C)
101 ($65) 109 ($6D) 117 ($75) 125 ($7D)
102 ($66) 110 ($6E) 118 ($76) 126 ($7E)
103 ($67) 111 ($6F) 119 ($77) 127 ($7F)

AI 向け重要事項

  • コード92は \(バックスラッシュ)ではなく ¥(円記号) — JIS の慣例です。
  • 漢字・ひらがなは扱えません(カタカナのみ)。
  • PRINT で英数字を出すときは ASCII 互換でほぼ問題ありません。
  • PRINT で日本語を出すときは半角カタカナのみ。文字列は "アイウ" のように直接書きます。
  • 0-31 のグラフィックは CHR$(0) 等で直接出力するか、CGEN/CGSET 経由で扱います。

キャラクタテーブルB(BG GRAPHIC・視覚版)

📖 規格

13行(A〜M)× 16列(0〜F)の格子で、各セルに BG GRAPHIC 用の 8×8ドットグラフィックパターンが描かれています。

  • BG GRAPHIC モード / CGSELECT(表示する絵柄セットの選択)で表示・選択する元画像です。
  • 各セルの位置「行アルファベット+列16進数」が CGEN1 ID(例: A0, A1, …, M9)になります。
  • 例: ロボット風キャラを描くなら、テーブルBの特定セル群を選んで配置します。

キャラクタテーブルA(スプライト・視覚版)

📖 規格

スプライトとして使えるアニメキャラクタの絵柄一覧(見開き1ページ)。各キャラごとにポーズ数は可変で、8×8単タイルのレーザーまで含めて合計256コードです。主要キャラクタ(DEF MOVE の A 引数)はアニメキャラクタの表と同じ並びです。詳細マップはスプライト全マップ(16×16)と8×8レーザー(8×8)を参照。

8×8単タイルスプライト(レーザー 208-213)

📖 規格

コード表Aの末尾(208〜213 の6個)は 8×8ドット単タイルのスプライトです。レーザーの向き × バリエーションで構成されています。

コード 内容 コード 内容
208 レーザー(よこ1) 211 レーザー(ななめ2)
209 レーザー(よこ2) 212 レーザー(たて1)
210 レーザー(ななめ1) 213 レーザー(たて2)

(向き3種 × バリエーション2)。上下左右反転を組み合わせると8方向に拡張できます。

使い方:8×8単タイルなので DEF SPRITE の B 引数 = 0 + CHR$ 1つで定義します(16×16用の4連結とは異なる)。

  • 既設キャラとしては「レーザー」ですが、弾丸/銃弾/ミサイルの表現に最適(8×8=1タイルで軽い)。
  • 4タイル組合せが不要なので、AI が単純に1つの CHR$ コードを指定するだけで完成します。「ボールが画面を跳ね返る」のような課題で弾代わりに使うのが正解です。
  • 縦シューティングなら 210/211(たて)、横シューティングなら 208/209(よこ)を使い分けます。

注意点:16×16スプライト(マリオ等)と混在可能(DEF SPRITE で B=0/B=1 を指定)。同時表示は8個まで(n = 0-7、16×16と8×8の合計)。8×8には X 反転(D=1)・Y 反転(E=1)も指定でき、4タイル並び替えは不要です(単純にビット反転)。

スプライト全マップ(キャラ × ポーズ × CHR$)

📖 規格

コード表Aの全16種類について、CHR$ コードとポーズの対応を網羅したマップです。キャラごとにポーズ数は可変(2〜7)で、32コード均等ではありません。8×8単タイルのレーザー(208-213)は8×8レーザーを参照。

全体マップ(キャラ → コード範囲)

コード範囲 キャラクタ ポーズ数 DEF MOVE A
0-27 マリオ 7 0
28-55 レディ 7 1
56-63 ファイターフライ(ハエさん) 2 2
64-87 アキレス 6 3
88-95 ニタニタ 2 11
96-111 ペンペン(ペンギンさん) 4 4
112-119 ファイアーボール 2 5
120-143 6 6
144-151 スピナー 2 7
152-163 スターキラー 3 8
164-175 スターシップ 3 9
176-183 爆発 2 10
184-191 シェルクリーパー(カメさん) 2 13
192-199 サイドステッパー(カニさん) 2 14
200-207 ニットピッカー(トリさん) 2 15
208-213 レーザー(8×8単タイル、別エントリ参照) 6 12

代表として、マリオ(7ポーズ、コード0-27)の CHR$ 並びは次のとおりです。全ポーズの元向きは左向きで、右向きは L/R 列入れ替え+X 反転フラグで作ります(合成規則は別エントリ)。

ポーズ CHR$ 並び 備考
WALK1 CHR$(0)+CHR$(1)+CHR$(2)+CHR$(3) 立ち
WALK2 CHR$(4)+CHR$(5)+CHR$(6)+CHR$(7) 歩き1
WALK3 CHR$(8)+CHR$(9)+CHR$(10)+CHR$(11) 歩き2
JUMP CHR$(12)+CHR$(13)+CHR$(14)+CHR$(15) ジャンプ
スリップ CHR$(16)+CHR$(17)+CHR$(18)+CHR$(19) 転倒/滑り
はしご CHR$(20)+CHR$(21)+CHR$(22)+CHR$(23) 右手が上
DOWN CHR$(24)+CHR$(25)+CHR$(26)+CHR$(27) 下向き

他キャラも同様に、コード範囲の先頭から4コードずつ(8×8を4枚)で1ポーズを構成します(レディ 28-55、アキレス 64-87、車 120-143 など。詳細はコード範囲表のとおり)。歩行アニメは WALK1→WALK2→WALK3→WALK1 の順、向き変えは左右反転で表現します。

カンマ,

📖 規格

カンマ , でオペランドを区切ります。

  • PRINT, INPUT, DATA 等で複数値を区切ります。
  • PRINT, を使うと次の出力ブロックの先頭に揃えて出力されます(画面幅28文字を 8+8+8+4 の4ブロックに分割、先頭は 0, 8, 16, 24)。
  • DATA 文では値の区切りです。

コロン:

📖 規格

コロン : でマルチステートメントを区切ります。

  • 1行内で複数文を並べるときに使います。
  • 条件分岐内のブロック相当の代用になります。
  • 1行255桁の制限内で詰め込む手段です。

セミコロン;

📖 規格

セミコロン ;PRINT の出力を密着連結します。

  • PRINT 文で値を密着して出力します(タブ揃えしない)。
  • 末尾 ; で改行を抑制します。
  • INPUT 文ではプロンプト文字列と入力欄の区切りになります。

クエスチョンマーク?

📖 規格

クエスチョンマーク ?PRINT の代用です。

  • ? 単独で PRINT として機能します
  • キー入力短縮の常套手段です。
  • LIST すると PRINT に展開されて表示されます。

&H接頭辞(16進数)

📖 規格

&H 接頭辞で16進数リテラルを表します。

  • &H で始まる数値リテラルは16進数です。
  • それ以外は10進数として解釈されます。
  • 範囲は &H0000&HFFFF(16ビット符号なしと等価)。
  • メモリアドレス、ビットマスク等で頻用します。

CTRL コード表

📖 規格

CTR + X(INS キーを押しながら X キー)の制御コード一覧です。プログラム中で CHR$() で送出できる場合もあります(要確認)。

キー 機能 キー 機能
CTR+A INS モード ON/OFF CTR+K カーソル上(↑)と同じ
CTR+C BREAK(実行中の中断) CTR+L 画面クリア
CTR+D 起動設定: CGEN2, SPRITE OFF CTR+M 1行入力(キャリッジリターン)
CTR+E カラーパレットをリセット CTR+R INS と同じ
CTR+F カーソル位置1行分の消去 CTR+S カナキーロック
CTR+G BEEP 音を出す CTR+W 英・数字を制御
CTR+H DEL と同じ CTR+Z カーソル位置以降画面下までクリア
CTR+I ラインフィード(TAB 相当)

どうやって確かめたか

このページは命令の前提となる「言語仕様」と「文字コード」が中心のため、大半はマニュアル記載の規格値です。そのうち実機で挙動を確認できたもの(変数名の3文字無視、演算子前後のスペース要否)は、Family BASIC のエミュレータにコードを流し込み、RUN 後の画面表示をそのまま記録しています。検証の詳細は連載で扱っています。

関連