MSX-DOS2 FCS 03 61

From Z80 Machines Wiki
Jump to: navigation, search

3.61ファイルの日付と時刻の取得/設定(51h)

パラメータ:C = 51H(_FTIME)

DE =ドライブ/パス/ファイルASCIIZ文字列

またはfileinfoブロックポインタ

A = 0 =>日時を取得する

1 =>日付と時刻を設定

IX =新しい時間値(A = 1の場合のみ)

HL =新しい日付値(A = 1の場合のみ)

結果:A =エラー

DE =現在のファイル時間値

HL =現在のファイルの日付値


A = 1の場合、この関数はdrive / path / file文字列またはfileinfoブロックで指定されたファイルまたはサブディレクトリの最終変更日時を設定します。グローバルファイル名文字は、文字列のどの部分にも使用できないため、この関数によって変更できるのは1つのファイルだけです。 "CON"などのデバイス名を指定した場合、エラーは返されませんが、デバイスの日時は実際には変更されません。

日付と時刻の形式は、ディレクトリエントリとファイル情報ブロックに含まれているとおりです(「プログラムインタフェースの仕様」を参照)。賢明な日付や時間のチェックは行われず、値は単純に格納されます。 fileinfoブロックが渡された場合、そこに格納されている日付と時刻は渡されません。 この関数によって更新されました。

A = 0の場合、現在の値が返されるだけです。時間値はIXで渡されますが、DEで返されることに注意してください。ファイルハンドルがファイルに対して開いている場合( ".FOPEN"エラー)、ファイルの日付と時刻を変更することはできません(読み取ることはできますが)。