dload は、次に示すように、Ethernet を通じて指定されたアドレスに読み込みます。
ok 4000 dload filename |
上記の例で、filename はサーバーのルートからの相対パス名でなければなりません。dload 入力のアドレスとして 4000 (16 進) を使用します。dload は簡易ファイル転送プロトコル (TFTP) を使用するので、このコマンド行が正しく動作するためには、サーバーのアクセス権の調整が必要なことがあります。
dload で読み込む Forth プログラムは、最初の 2 文字が「¥ 」(バックスラッシュと空白文字) である ASCII ファイルでなければなりません。読み込んだ Forth プログラムを実行するには、次のように入力します。
ok 4000 file-size @ eval |
上記の例で、file-size には読み込んだイメージのサイズを設定します。
dload で読み込む FCode プログラムは a.out ファイルでなければなりません。読み込んだ FCode プログラムを実行するには、次のように入力します。
ok 4000 1 byte-load |
byte-loadは、SBus などの拡張ボード上での FCode プログラムの解釈用として OpenBoot が使用します。例の中にある 1 は、一般の場合の FCode 間の区切り指定用の変数の特定値です。dloadはシステムメモリーに読み込まれるので、1 は正しい区切りになります。
dload で読み込む実行可能なバイナリプログラムは、a.outファイルであり、dloadの入力アドレス (4000) を実行するようにリンクされていなければなりません。または、位置に依存しないようになっていなければなりません。バイナリプログラムを実行するには、次のように入力します。
ok go |
上記のプログラムをもう一度実行するには、次のように入力します。
ok init-program go |
dload は、(起動コマンドの場合とは異なり) 中間起動プログラムを使用しません。したがって、a.out ファイル内のシンボル情報はすべてユーザインタフェースのシンボリックデバッグ機能で処理できます。(シンボリックデバッグについての詳細は、第 6 章「デバッグ」 を参照してください)。