S1 BASIC ワークエリア
物理アドレスは、
・$E000 → $84000
・$F000 → $EF000
| アドレス(HEX) | 概要 | 内容 |
|---|---|---|
| E578 | プリンタに送信しないコード | LPT0:に送信しないコード。デフォルトは復帰コード($0D) |
| E579 | プリンタに送信しないコード | LPT1:に送信しないコード。デフォルトは復帰コード($0D) |
| E57A | プリンタに送信しないコード | LPT2:に送信しないコード。デフォルトは復帰コード($0D) |
| E57B | カーソル状態 | bit6-bit4:ブリンクなし:000 倍速:100 通常:110 非表示:xx1 bit3-bit0:カーソル太さ |
| E57C | 文字色設定 | $FFD8に設定する値 |
| E57D ... E57E | カセット 中間GAPの長さ | 途中の「ぴー」の長さを指定。 $000A |
| E57F ... E580 | カセット 初期GAPの長さ | 最初の「ぴー」の長さを指定。 600ボーの時 $005A |
| E581 | HKRWN0 | 基本BASIC命令の数 |
| E582 ... E583 | HKRWD0 | 基本BASIC命令の文字列のある先頭アドレス (空間1) |
| E584 ... E585 | HKRWJ0 | 基本BASIC命令の実行アドレス? |
| E586 | HKRNF0 | 基本BASIC関数の数 |
| E587 ... E588 | HKRWF0 | 基本BASIC関数の文字列のある先頭アドレス (空間1) |
| E589 ... E58A | HKRJ0 | 基本BASIC関数の実行アドレス? |
| E58B | HKRWN1 | 追加BASIC命令の数 ($F00Cにここへのアドレスが格納) |
| E58C ... E58D | HKRWD1 | 追加BASIC命令の文字列のある先頭アドレス |
| E58E | HKRWJ1 | 追加BASIC命令のジャンプ番号算出用オフセット |
| E58F | HKRWL1 | 追加BASIC命令の空間番号 |
| E590 | HKRNF1 | 追加BASIC関数の数 |
| E591 ... E592 | HKRWF1 | 追加BASIC関数の文字列のある先頭アドレス |
| E593 | HKRJ1 | 追加BASIC関数のジャンプ番号算出用オフセット |
| E594 | HKRWE1 | 追加BASIC関数の空間番号 |
| E595 | HKRWN2 | DISK BASIC命令の数 (ここへのアドレスは$F00Cと$F01Eから計算) |
| E596 ... E597 | HKRWD2 | DISK BASIC命令の文字列のある先頭アドレス |
| E598 | HKRWJ2 | DISK BASIC命令のジャンプ番号算出用オフセット |
| E599 | HKRWL2 | DISK BASIC命令の空間番号 |
| E59A | HKRNF2 | DISK BASIC関数の数 |
| E59B ... E59C | HKRWF2 | DISK BASIC関数の文字列のある先頭アドレス |
| E59D | HKRJ2 | DISK BASIC関数のジャンプ番号算出用オフセット |
| E59E | HKRWE2 | DISK BASIC関数の空間番号 |
| E59F | HKRWN3 | ユーザが定義したBASIC命令1の数 |
| E5A0 ... E5A1 | HKRWD3 | ユーザが定義したBASIC命令1の文字列のある先頭アドレス |
| E5A2 | HKRWJ3 | ユーザが定義したBASIC命令1のジャンプ番号算出用オフセット |
| E5A3 | HKRWL3 | ユーザが定義したBASIC命令1の空間番号 |
| E5A4 | HKRNF3 | ユーザが定義したBASIC関数1の数 |
| E5A5 ... E5A6 | HKRWF3 | ユーザが定義したBASIC関数1の文字列のある先頭アドレス |
| E5A7 | HKRJ3 | ユーザが定義したBASIC関数1のジャンプ番号算出用オフセット |
| E5A8 | HKRWE3 | ユーザが定義したBASIC関数1の空間番号 |
| E5A9 | HKRWN4 | ユーザが定義したBASIC命令2の数 |
| E5AA ... E5AB | HKRWD4 | ユーザが定義したBASIC命令2の文字列のある先頭アドレス |
| E5AC | HKRWJ4 | ユーザが定義したBASIC命令2のジャンプ番号算出用オフセット |
| E5AD | HKRWL4 | ユーザが定義したBASIC命令2の空間番号 |
| E5AE | HKRNF4 | ユーザが定義したBASIC関数2の数 |
| E5AF ... E5B0 | HKRWF4 | ユーザが定義したBASIC関数2の文字列のある先頭アドレス |
| E5B1 | HKRJ4 | ユーザが定義したBASIC関数2のジャンプ番号算出用オフセット |
| E5B2 | HKRWE4 | ユーザが定義したBASIC関数2の空間番号 |
| E5B3 ... E5B4 | USR0関数の実行アドレス | 空間Fでマッピングした値 |
| E5B5 ... E5B6 | USR1関数の実行アドレス | 空間Fでマッピングした値 |
| E5B7 ... E5B8 | USR2関数の実行アドレス | 空間Fでマッピングした値 |
| E5B9 ... E5BA | USR3関数の実行アドレス | 空間Fでマッピングした値 |
| E5BB ... E5BC | USR4関数の実行アドレス | 空間Fでマッピングした値 |
| E5BD ... E5BE | USR5関数の実行アドレス | 空間Fでマッピングした値 |
| E5BF ... E5C0 | USR6関数の実行アドレス | 空間Fでマッピングした値 |
| E5C1 ... E5C2 | USR7関数の実行アドレス | 空間Fでマッピングした値 |
| E5C3 ... E5C4 | USR8関数の実行アドレス | 空間Fでマッピングした値 |
| E5C5 ... E5C6 | USR9関数の実行アドレス | 空間Fでマッピングした値 |
| E68A | FILMOD | ファイル・モード |
| E68B | FILTYP | ファイル・タイプ $0:BASIC $1:DATA $2:MACHINE |
| E68C | ASCFLG | ファイル ASCIIフラグ $0:BINARY $FF:ASCII |
| E68D | FNAMLN | ファイル名長さ |
| E68E ... E695 | FILNAM | ファイル名 |
| E696 | DEVNUM | ファイル デバイス番号 |
| E697 ... E69D | OPTBUF | ファイルデスクリプタのオプション |
| E69E | RUNCLS | ファイルRUN/CLOSEフラグ |
| E69F | MRGFLG | ファイルMERGEフラグ $0:LOAD/RUN $0以外:MERGE |
| E6A0 | LODMNT | ファイルLOADMフラグ $0:LOADM実行中 $0以外:LOADM実行していない |
| E6A1 ... E6A2 | LODOFF | ファイルLOADMオフセット |
| E6A5 | 1/60秒カウンタ | 内部時計用のカウンタ(60Hz) 60から1までカウントダウンする |
| E6A6 ... E6A7 | 時 | 時 2桁 |
| E6A8 ... E6A9 | 分 | 分 2桁 |
| E6AA ... E6AB | 秒 | 秒 2桁 |
| E6AC ... E6AD | 年 | 年 2桁 |
| E6AE ... E6AF | 月 | 月 2桁 |
| E6B0 ... E6B1 | 日 | 日 2桁 |
| E6B2 | カーソルX | カーソル位置のX座標 |
| E6B3 | カーソルY | カーソル位置のY座標 |
| E6B4 | 総行数 | 画面の総行数 $19 |
| E6B5 | スクロール開始行 | CONSOLE文参照 |
| E6B6 | スクロール終了行 | CONSOLE文参照 |
| E6B7 | PFキー表示 | $00:非表示、$01:表示 |
| E6B8 | PFキーシフトフラグ | $40:シフトキー押下 |
| E96E ... EA0D | PFKTAB | PFキー1~10 文字列 (16バイトx10) ($F01Cにここへのアドレスが格納) |
| EB59 ... EB65 | MT1 | 空間1のメモリマップ |
| EB66 ... EB72 | MT3 | 空間3のメモリマップ |
| EB73 ... EB7F | MT4 | 空間4のメモリマップ |
| EB80 ... EB8C | MT5 | 空間5のメモリマップ |
| EB8D ... EB99 | MT6 | 空間6のメモリマップ |
| ED79 | 拡張ワークエリアのマップアドレス | 通常 $86 |
| EE32 | デバイス無効フラグ | bit0:ACIA無効=1 bit1:マウス無効=1 bit2:PSG無効=1 bit3:IG無効=1 |
| EEC6 | DEFDEV | デフォルトデバイス |
| EECD ... EECE | EXECAD | EXEC文の実行アドレス (空間Fでマッピングした値) |
| EED3 | MCURMP | 現在のメモリ空間番号 |
| EEDA | BREAKF | ブレーク・フラグ $03:CRTL+C押下 $FF:BREAKキー押下 |
| EEDB | ABORTF | アボート・フラグ |
| EEEE ... EEF0 | VFIRQ | FIRQ割り込み発生時にここにジャンプする。 |
| EEF1 ... EEF3 | VIRQ | IRQ割り込み発生時にここにジャンプする。 |
| EEF4 ... EEF6 | VNMI | NMI割り込み発生時にここにジャンプする。 |
| EEF7 ... EEF9 | VSWI | SWI割り込み発生時にここにジャンプする。 |
| EEFA ... EEFC | VSWI2 | SWI2割り込み発生時にここにジャンプする。 |
| EEFD ... EEFF | VSWI3 | SWI3割り込み発生時にここにジャンプする。 |
| EF1D ... EF1E | BASIC開始アドレス | BASICプログラム開始アドレス(空間3でマッピングした値) |
| EF1F ... EF20 | 単純変数開始アドレス | 空間4でマッピングした値 |
| EF21 ... EF22 | 配列変数開始アドレス | 空間4でマッピングした値 |
| EF2D ... EF2E | BASIC実行中の行番号 | |
| EF2F ... EF30 | BASIC中断時の行番号 | CONT文 |
| EF33 ... EF34 | BASIC中断時のアドレス | 空間1でマッピングした値 |
| EF35 ... EF36 | BASIC実行中のアドレス | 空間1でマッピングした値 |
| EF8B | エラー番号 | |
| EF8C ... EF8D | エラー行番号 | エラーが発生した行番号 |
| EFA2 | 文字数 | 1行の文字数(WIDTH文) |
| EFA3 ... EFA4 | テキスト画面開始アドレス | 開始アドレス(空間1)(通常$4000) |
| EFA5 ... EFA6 | テキスト画面終了アドレス+1 | 終了アドレス+1(空間1)(通常$47D0) |
| EFA7 | スクリーンモード | bit0:40字=0, 80字=1 bit1:320x200=0, 640x200=1 |
| F00C ... F00D | PHOOK1 | 追加BASIC命令・関数テーブルの先頭アドレス ($E58B) |
| F018 ... F019 | PFILMD | ファイルテーブルの先頭アドレス ($E68A) |
| F01C ... F01D | PPFTAB | PFキー文字列テーブルの先頭アドレス ($E96E) |
| F01E | LHOOK1 | BASIC命令・関数テーブルのサイズ 10バイト |
| E19C4 ... E1C5C | エラーメッセージ文字列1 | ROM BASICのエラーメッセージ |
| E25C6 ... E26BE | エラーメッセージ文字列2 | DISK BASICのエラーメッセージ |
◆関連ページ◆