この付録には、OpenBoot ファームウェアがサポートする Forth のコマンドを一覧表で示します。
大部分のコマンドは、各章での説明順に並んでいます。ただし一部の表では、このマニュアルには記載されていないコマンドを示しています。これらの追加コマンド (メモリーマップまたは出力表示用の基本式、マシン固有のレジスタ操作用コマンド) も、Forth の OpenBoot 実装のワードセットの一部です。したがって、これらのコマンドはそれぞれ該当するグループのコマンドと一緒に示してあります。
表 E-1 スタック項目の表記表 E-2 制限付きモニターコマンド
コマンド |
説明 |
---|---|
b [specifiers] |
オペレーティングシステムを起動します (ok プロンプトで boot を入力するのと同じ)。 |
c |
停止されているプログラムの実行を再開します( ok プロンプトで go を入力するのと同じ)。 |
n |
Forth モニタ-に入ります。 |
表 E-3 デバイス別名の確認と作成
コマンド |
説明 |
---|---|
devalias |
現在のすべてのデバイス別名を表示します。 |
devalias alias |
alias に対応するデバイスパス名を表示します。 |
device-path を表す別名を定義します。同じ名前の別名がすでに存在すると、新しい名前に更新します。 |
表 E-4 デバイスツリー表示コマンド
表 E-5 ヘルプコマンド
コマンド |
説明 |
---|---|
help |
ヘルプの主なカテゴリを表示します。 |
help category |
カテゴリ内の全コマンドのヘルプを表示します。カテゴリ記述の最初の単語だけを使用します。 |
help command |
各コマンドのヘルプを表示します (ただし、ヘルプが提供されている場合)。 |
表 E-6 boot コマンドの一般的オプション
変数 |
説明 |
---|---|
boot [device-specifier] [filename] [options] |
|
[device-specifier] |
起動デバイス名 (フルパス名または別名)。例を示します。 cdrom (CD-ROM ドライブ) disk (ハードディスク) floppy (3.5 インチフロッピーディスクドライブ) net ( Ethernet ) tape (SCSI テープ) |
[filename] |
起動するプログラムの名前 (たとえば stand/diag)。 filename は選択するデバイスとパーティションのルートからのパス名とします。filename を指定しないと、起動プログラムは boot-file NVRAM 変数の値 (第 3 章参照) を使用します。 |
[options] |
-a -デバイスと起動ファイル名を聞いてきます。 -h - プログラムを読み込んだ後、停止します。 (これらは OS に固有のオプションで、システムによって異なります。) |
表 E-7 診断テストコマンド
表 E-8 システム情報表示コマンド
コマンド |
説明 |
---|---|
banner | |
show-sbus |
インストールされ、プローブされる SBus デバイスのリストを表示します。 |
.enet-addr | |
SPARC のトラップタイプのリストを表示します。 |
|
.version |
表 E-9 NVRAM システム変数
表 E-10 システム変数の表示/変更
コマンド |
説明 |
---|---|
printenv |
すべての現在の変数とデフォルト値を表示します。 (数値は通常 10 進で示されます。) printenv parameter は指定する変数の現在値を表示します。 |
setenv parameter value |
parameter を 10 進またはテキスト値 value に設定します。 (変更は永久的ですが、通常はリセット後に初めて有効になります。) |
set-default parameter |
指定する 変数の値 を工場出荷時のデフォルトに設定します。 |
set-defaults |
変数設定を工場出荷時のデフォルトに戻します。 |
表 E-11 システム変数用コマンド基本式
表 E-12 NVRAMRC エディタコマンド
表 E-13 nvedit キー操作コマンド
キー操作 |
説明 |
---|---|
Control-B |
1 文字位置戻ります。 |
Control-C |
エディタを終了し、OpenBook コマンドインタプリタに戻ります。一時バッファーは保存されていますが、NVRAMRC には戻されません。(後で nvstore を使用して一時バッファーを NVRAMRC に書いて戻してください。) |
Control-F |
文字位置進みます。 |
Control-K |
行の終わりでは、現在行に次の行をつなぎます (つまり、この行を 1 つにします)。 |
Control-L |
すべての行を表示します。 |
Control-N |
NVRAMRC 編集バッファーの次の行に進みます。 |
Control-O |
カーソル位置に new line を挿入し、現在行にとどまっています。 |
Control-P |
NVRAMRC 編集バッファーの前の行に戻ります。 |
Delete |
前の 1 文字を削除します。 |
Return |
カーソル位置に改行を挿入し、次の行に進みます。 |
表 E-14 スタック操作コマンド
表 E-15 コロン定義ワード
コマンド |
スタックダイアグラム |
説明 |
---|---|---|
: name |
( -- ) |
新しいワード定義の作成を開始します。 |
; |
( -- ) |
新しいワード定義の作成を終了します。 |
表 E-16 演算機能
表 E-17 変換演算子
表 E-18 メモリーアクセスコマンド
表 E-19 メモリー割り当てコマンド
表 E-20 メモリー割り当て用基本式
表 E-21 キャッシュ操作コマンド
表 E-22 Sun-4D マシンのマシンレジスタ読み取り/書き込み
コマンド |
スタックダイアグラム |
説明 |
---|---|---|
SuperSPARC(TM) モジュールレジスタアクセス用 |
||
cxr! |
( data -- ) |
MMU コンテキストレジスタに書き込みます。 |
mcr! |
( data -- ) |
モジュール制御レジスタに書き込みます。 |
cxr@ |
( -- data ) |
MMU コンテキストレジスタから読み取ります。 |
mcr@ |
( -- data ) |
MMU 制御レジスタから読み取ります。 |
sfsr@ |
( -- data ) |
同期障害ステータスレジスタから読み取ります。 |
sfar@ |
( -- data ) |
同期障害アドレスレジスタから読み取ります。 |
afsr@ |
( -- data ) |
非同期障害アドレスレジスタから読み取ります。 |
afar@ |
( -- data ) |
非同期障害アドレスレジスタから読み取ります。 |
.mcr |
( -- ) |
モジュール制御レジスタを表示します。 |
.sfsr |
( -- ) |
同期障害ステータスレジスタを表示します。 |
MXCC 割り込みレジスタアクセス用 |
||
interrupt-enable! |
( data -- ) |
割り込みマスクレジスタに書き込みます。 |
interrupt-enable@ |
( -- data ) |
割り込みマスクレジスタから読み取ります。 |
interrupt-pending@ |
( -- data ) |
割り込み保留レジスタから読み取ります。 |
interrupt-clear! |
( data -- ) |
割り込みクリアレジスタに書き込みます。 |
BootBus レジスタアクセス用 |
||
control! |
( datat -- ) |
BootBus 制御レジスタに書き込みます。 |
control@ |
( -- datat ) |
BootBus 制御レジスタから読み取ります。 |
status1@ |
( -- datat ) |
BootBus status1 レジスタから読み取ります。 |
status2@ |
( -- datat ) |
BootBus status2 レジスタから読み取ります。 |
表 E-23 Sun-4M マシンのマシンレジスタ読み取り/書き込み
表 E-24 Sun-4C マシンのマシンレジスタ読み取り/書き込み
表 E-25 代替アドレス空間アクセスコマンド
表 E-26 ワード定義
表 E-27 辞書検索コマンド
表 E-28 辞書コンパイルコマンド
表 E-29 アセンブル言語のプログラミング
表 E-30 基本数値表示
表 E-31 基数の変更
表 E-32 数値出力ワード用基本式
表 E-33 テキスト入力制御
コマンド |
スタックダイアグラム |
説明 |
---|---|---|
( ccc ) |
( -- ) |
コメントを開始します。 |
¥ rest-of-line |
( -- ) |
行の残りの部分をコメントとして扱います。 |
ascii ccc |
( -- char ) |
次のワードの最初の ASCII 文字の数値を得ます。 |
expect |
( adr +n -- ) |
割り当てられた入力デバイスのキーボードから編集済みの入力を得、adr に格納します。 |
key |
( -- char ) |
割り当てられた入力デバイスのキーボードから 1 文字を読みます。 |
key? |
( -- flag ) |
入力デバイスのキーボードでキーが押された場合 true。 |
span |
( -- adr16 ) |
expect が読む文字数を格納している変数。 |
word |
( char -- pstr ) |
入力文字列から char で区切られている文字列をまとめ、メモリー位置 pstr に入れます。 |
表 E-34 テキスト出力表示
表 E-35 書式付き出力
コマンド |
スタックダイアグラム |
説明 |
---|---|---|
#line |
( -- adr16 ) |
出力デバイス上の行番号を保持する変数。 |
#out |
( -- adr16 ) |
出力デバイス上のカラム番号を保持する変数。 |
表 E-36 テキスト文字列の操作
表 E-37 入出力先の変更コマンド
表 E-38 ASCII 定数
コマンド |
スタックダイアグラム |
説明 |
---|---|---|
bell |
( -- n ) |
ベル文字の ASCII コード。10 進の 7。 |
bs |
( -- n ) |
バックスペース文字の ASCII コード。10 進の 8。 |
表 E-39 行エディタコマンド
コマンド |
機能 |
---|---|
Control-A |
行の始めに戻ります。 |
Control-B |
1 文字位置戻ります。 |
Control-D |
現在位置の文字を消去します。 |
Control-E |
行の終わりに進みます。 |
Control-F |
1 文字位置進みます。 |
Control-H |
1 つ前の文字を消去します (Delete または Backspace キーと同じです)。 |
Control-K |
現在位置から行の終わりまで、消去します。 |
Control-L |
コマンド履歴リストを表示します。 |
Control-N |
1 行後のコマンド行を呼び出します。 |
Control-P |
1 行前のコマンド行を呼び出します。 |
Control-Q |
(制御文字を入力するために) 次の制御文字をそのまま入力可能にします。 |
Control-R |
行を再表示します。 |
Control-U |
1 行全体を消去します。 |
Control-W |
1 つ前の語を消去します。 |
Control-Y |
カーソルの前に保存バッファーの内容を挿入します。 |
Control-space |
現在のコマンドを補完します。 |
Control-/ |
すべての一致/コマンド補完の候補を表示します。 |
Control-? |
すべての一致/コマンド補完の候補を表示します。 |
Control-} |
すべての一致/コマンド補完の候補を表示します。 |
Esc-B |
1 語戻ります。 |
Esc-D |
語の現在位置から終わりまで消去します。 |
Esc-F |
1 語進みます。 |
Esc-H |
語の現在位置からはじめまで消去します (Control-Wと同じです)。 |
表 E-40 比較コマンド
表 E-41 if...then...else コマンド
コマンド |
スタックダイアグラム |
説明 |
---|---|---|
else |
( -- ) |
比較が成立しなかった場合、次のコードを実行します。 |
if |
( flag -- ) |
flag が true の場合、次のコードを実行します。 |
then |
( -- ) |
if...then...else を終了します。 |
表 E-42 case 文コマンド
表 E-43 begin (条件付き) ループコマンド
表 E-44 do(カウント付き) ループコマンド
表 E-45 プログラム実行制御コマンド
表 E-46 ファイル読み込みコマンド
表 E-47 逆アセンブラコマンド
コマンド |
スタックダイアグラム |
説明 |
---|---|---|
+dis |
( -- ) |
最後に逆アセンブルを中断したところから逆アセンブルを継続します。 |
dis |
( adr -- ) |
指定されたアドレスから逆アセンブルを開始します。 |
表 E-48 SPARC レジスタコマンド
表 E-49 ブレークポイントコマンド
表 E-50 Forth ソースレベルデバッガコマンド
表 E-51 時間ユーティリティー
コマンド |
スタックダイアグラム |
説明 |
---|---|---|
get-msecs |
( -- ms ) |
現在の ミリ秒 (ms) 単位の概略時刻を返します。 |
ms |
( n -- ) |
n ミリ秒 (ms) 遅延させます。分解能は 1 ミリ秒 (ms) です。 |
表 E-52 その他の処理
表 E-53 マルチプロセッサコマンド
コマンド |
スタックダイアグラム |
説明 |
---|---|---|
module-info |
( -- ) |
すべての CPU モジュールのタイプと速度を表示します。 |
switch-cpu |
( cpu# -- ) |
指定された CPU に切り替えます。(マルチプロセッサの場合有効) |
表 E-54 緊急キーボードコマンド