Everything

FTELL


ファイル・ポインタの現在位置を取得します。

[機能コード(R1レジスタ)]

[パラメータ・ブロック(R2レジスタ)]

[パラメータ]

パラメータ

説明

実行結果(出力)

0:正常終了

-1:エラー

ファイル番号(入力)

ファイルのオープン時に返す番号

オフセット(出力)

現在のファイル・ポインタの位置(ファイル先頭からのバイト数)

[詳細説明]ファイル・ポインタ

-

の現在位置を取得します。

[使用例]

_fptell:
        MOV.L       R2,R5           ; R2(オフセット)をR5に設定
        MOV.L       #PARM,R2        ; パラメータ・ブロックのアドレスをR2に設定
        MOV.B       R1,1h:5[R2]     ; R1(ファイル番号)をR2+1バイトに設定
        MOV.L       #010D0000h,R1   ; FTELLの関数コードをR1に設定
        MOV.L       #SIM_IO,R3      ; システム・コールのアドレスをR3に設定
        JSR         R3              ; システム・コール
        NOP
        MOV.L       #PARM,R2        ; パラメータ・ブロックのアドレスをR2に設定
        MOV.L       4h:5[R2],R1     ; R2+4バイト(新しいオフセット値)をR1に設定
        MOV.L       R1,[R5]         ; R1をR5(オフセットのポインタ)の先に設定
        MOV.B       [R2],R1         ; R2の先頭1バイト(実行結果)をR1に設定
        RTS                         ; 呼び出し元のアドレスに戻る
 
         .SECTION  B,DATA,ALIGN=4
PARM:       .BLKL   2               ; パラメータ・ブロック領域