非機密扱い | ![]() | ARM DUI0471JJ | ||
| ||||
ホーム > セミホスティングとは > SYS_OPEN(0x01) |
ホストシステム上でファイルを開きます。
ファイルパスは、ホストプロセスの現在のディレクトリへの相対パス、またはホストオペレーティングシステムのパス規則を使用した絶対パスとして指定されます。
ARM ターゲットは、特殊なパス名 :tt
を、コンソール入力ストリーム(読み込みモードで開く)またはコンソール出力ストリーム(書き込みモードで開く)として解釈します。これらのストリームを開く動作は、C 言語の stdio
ストリームを参照するアプリケーションの標準的な起動コードの中で実行されます。
エントリ時には、R1
は 3 ワード引数ブロックを指すポインタを保持します。
ファイル名またはデバイス名を保持する NULL で終わる文字列を指すポインタです。
「ファイルを開く」モードを指定する整数です。以下の表は、整数の有効な値と、対応する ISO C の fopen()
モードを示しています。
ワード 1 が指す文字列の長さを示す整数です。
文字列は NULL で終わる必要がありますが、この長さには終端の NULL 文字が含まれません。
表 7-3 モードの値
モード | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 |
ISO C fopen モードa | r | rb | r+ | r+b | w | wb | w+ | w+b | a | ab | a+ | a+b |
終了時には、R0
は以下の情報を保持します。
呼び出しに成功した場合はゼロ以外のハンドル
呼び出しに失敗した場合は –1
ANSI 以外のオプションはサポートされていません。