Difference between revisions of "MSX-DOS2 FCS 03 29"

From Z80 Machines Wiki
Jump to: navigation, search
(Created page with "===3.29 RANDOM READ [FCB](21h) === パラメータ:C = 21H(_RDRND) DE =開かれたFCBへのポインタ 結果:エラーの場合はL = A = 01H...")
(No difference)

Revision as of 13:46, 9 March 2019

3.29 RANDOM READ [FCB](21h)

パラメータ:C = 21H(_RDRND)

DE =開かれたFCBへのポインタ

結果:エラーの場合はL = A = 01H(ファイルの終わり)

読み取りが成功した場合は= 0

この関数は、ファイルから現在のディスク転送アドレスに128バイトのレコードを読み込みます。ファイル位置は、FCB内の3バイトのランダムレコード番号(バイト21h ... 23h)によって定義されます。 CP / Mとは異なり、ランダムレコード番号の3バイトすべてが使用されます。ファイルの末尾の部分レコードは、ユーザーのDTAにコピーされる前にゼロが埋め込まれます。

ランダム・レコード番号は変更されないため、一時プログラムがランダム・レコード番号を変更しない限り、この関数を続けて呼び出しても同じレコードが読み取られます。副作用は、現在のレコードとエクステントがランダムレコード番号と同じレコードを参照するように設定されていることです。これは、順次読み取り(または書き込み)がランダム読み取りの後に続き、同じレコードから始まることを意味します。レコードカウントバイトもエクステント用に正しく設定されています。