■ディスクドライブ用(ディスクがあるときのみ有効)
アドレス | ラベル | 長さ | 初期値 | 内容 |
F323 | DISKVE | 2 | | ディスクエラー処理ルーチンへのポインタへのポインタ |
F325 | BREAKV | 2 | | [CTRL]+[C] 処理ルーチンへのポインタへのポインタ |
F341 | RAMAD0 | 1 | | ページ0のRAMのスロットアドレス |
F342 | RAMAD1 | 1 | | ページ1のRAMのスロットアドレス |
F343 | RAMAD2 | 1 | | ページ2のRAMのスロットアドレス |
F344 | RAMAD3 | 1 | | ページ3のRAMのスロットアドレス |
F348 | MASTERS | 1 | | マスターカートリッジのスロットアドレス |
■インタースロットコール用サブルーチン
アドレス | ラベル | 長さ | 初期値 | 内容 |
F380 | RDPRIM | 5 | | 基本スロットから読み込み |
F385 | WRPRIM | 7 | | 基本スロットへ書き込み |
F38C | CLPRIM | 14 | | 基本スロットコール |
■USR関数のマシン語プログラムの開始番地、テキスト画面
(MSX2、MSX2+の場合、テキスト画面用のワークエリアの初期値は変化する)
アドレス | ラベル | 長さ | 初期値 | 内容 |
F39A | USRTAB | 20 | 475AH | USR関数(0〜9)のマシン語プログラムの開始番地。定義前はエラールーチン(FCERR)を指す |
F3AE | LINL40 | 1 | 39 | SCREEN0のときの1行の幅、WIDTH文で設定 |
F3AF | LINL32 | 1 | 29 | SCREEN1のときの1行の幅、WIDTH文で設定 |
F3B0 | LINLEN | 1 | 29 | 現在の画面の1行の幅 |
F3B1 | CRTCNT | 1 | 24 | 現在の画面の行数 |
F3B2 | CLMLST | 1 | 14 | PRINT文の制御に使用、LINLEN-(LINLEN MOD 14)-14 |
■VRAMの各テーブルの番地、その他の画面設定
アドレス | ラベル | 長さ | 初期値 | 内容 |
F3B3 | TXTNAM | 2 | 0000H | SCREEN 0のパターンネームテーブル |
F3B5 | TXTCOL | 2 | 0800H | SCREEN 0のカラーテーブル(MSX2、MSX2+のみ) |
F3B7 | TXTCGP | 2 | 0800H | SCREEN 0のパターンジェネレータテーブル |
F3B9 | TXTATR | 2 | | 未使用 |
F3BB | TXTPAT | 2 | | 未使用 |
F3BD | T32NAM | 2 | 1800H | SCREEN 1のパターンネームテーブル |
F3BF | T32COL | 2 | 2000H | SCREEN 1のカラーテーブル |
F3C1 | T32CGP | 2 | 0000H | SCREEN 1のパターンジェネレータテーブル |
F3C3 | T32ATR | 2 | 1B00H | SCREEN 1のスプライトアトリビュートテーブル |
F3C5 | T32PAT | 2 | 3800H | SCREEN 1のスプライトジェネレータテーブル |
F3C7 | GRPNAM | 2 | 1800H | SCREEN 2のパターンネームテーブル |
F3C9 | GRPCOL | 2 | 2000H | SCREEN 2のカラーテーブル |
F3CB | GRPCGP | 2 | 0000H | SCREEN 2のパターンジェネレータテーブル |
F3CD | GRPATR | 2 | 1B00H | SCREEN 2のスプライトアトリビュートテーブル |
F3CF | GRPPAT | 2 | 3800H | SCREEN 2のスプライトジェネレータテーブル |
F3D1 | MLTNAM | 2 | 0800H | SCREEN 3のパターンネームテーブル |
F3D3 | MLTCOL | 2 | | 未使用 |
F3D5 | MLTCGP | 2 | 0000H | SCREEN 3のパターンジェネレータテーブル |
F3D7 | MLTATR | 2 | 1B00H | SCREEN 3のスプライトアトリビュートテーブル |
F3D9 | MLTPAT | 2 | 3800H | SCREEN 3のスプライトジェネレータテーブル |
F3DB | CLIKSW | 1 | FFH | キークリックスイッチ(0 = OFF、NZ = ON) |
F3DC | CSRY | 1 | | カーソルのY座標 |
F3DD | CSRX | 1 | | カーソルのX座標 |
F3DE | CNSDFG | 1 | FFH | ファンクションキー表示スイッチ(0 = 非表示、NZ = 表示) |
■VDPレジスタのセーブエリアなど
アドレス | ラベル | 長さ | 初期値 | 内容 |
F3DF | RG0SAV | 1 | | VDPレジスタ0の値 |
F3E0 | RG1SAV | 1 | | VDPレジスタ1の値 |
F3E1 | RG2SAV | 1 | | VDPレジスタ2の値 |
F3E2 | RG3SAV | 1 | | VDPレジスタ3の値 |
F3E3 | RG4SAV | 1 | | VDPレジスタ4の値 |
F3E4 | RG5SAV | 1 | | VDPレジスタ5の値 |
F3E5 | RG6SAV | 1 | | VDPレジスタ6の値 |
F3E6 | RG7SAV | 1 | | VDPレジスタ7の値 |
F3E7 | STATFL | 1 | | VDPのSTATUS(MSX2、MSX2+ではSTATUSレジスタ0の値) |
F3E8 | TRGFLG | 1 | FFH | ジョイスティックのトリガボタンの状態 |
F3E9 | FORCLR | 1 | 15 | 前景色(フォアグラウンドカラー)省略値 |
F3EA | BAKCLR | 1 | 4 | 背景色(バックグラウンドカラー)省略値 |
F3EB | BDRCLR | 1 | 7 | 周辺色(ボーダーカラー)省略値 |
F3EC | MAXUPD | 3 | JMP 0 | LINE文が内部で使用(C3H、00H、00H) |
F3EF | MINUPD | 3 | JMP 0 | LINE文が内部で使用(C3H、00H、00H) |
F3F2 | ATRBYT | 1 | 15 | グラフィック使用時の色、アトリビュートバイト |
F3F3 | QUEUES | 2 | F959H | PLAY文実行時のキューテーブルを指す |
F3F5 | FRCNEW | 1 | FFH | インタープリタが内部で使用 |
F3F6 | SCNCNT | 1 | 1 | キースキャンの時間間隔 |
F3F7 | REPCNT | 1 | 50 | キーのオートリピート開始までの時間間隔 |
F3F8 | PUTPNT | 2 | FBF0H | キーバッファへの書き込みを行う番地を指す |
F3FA | GETPNT | 2 | FBF0H | キーバッファからの読み込みを行う番地を指す |
■カセット用パラメータなど
アドレス | ラベル | 長さ | 初期値 | 内容 |
F3FC | CS120 | 10 | 83 | 1200ボーのビット0を表すLOWの幅 |
| | | 92 | 1200ボーのビット0を表すHIGHの幅 |
| | | 38 | 1200ボーのビット1を表すLOWの幅 |
| | | 45 | 1200ボーのビット1を表すHIGHの幅 |
| | | 15 | ショートヘッダビットの長さ、HEADLEN(=2000)*2/256 |
| | | 37 | 2400ボーのビット0を表すLOWの幅 |
| | | 45 | 2400ボーのビット0を表すHIGHの幅 |
| | | 14 | 2400ボーのビット1を表すLOWの幅 |
| | | 22 | 2400ボーのビット1を表すHIGHの幅 |
| | | 31 | ショートヘッダビットの長さ、HEADLEN(=2000)*4/256 |
F406 | LOW | 2 | 83 | LOW01、HIGH01、デフォルト1200ボー、現在のボーレートのbit0を表すLOW、HIGHの幅。SCREEN文で設定 |
F408 | HIGH | 2 | 33 | LOW11、HIGH11、デフォルト1200ボー、現在のボーレートのbit1を表すLOW、HIGHの幅。SCREEN文で設定 |
F40A | HEADER | 1 | 15 | HEADLEN*2/256、現在のボーレートのショートヘッダ用のヘッダビットHEADLEN(=2000)。SCREEN文で設定 |
F40B | ASPCT1 | 2 | 1 | 256/アスペクト比、SCREEN文で設定しCIRCLE文で使用 |
F40D | ASPCT2 | 2 | 1 | 256*アスペクト比、SCREEN文で設定しCIRCLE文で使用 |
F40F | ENDPRG | 5 | : | RESUME NEXT文のための仮のプログラムの終り |
■BASICが内部で使うワーク
アドレス | ラベル | 長さ | 初期値 | 内容 |
F414 | ERRFLG | 1 | 0 | エラーコードの保存 |
F415 | LPTPOS | 1 | 0 | プリンタのヘッド位置 |
F416 | PRTFLG | 1 | 0 | プリンタへ出力するかどうか |
F417 | NTMSXP | 1 | 0 | MSX用プリンタなら0 |
F418 | RAWPRT | 1 | 0 | NZならRAW MODE(文字コード変換なし)でプリンタ出力 |
F419 | VLZADR | 2 | 0 | VAL関数で置き換えられる文字のアドレス |
F41B | VLZDAT | 1 | 0 | VAL関数で0に置き換わる文字 |
F41C | CURLIN | 2 | FFFFH | BASICが現在実行中の行番号 |
F41F | KBUF | 318 | | クランチバッファ、BUFから中間言語に変換されて入る |
F55D | BUFMIN | 1 | "," | INPUT文用のコンマ |
F55E | BUF | 258 | | タイプした文字がアスキーコードで入るバッファ |
F660 | ENDBUF | 1 | 0 | BUFの内容がオーバーフローするのを防ぐ |
F661 | TTYPOS | 1 | 0 | BASICが内部で持つ仮想的なカーソル位置 |
F662 | DIMFLG | 1 | 0 | BASICが配列変数を単純変数と区別するためのフラグ |
F663 | VALTYP | 1 | 0 | 変数の型の識別に使用 |
F664 | OPRTYP | 1 | 0 | 演算子保存、またはクランチできる語かどうかのフラグ |
F665 | DONUM | 1 | 0 | クランチ用のフラグ |
F666 | CONTXT | 2 | 0 | CHGETで使うテキストポインタの保存 |
F668 | CONSAV | 1 | 0 | CHGETが呼ばれた後で定数の内部形(トークン)を保存 |
F669 | CONTYP | 1 | 0 | 保存した定数のタイプ |
F66A | CONLO | 8 | 0 | 保存した定数の値 |
F672 | MEMSIZ | 2 | | BASICが使用するメモリの最上位番地 |
F674 | STKTOP | 2 | | スタックとしてつかえる最上位番地、CLEAR文で変更される |
F676 | TXTTAB | 2 | | BASICのテキストエリアの先頭番地 |
F678 | TEMPPT | 2 | F67AH | テンポラリディスクリプタの空きエリアの先頭番地 |
F67A | TEMPST | 30 | | 3*NUMTMP分使用される |
F698 | DSCTMP | 3 | | 文字列関数の答えへのストリングディスクリプタ |
F69B | FRETOP | 2 | | 文字列領域の空きエリアの先頭番地 |
F69D | TEMP3 | 2 | 0 | ガベージコレクション用 |
F69F | TEMP8 | 2 | 0 | ガベージコレクション用 |
F6A1 | ENDFOR | 2 | 0 | FOR文の次の番地 |
F6A3 | DATLIN | 2 | 0 | READ文で読まれたDATA文の行番号 |
F6A5 | SUBFLG | 1 | 0 | USR関数などで配列を使うときのフラグ |
F6A6 | FLGINP | 1 | 0 | INPUT文やREAD文で使われるフラグ |
F6A7 | TEMP | 2 | | ステートメントコード用の一時保存場所 |
F6A9 | PTRFLG | 1 | 0 | 変換する行番号がなければ0、あれば0以外 |
F6AA | AUTFLG | 1 | 0 | AUTOコマンドが無効なら0、有効なら0以外 |
F6AB | AUTLIN | 2 | 0 | AUTOで入力された最新の行番号 |
F6AD | AUTINC | 2 | 0 | AUTOコマンドの行番号の増分 |
F6AF | SAVTXT | 2 | | RESUME文で復帰するためのテキストのアドレス |
F6B1 | SAVSTK | 2 | | エラーが起きたときの回復ルーチン用スタックの保存 |
F6B3 | ERRLIN | 2 | 0 | エラーが起きたときの行番号 |
F6B5 | DOT | 2 | 0 | 現在行、LIST.などで使う |
F6B7 | ERRTXT | 2 | 0 | エラーが起きた行番号、RESUME文用 |
F6B9 | ONELIN | 2 | 0 | エラーが起きたときの飛び先の行 |
F6BB | ONEFLG | 1 | 0 | エラーによる割り込みルーチン実行中は1、他の場合は0 |
F6BC | TEMP2 | 2 | 0 | 一時保存用 |
F6BE | OLDLIN | 2 | 0 | [CTRL]+[STOP]、END、STOPで設定される旧行番号 |
F6C0 | OLDTXT | 2 | 0 | 次に実行する文のテキストアドレス |
F6C2 | VARTAB | 2 | | 単純変数の開始番地、NEW文で(TXTTAB)+2に設定される |
F6C4 | ARYTAB | 2 | | 配列テーブルの開始番地 |
F6C6 | STREND | 2 | | BASICがテキストや変数に使用中のメモリの最後の番地 |
F6C8 | DATPTR | 2 | 0 | READ文実行で読まれたデータのテキストアドレス |
F6CA | DEFTBL | 26 | 8 | 各英文字で始まる変数のデフォルトの型を保持する |
■ユーザー関数のパラメータ用ワーク
アドレス | ラベル | 長さ | 初期値 | 内容 |
F6E4 | PRMSTK | 2 | 0 | ガベージコレクション用スタック上の以前の定義ブロック |
F6E6 | PRMLEN | 2 | 0 | 処理対象のテーブルのバイト数 |
F6E8 | PARM1 | 100 | 0 | PRMSIZで設定される処理パラメータ定義テーブル |
F74C | PRMPRV | 2 | PRMSTK | 以前のパラメータブロックのポインタ、ガベージコレクション用 |
F74E | PRMLN2 | 2 | 0 | パラメータブロックの大きさ |
F750 | PARM2 | 100 | 0 | PRMSIZで設定されるパラメータの保存場所 |
F7B4 | PRMFLG | 1 | 0 | PARM1がサーチ済みかどうかのフラグ |
F7B5 | ARYTA2 | 2 | 0 | サーチの終点 |
F7B7 | NOFUNS | 1 | 0 | 処理対象関数がない場合は0 |
F7B8 | TEMP9 | 2 | 0 | ガベージコレクション用 |
F7BA | FUNACT | 2 | 0 | 処理対象関数の数 |
F7BC | SWPTMP | 8 | 0 | SWAP文の最初の変数の値の一時保存場所 |
F7C4 | TRCFLG | 1 | 0 | トレースフラグ、0 = TRACE OFF、NZ = TRACE ON |
■Math-pack用ワークエリア
アドレス | ラベル | 長さ | 初期値 | 内容 |
F7C5 | FBUFFR | 43 | | Math-packルーチンが一時保存場所として使用する |
F7F0 | DECTMP | 2 | | 10進数を浮動小数点数にするときに使用する |
F7F2 | DECTM2 | 2 | | 除算ルーチンで使用する |
F7F4 | DECCNT | 1 | | 除算ルーチンで使用する |
F7F6 | DAC | 16 | | 演算の対象となる値を設定するエリア |
F806 | HOLD8 | 48 | | 10進数の乗算のためのレジスタ保存エリア |
F836 | HOLD2 | 8 | | Math-Packルーチンが内部で使用する |
F83E | HOLD | 8 | | Math-Packルーチンが内部で使用する |
F847 | ARG | 16 | | DACとの演算対象となる値を設定するエリア |
F857 | RNDX | 8 | | 最初の乱数を倍精度実数で設定するエリア |
■BASICインタープリタが使うデータエリア
アドレス | ラベル | 長さ | 初期値 | 内容 |
F85F | MAXFIL | 1 | 1 | MAXFILES文で設定されるファイル番号の最大値 |
F860 | FILTAB | 2 | | ファイルデータの先頭番地 |
F862 | NULBUF | 2 | | SAVE、LOADでBASICインタープリタが使うバッファ |
F864 | PTRFIL | 2 | 0 | 指定ファイルのファイルデータのある位置 |
F866 | RUNFLG | 0 | 0 | ロード後実行ならNZ |
F866 | FILNAM | 11 | "" | ファイル名の保存エリア |
F871 | FILNM2 | 11 | "" | ファイル名の保存エリア |
F87C | NLONLY | 1 | 0 | プログラムロード中はNZ |
F87D | SAVEND | 2 | 0 | セーブするマシン語プログラムの最終番地 |
F87F | FNKSTR | 160 | | ファンクションキーの文字列保存エリア、16×10 |
F91F | CGPNT | 3 | | ROM上の文字フォント格納スロットアドレスとアドレス |
F922 | NAMBAS | 2 | | 現在のパターンネームテーブルのベース番地 |
F924 | CGPBAS | 2 | | 現在のパターンジェネレータテーブルのベース番地 |
F926 | PATBAS | 2 | | 現在のスプライトジェネレータテーブルのベース番地 |
F928 | ATRBAS | 2 | | 現在のスプライトアトリビュートテーブルのベース番地 |
F92A | CLOC | 2 | | グラフィックルーチンが内部で使用する |
F92C | CMASK | 1 | | グラフィックルーチンが内部で使用する |
F92D | MINDEL | 2 | | グラフィックルーチンが内部で使用する |
F92F | MAXDEL | 2 | | グラフィックルーチンが内部で使用する |
■CIRCLE、PAINT文で使うデータエリア
アドレス | ラベル | 長さ | 初期値 | 内容 |
F931 | ASPECT | 2 | | 円の縦横比率。CIRCLE文の<比率>により設定される |
F933 | CENCNT | 2 | | CIRCLE文が内部で使用する |
F935 | CLINEF | 1 | | 中心へ線を引くかどうかのフラグ |
F936 | CNPNTS | 2 | | プロットする点 |
F938 | CPLOTF | 1 | | CIRCLE文が内部で使用する |
F939 | CPCNT | 2 | | 円の1/8分割の数 |
F93B | CPCNT8 | 2 | | CIRCLE文が内部で使用する |
F93D | CRCSUM | 2 | | CIRCLE文が内部で使用する |
F93F | CSTCNT | 2 | | CIRCLE文が内部で使用する |
F941 | CSCLXY | 1 | | XとYのスケール |
F942 | CSAVEA | 2 | | ADVGRPの保存エリア |
F944 | CSAVEM | 1 | | ADVGRPの保存エリア |
F945 | CXOFF | 2 | | 中心からのXのオフセット |
F947 | CYOFF | 2 | | 中心からのYのオフセット |
F949 | LOHMSK | 1 | | PAINT文が内部で使用する |
F94A | LOHDIR | 1 | | PAINT文が内部で使用する |
F94B | LOHADR | 2 | | PAINT文が内部で使用する |
F94D | LOHCNT | 2 | | PAINT文が内部で使用する |
F94F | SKPCNT | 2 | | スキップカウント |
F951 | MOVCNT | 2 | | 移動カウント |
F953 | PDIREC | 1 | | ペイント方向 |
F954 | LFPROG | 1 | | PAINT文が内部で使用する |
F955 | RTPROG | 1 | | PAINT文が内部で使用する |
■PLAY文で使用するデータエリア
アドレス | ラベル | 長さ | 初期値 | 内容 |
F956 | MCLTAB | 2 | | PLAY文マクロ、DRAW文マクロのテーブルの先頭を指す |
F958 | MCLFLG | 1 | | PLAY・DRAWの指示 |
F959 | QUETAB | 24 | | キューテーブル、4キュー×6バイト |
F971 | QUEBAK | 4 | | BCKQで使用 |
(内部定義MUSQLN、RSIQLN) |
F975 | VOICAQ | n | | nはMUSQLN、音声1のキュー |
F9F5 | VOICBQ | n | | nはMUSQLN、音声2のキュー |
FA75 | VOICCQ | n | | nはMUSQLN、音声3のキュー |
■MSX2で追加されたデータエリア
アドレス | ラベル | 長さ | 初期値 | 内容 |
FAF5 | DPPAGE | 1 | | ディスプレイページ番号 |
FAF6 | ACPAGE | 1 | | アクティブページ番号 |
FAF7 | AVCSAV | 1 | | AVコントロールポートの保存 |
FAF8 | EXBRSA | 1 | | SUB ROMのスロットアドレス |
FAF9 | CHRCNT | 1 | | ローマ字カナ変換で使用、キャラクタカウンタで0〜2 |
FAFA | ROMA | 2 | | ローマ字カナ変換で使用、バッファ中のキャラクタ |
FAFC | MODE | 1 | | ローマ字カナ変換のモード、VRAMサイズなど |
┌ | MSB | 7 | | 0=ひらがな(ローマ字変換)、1=カタカナ |
各 | | 6 | | 0=第2水準漢字ROMなし、1=第2水準漢字ROMあり |
ビ | | 5 | | 0=SCREEN 10、1=SCREEN 11(MSX2+で、RGB処理のフラグ) |
ッ | | 4 | | 0=クリッピングする、1=クリッピングしない |
ト | | 3 | | 0=マスクしない、マスクする(SCREEN 0〜3のVRAMアドレス) |
の | | 2 | | 0┐16K 0┐64K 0┐128K |
意 | | 1 | | 0┘VRAM 1┘VRAM 1┘VRAM |
味 | | | | (bit2とbit1のセットでVRAMサイズがわかる) |
└ | | 0 | | 0=変換しない(ローマ字変換)、1=変換する |
| 注 意 | | bit3は、MSX2以降でSCREEN 0〜3のVRAMアドレスを指定する際に、3FFFHとANDを取って設定するかどうかのフラグ。SCREEN 4以降では常にマスクしない。 |
| | |
FAFD | NORUSE | 1 | | 漢字ドライバが使用 |
FAFE | XSAVE | 2 | | IOOOOOOO XXXXXXXX |
FB00 | YSAVE | 2 | | XOOOOOOO YYYYYYYY |
| | | | I =1 ライトペンのインタラプト要求あり |
| | | | OOOOOOO =符号なしオフセット |
| | | | XXXXXXXX=X座標 |
| | | | YYYYYYYY=Y座標 |
FB02 | LOGOPR | 1 | | V9938以降のロジカルオペレーションコード |
■RS-232Cで使うデータエリア
アドレス | ラベル | 長さ | 初期値 | 内容 |
FB03 | RSTMP | 50 | | RS-232Cまたはディスクが使用する |
FB03 | TOCNT | 1 | | RS-232Cが内部で使用する |
FB04 | RSFBC | 1 | | RS-232CのLOWアドレス |
| | 1 | | RS-232CのHIGHアドレス |
FB06 | RSIQLN | 1 | | RS-232Cが内部で使用する |
FB07 | MEXBIH | 5 | | FB07H+0 RST 30H(0F7H) |
| | | | FB07H+1 バイトデータ |
| | | | FB07H+2 (LOW) |
| | | | FB07H+3 (HIGH) |
| | | | FB07H+4 RET(0C9H) |
FB0C | OLDSTT | 5 | | FB0CH+0 RST 30H(0F7H) |
| | | | FB0CH+1 バイトデータ |
| | | | FB0CH+2 (LOW) |
| | | | FB0CH+3 (HIGH) |
| | | | FB0CH+4 RET(0C9H) |
FB11 | OLDINT | 5 | | FB11H+0 RST 30H(0F7H) |
| | | | FB11H+1 バイトデータ |
| | | | FB11H+2 (LOW) |
| | | | FB11H+3 (HIGH) |
| | | | FB11H+4 RET(0C9H) |
FB16 | DEVNUM | 1 | | RS-232Cが内部で使用する |
FB17 | DATCNT | 3 | | FB17H+0 バイトデータ |
| | | | FB17H+1 バイトポインタ |
| | | | FB17H+2 バイトポインタ |
FB1A | ERRORS | 1 | | RS-232Cが内部で使用する |
FB1B | FLAGS | 1 | | RS-232Cが内部で使用する |
FB1C | ESTBLS | 1 | | RS-232Cが内部で使用する |
FB1D | COMMSK | 1 | | RS-232Cが内部で使用する |
FB1E | LSTCOM | 1 | | RS-232Cが内部で使用する |
FB1F | LSTMOD | 1 | | RS-232Cが内部で使用する |
FB20 | HOKVLD | 1 | | 拡張BIOSの有無 |
FB21 | DRVTBL | 8 | | DISK ROMのスロットアドレスなど |
■PLAY文で使用するデータエリア(以下はMSX1と共通)
アドレス | ラベル | 長さ | 初期値 | 内容 |
FB35 | PRSCNT | 1 | | |
FB36 | SAVSP | 2 | | PLAY文実行中にスタックポインタを保存 |
FB38 | VIOCEN | 1 | | 解釈中の現在の音声 |
FB39 | SAVVOL | 2 | | 休止のための音量保存 |
FB3B | MCLLEN | 1 | | PLAY文が内部で使用する |
FB3C | MCLPTR | 2 | | PLAY文が内部で使用する |
FB3E | QUEUEN | 1 | | PLAY文が内部で使用する |
FB3F | MUSICF | 1 | | 音楽演奏用の割り込みフラグ |
FB40 | PLYCNT | 1 | | キューされているPLAY文の数 |
(音声スタティックデータエリアから+0〜+32?) |
FB41 | VCBA | n | | nはVCBSIZ、音声1のスタティックデータ |
FB66 | VCBB | n | | nはVCBSIZ、音声2のスタティックデータ |
FB8B | VCBC | n | | nはVCBSIZ、音声3のスタティックデータ |
■データエリア
アドレス | ラベル | 長さ | 初期値 | 内容 |
FBB0 | ENSTOP | 1 | | 0以外は「[CTRL]+[SHIFT]+[GRAPH]+[カナ]」でウォームスタート可能 |
FBB1 | BASROM | 1 | | 0以外はBASICのテキストがROMにある |
FBB2 | LINTTB | 24 | | ラインターミネーターテーブル |
FBCA | FSTPOS | 2 | | INLINで入力した行の最初の文字の位置 |
FBCC | CODSAV | 1 | | カーソルのためのコード保存場所 |
FBCD | FNKSWI | 1 | | どのファンクションキーが表示されているか |
FBCE | FNKFLG | 10 | | 割り込み処理対象デバイスになっているFキーを示す |
FBD8 | ONGSBF | 1 | | 広域イベントフラグ |
FBD9 | CLIKFL | 1 | | キークリックフラグ |
FBDA | OLDKEY | 11 | | 旧キーの状態 |
FBE5 | NEWKEY | 11 | | 新キーの状態 |
(内部定義SFTKEY、NEWKEY+6、[RETURN]、[CTRL]、[SHIFT]キーの状態) |
FBF0 | KEYBUF | 40 | | キーコードバッファ |
FC18 | BUFEND | 0 | | KEYBUFの終り |
FC18 | LINWRK | 40 | | スクリーンハンドラ用一時保存場所 |
FC40 | PATWRK | 8 | | パターンコンバータ用一時保存場所 |
FC48 | BOTTOM | 2 | | 実装RAMの先頭(低位)番地 |
FC4A | HIMEM | 2 | | 利用可能なメモリーの最上位番地 |
FC4C | TRPTBL | n | | nは3*NUMTPR。割り込み処理で使うトラップテーブル |
FC9A | RTYCNT | 1 | | BASICが内部で使用する |
FC9B | INTFLG | 1 | | [CTRL]+[STOP]が押された時など、ここに03Hを入れることによりストップする |
FC9C | PADY | 1 | | パドルのY座標 |
FC9D | PADX | 1 | | パドルのX座標 |
FC9E | JIFFY | 2 | | PLAY文が内部で使用する |
FCA0 | INTVAL | 2 | | インターバルの間隔。ON INTERVAL GOSUB文により設定される |
FCA2 | INTCNT | 2 | | インターバルのためのカウンタ |
FCA4 | LOWLIM | 1 | | カセットテープから読み込み中に使う |
FCA5 | WINWID | 1 | | カセットテープから読み込み中に使う |
FCA6 | GRPHED | 1 | | グラフィック文字を出すときのフラグ |
FCA7 | ESCCNT | 1 | | エスケープシーケンスのカウンタ |
FCA8 | INSFLG | 1 | | 挿入モードのフラグ |
FCA9 | CSRSW | 1 | | カーソル表示の有無 |
FCAA | CSTYLE | 1 | | カーソルの形 |
FCAB | CAPST | 1 | | [CAPS]キーの状態 |
FCAC | KANAST | 1 | | [かな]キーの状態 |
FCAD | KANAMD | 1 | | かな文字がJIS配列なら0でない値 |
FCAE | FLBMEM | 1 | | BASICプログラムをロード中は0 |
FCAF | SCRMOD | 1 | | スクリーンモードの番号 |
FCB0 | OLDSCR | 1 | | スクリーンモード保存場所 |
FCB1 | CASPRV | 1 | | CAS:が使う文字保存場所 |
FCB2 | BRDATR | 1 | | PAINTのボーダーカラー |
FCB3 | GXPOS | 2 | | X座標 |
FCB5 | GYPOS | 2 | | Y座標 |
FCB7 | GRPACX | 2 | | グラフィックアキュムレータ(X座標) |
FCB9 | GRPACY | 2 | | グラフィックアキュムレータ(Y座標) |
FCBB | DRWFLG | 1 | | DRAW文で使用するフラグ |
FCBC | DRWSCL | 1 | | DRAWのスケーリングファクタ。0ならスケーリングなし |
FCBD | DRWANG | 1 | | DRAWの角度。0〜3 |
FCBE | RUNBNF | 1 | | BLOADかBSAVEかどちらでもないか |
FCBF | SAVENT | 2 | | BSAVEの開始番地 |
FCC1 | EXPTBL | 4 | | 各スロットの拡張の有無を示すフラグテーブル |
FCC5 | SLTTBL | 4 | | 各拡張スロットレジスタ用の現在のスロット選択状況 |
FCC9 | SLTATR | 64 | | 各スロット用に属性を保存 |
FD09 | SLTWRK | 128 | | 各スロット用に特定のワークエリアを確保 |
FD89 | PROCNM | 16 | | CALL文による拡張文の名前。0は終り |
FD99 | DEVICE | 1 | | カートリッジ用の装置識別に使う |
■割り込み処理、他のコンソール入出力装置使用、文字セットやキー配列の変更
アドレス | ラベル | 長さ | 初期値 | 内容 |
FD9A | H.KEYI | 5 | | 割り込み処理の始め、RS-232Cなど |
FD9F | H.TIMI | 5 | | タイマー割り込み処理の追加 |
FDA4 | H.CHPU | 5 | | CHPUT(1文字出力)の始め |
FDA9 | H.DSPC | 5 | | DSPCRS(カーソル表示)の始め |
FDAE | H.ERAC | 5 | | ERACSR(カーソル消去)の始め |
FDB3 | H.DSPF | 5 | | DSPFNK(ファンクションキー表示)の始め |
FDB8 | H.ERAF | 5 | | ERAFNK(ファンクションキー消去)の始め |
FDBD | H.TOTE | 5 | | TOTEXT(画面をテキストモードにする)の始め |
FDC2 | H.CHGE | 5 | | CHGET (1文字取り出し)の始め |
FDC7 | H.INIP | 5 | | INIPAT(文字パターンの初期化)の始め |
FDCC | H.KEYC | 5 | | KEYCOD(キーコード変換)の始め |
FDD1 | H.KEYA | 5 | | KYEASY(KeY EASY)の始め |
FDD6 | H.NMI | 5 | | NMI(ノンマスカブルインタラプト)の始め |
FDDB | H.PINL | 5 | | PINLIN(プログラムの行入力)の始め |
FDE0 | H.QINL | 5 | | QINLIN(「?」を表示して行入力)の始め |
FDE5 | H.INLI | 5 | | INLIN(行入力)の始め |
FDEA | H.ONGO | 5 | | ONGOTP(ON GOTO)の始め |
■ディスク装置接続
アドレス | ラベル | 長さ | 初期値 | 内容 |
FDEF | H.DSKO | 5 | | DSKO$(ディスク出力)の始め |
FDF4 | H.SETS | 5 | | SETS$(セットアトリビュート)の始め |
FDF9 | H.NAME | 5 | | NAME (リネーム)の始め |
FDFE | H.KILL | 5 | | KILL (ファイル削除)の始め |
FE03 | H.IPL | 5 | | IPL (初期プログラムロード)の始め |
FE08 | H.COPY | 5 | | COPY (ファイルのコピー)の始め |
FE0D | H.CMD | 5 | | CMD (コマンド)の始め |
FE12 | H.DSKF | 5 | | DSKF (ディスクの空き)の始め |
FE17 | H.DSKI | 5 | | DSKI (ディスク入力)の始め |
FE1C | H.ATTR | 5 | | ATTR$(アトリビュート)の始め |
FE21 | H.LSET | 5 | | LSET (左詰め代入)の始め |
FE26 | H.RSET | 5 | | RSET (右詰め代入)の始め |
FE2B | H.FIEL | 5 | | FIELD(フィールド)の始め |
FE30 | H.MKI$ | 5 | | MKI$ (整数作成)の始め |
FE35 | H.MKS$ | 5 | | MKS$ (単精度作成)の始め |
FE3A | H.MKD$ | 5 | | MKD$ (倍精度作成)の始め |
FE3F | H.CVI | 5 | | CVI (整数変換)の始め |
FE44 | H.CVS | 5 | | CVS (単精度変換)の始め |
FE49 | H.CVD | 5 | | CVD (倍精度変換)の始め |
FE9E | H.GETP | 5 | | GETPTR(ファイルポインター取り出し) |
FE53 | H.SETF | 5 | | SETFIL(ファイルポインター設定) |
FE58 | H.NOFO | 5 | | NOFOR (OPEN文にFORがない) |
FE5D | H.NULO | 5 | | NULOPN(空ファイルオープン) |
FE62 | H.NTFL | 5 | | NTFL0 (ファイル番号が0でない) |
FE67 | H.MERG | 5 | | MERGE (プログラムファイルのマージ) |
FE6C | H.SAVE | 5 | | SAVE (セーブ) |
FE71 | H.BINS | 5 | | BINSAV(機械語セーブ) |
FE76 | H.BINL | 5 | | BINLOD(機械語ロード) |
FE7B | H.FILE | 5 | | FILES (ファイル一覧表示) |
FE80 | H.DGET | 5 | | DGET (ディスクGET) |
FE85 | H.FILO | 5 | | FILOUT(ファイル出力) |
FE8A | H.INDS | 5 | | INDSKC(ディスクの属性を入力) |
FE8F | H.RSLF | 5 | | (前のドライブを再び選択する) |
FE94 | H.SAVD | 5 | | (現在選択しているドライブを保存する) |
FE99 | H.LOC | 5 | | (LOC関数、場所を示す) |
FE9E | H.LOF | 5 | | (LOF関数、ファイルの長さ) |
FEA3 | H.EOF | 5 | | (EOF関数、ファイルの終り) |
FEA8 | H.FPOS | 5 | | (FPOS関数、ファイルの場所) |
FEAD | H.BAKU | 5 | | BAKUPT(バックアップ) |
■論理装置名の拡張
アドレス | ラベル | 長さ | 初期値 | 内容 |
FEB2 | H.PARD | 5 | | PARDEV(装置名の取り出し) |
FEB7 | H.NODE | 5 | | NODEVN(装置名なし) |
FEBC | H.POSD | 5 | | POSDSK(ディスク装置) |
FEC1 | H.DEVN | 5 | | DEVNAM(装置名の処理) |
FEC6 | H.GEND | 5 | | GENDSP(装置割り当て) |
■BASIC内部で使用
アドレス | ラベル | 長さ | 初期値 | 内容 |
FECB | H.RUNC | 5 | | RUNC(RUNのためのクリア) |
FED0 | H.CLEA | 5 | | CLEARC(CLEARのためのクリア) |
FED5 | H.LOPD | 5 | | LOPDFT(繰り返しと省略値設定) |
FEDA | H.STKE | 5 | | STKERR(スタックエラー) |
FEDF | H.ISFL | 5 | | ISFLIO(ファイルの入出力かどうか) |
FEE4 | H.OUTD | 5 | | OUTDO(OUTを実行) |
FEE9 | H.CRDO | 5 | | CRDO(CRLFを実行) |
FEEE | H.DSKC | 5 | | DSKCHI(ディスクの属性を入力) |
FEF3 | H.DOGR | 5 | | DOGRPH(グラフィックを実行) |
FEF8 | H.PRGE | 5 | | PRGEND(プログラム終了) |
FEFD | H.ERRP | 5 | | ERRPRT(エラー表示) |
FF02 | H.ERRF | 5 | | |
FF07 | H.READ | 5 | | READY |
FF0C | H.MAIN | 5 | | MAIN |
FF11 | H.DIRD | 5 | | DIRDO(ダイレクトステートメント実行) |
FF16 | H.FINI | 5 | | |
FF1B | H.FINE | 5 | | |
FF20 | H.CRUN | 5 | | |
FF25 | H.CRUS | 5 | | |
FF2A | H.ISRE | 5 | | |
FF2F | H.NTFN | 5 | | |
FF34 | H.NOTR | 5 | | |
FF39 | H.SNGF | 5 | | |
FF3E | H.NEWS | 5 | | |
FF43 | H.GONE | 5 | | |
FF48 | H.CHRG | 5 | | |
FF4D | H.RETU | 5 | | |
FF52 | H.PRTF | 5 | | |
FF57 | H.COMP | 5 | | |
FF5C | H.FINP | 5 | | |
FF61 | H.TRNM | 5 | | |
FF66 | H.FRME | 5 | | |
FF6B | H.NTPL | 5 | | |
FF70 | H.EVAL | 5 | | |
FF75 | H.ONKO | 5 | | |
FF7A | H.FING | 5 | | |
FF7F | H.ISMI | 5 | | ISMID$(MID$かどうか) |
FF84 | H.WIDT | 5 | | WIDTHS(WIDTH) |
FF89 | H.LIST | 5 | | LIST |
FF8E | H.BUFL | 5 | | BUFLIN(バッファーライン) |
FF93 | H.FRQI | 5 | | FRQINT |
FF98 | H.SCNE | 5 | | |
FF9D | H.FRET | 5 | | FRETMP |
FFA2 | H.PTRG | 5 | | PTRGET(省略値以外の変数使用のポインタ) |
FFA7 | H.PHYD | 5 | | PHYDIO(物理ディスク入出力) |
FFAC | H.FORM | 5 | | FORMAT(ディスクのフォーマット) |
FFB1 | H.ERRO | 5 | | ERROR(アプリケーションのエラーを処理) |
FFB6 | H.LPTO | 5 | | LPTOUT(省略値以外のプリンタで出力) |
FFBB | H.LPTS | 5 | | LPTSTT(省略値以外のプリンタで状態を知る) |
FFC0 | H.SCRE | 5 | | SCREEN |
FFC5 | H.PLAY | 5 | | PLAY |
拡張BIOSが使用
アドレス | ラベル | 長さ | 初期値 | 内容 |
FFCA | FCALL | 5 | | 拡張BIOSが使用 |
FFCF | DISINT | 5 | | DOSが使用 |
FFD4 | ENAINT | 5 | | DOSが使用 |
■データエリア
アドレス | ラベル | 長さ | 初期値 | 内容 |
FFE7 | RG8SAV | 1 | | VDPレジスタ#8のセーブエリア |
FFE8 | RG9SAV | 1 | | VDPレジスタ#9のセーブエリア |
FFE9 | RG10SAV | 1 | | VDPレジスタ#10のセーブエリア |
FFEA | RG11SAV | 1 | | VDPレジスタ#11のセーブエリア |
FFEB | RG12SAV | 1 | | VDPレジスタ#12のセーブエリア |
FFEC | RG13SAV | 1 | | VDPレジスタ#13のセーブエリア |
FFED | RG14SAV | 1 | | VDPレジスタ#14のセーブエリア |
FFEE | RG15SAV | 1 | | VDPレジスタ#15のセーブエリア |
FFEF | RG16SAV | 1 | | VDPレジスタ#16のセーブエリア |
FFF0 | RG17SAV | 1 | | VDPレジスタ#17のセーブエリア |
FFF1 | RG18SAV | 1 | | VDPレジスタ#18のセーブエリア |
FFF2 | RG19SAV | 1 | | VDPレジスタ#19のセーブエリア |
FFF3 | RG20SAV | 1 | | VDPレジスタ#20のセーブエリア |
FFF4 | RG21SAV | 1 | | VDPレジスタ#21のセーブエリア |
FFF5 | RG22SAV | 1 | | VDPレジスタ#22のセーブエリア |
FFF6 | RG23SAV | 1 | | VDPレジスタ#23のセーブエリア |
FFF7 | | 3 | | システム予約 |
FFFA | RG25SAV | 1 | | VDPレジスタ#25のセーブエリア |
FFFB | RG26SAV | 1 | | VDPレジスタ#26のセーブエリア |
FFFC | RG27SAV | 1 | | VDPレジスタ#27のセーブエリア |
FFFD | | 2 | | システム予約 |
FFFF | | 1 | | 拡張スロット選択レジスタ |