Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ tskipf(3F7768) — NEWS-os 4.2.1R

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

ht(4)

perror(3F7768)

rewind(1)

TOPEN(3F7768)  —  NEWS-OS Programmer’s Manual

名称

topen, tclose, tread, twrite, trewin, tskipf, tstate  −  f77 テープ I/O

形式

integer function topen(tlu, devnam, label)
integer tlu
character∗(∗) devnam
logical label

integer function tclose(tlu)
integer tlu

integer function tread(tlu, buffer)
integer tlu
character∗(∗) buffer

integer function twrite(tlu, buffer)
integer tlu
character∗(∗) buffer

integer function trewin(tlu)
integer tlu

integer function tskipf(tlu, nfiles, nrecs)
integer tlu, nfiles, nrecs

integer function tstate(tlu, fileno, recno, errf, eoff, eotf, tcsr)
integer tlu, fileno, recno, tcsr
logical errf, eoff, eotf

解説

これらの関数は、 f77 と磁気テープデバイス間のシンプルなインターフェースを 提供します。 テープ論理ユニット tlu は、 通常の f77 論理ユニットが open される方法とよく似た方法で topen されます。 これ以外のすべての操作は tlu を介して行われます。 tlu は、 通常の f77 論理ユニットとはなんの関連も持っていません。

topen は、 デバイス名を tlu と関連づけます。 tlu は、 0 から 3 の範囲になければなりません。 論理引数 label は、 テープがテープラベルを含んでいるかどうかを示すもので、 これは下記の trewin によって使用されます。 topen は、 テープを進めません。 正常なリターン値は 0 です。 関数の値が負のときは、エラーの発生を示します。 詳しくは、 perror(3F7768) を参照してください。

tclose は、 テープデバイスチャネルをクローズし、 flu との関連づけを解放します。 正常なリターン値は 0 です。 関数の値が負のときは、 エラーの発生を示します。

tread は、テープから buffer へ、次の物理レコードを読み出します。 buffer は、 character 型でなければ なりません。 バッファ buffer のサイズは、 読み込まれる最大の物理レコードが入る大きさでなければなりません。 実際に読み込まれたバイト数が、 関数の値として返されます。 値 0 は、 ファイルの終り (end-of-file) が検出されたことを示します。 負の値は、 エラーの発生を示します。

twrite は、 buffer からテープに物理レコードを 書き込みます。 物理レコードの長さは、 buffer のサイズとなります。 buffer は、 character 型でなければ なりません。 書き込まれたバイト数が、関数の値として返されます。 0 または負の値は、エラーの発生を示します。

trewin は、 tlu に関連づけられたテープを 最初のデータファイルの先頭まで巻き戻します。 ラベル付きのテープ(前記 topen 参照)の場合、 巻き戻し後、 ラベルはスキップされます。 正常なリターン値は 0 です。 負の値は、 エラーの発生を示します。

tskipf は、 ファイルやレコードのスキップを可能にします。 最初に、 nfiles の end-of-file マークがスキップされます。 現在のファイルが EOF の位置にある場合、 この関数は、 スキップする 1 ファイルと数えます。 (注:この方法で、 tlu に対する EOF ステータスをリセットします) つぎに、 nrecs 物理レコードがスキップされます。 正常なリターン値は 0 です。 負の値は、エラーの発生を示します。

tstate は、 テープ I/O チャネルの物理状態の決定と、 テープドライブ制御ステータスレジスタの参照を可能にします。 fileno および recno の値が返され、 この値は現在のファイルおよびレコード番号を示します。 論理値 errf および eoff、 eotf は、 エラーが発生したこと、 現在のファイルが EOF 位置にあること、 またはテープが論理的 end-of-tape に達したことを示します。 end-of-tape(EOT)は、 空のテープによって示されるもので、 これは、 たいてい二重の EOF マークとして参照されます。 EOT の後に書き込むことは可能ですが、 読み出すことはできません。 tcsr の値は、 テープドライブ制御ステータスレジスタの値を示します。 詳細については、 ht(4) を参照してください。

関連ファイル

/usr/lib/libU7768.a

関連事項

ht(4), perror(3F7768), rewind(1)

NEWS-OSRelease 4.2.1R

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026