English
PROGRAMMER'S GUIDECD通信I/F(CDパート)
戻る進む
CD通信インタフェースユーザーズマニュアル(CDパート)

関数詳細-8


8.2.8 CDブロックファイルシステム




Title

関数仕様

Function

ディレクトリの移動

Function Name[SR]

CDC_ChgDir

No

8.1

 書 式
Sint32 CDC_ChgDir(Sint32 filtno, Sint32 fid)
 入 力
filtno
:絞り番号
fid
:ディレクトリファイルのファイル識別子(CDC_NUL_FID:ルートディレクトリ)
 出 力
なし
 関数値
エラーコードを返します。
 終了フラグ
EFLSフラグ
 機 能
指定したファイル識別子の示すディレクトリへ、カレントディレクトリを移動します。 ファイル識別子にCDC_NUL_FIDを指定すると、ルートディレクトリに移動します。 移動するとディレクトリレコードを読み込み、先頭から最大254個のファイル情報を保持します。(自分と親を含めると最大256個) ファイル識別子がディレクトリを指していない場合はREJECTを返します。
 備 考
CDブロックファイルシステムは、作業用にセレクタを使用します。作業用のセレクタは、絞り番号によって指定します。



Title

関数仕様

Function

ファイル情報の保持

Function Name[SR]

CDC_ReadDir

No

8.2

 書 式
Sint32 CDC_ReadDir(Sint32 filtno, Sint32 fid)
 入 力
filtno:絞り番号
 出 力
なし
 関数値
エラーコードを返します。
 終了フラグ
EFLSフラグ
 機 能
カレントディレクトリのディレクトリレコードを読み込み、指定したファイル識別子以降の最大254個のファイル情報を保持します。(自分と親は常に保持)
 備 考
CDブロックファイルシステムは、作業用にセレクタを使用します。作業用のセレクタは、絞り番号によって指定します。



Title

関数仕様

Function

保持ファイル情報範囲の取得

Function Name[S-]

CDC_GetFileScope

No

8.3

 書 式
Sint32 CDC_GetFileScope(Sint32 *fid, Sint32 *infnum, Bool *drend)
 入 力
なし
 出 力
fid
:保持している先頭ファイル識別子
infnum
:保持しているファイル情報の個数
drend 
:最終ディレクトリレコード保持フラグ
 関数値
エラーコードを返します。
 機 能
現在CDブロックが保持しているファイル情報の範囲を返します。

 (1)最終ディレクトリレコード保持フラグ
現在の保持ファイル情報範囲が、ディレクトリブロック内の最後のディレクトリレコードを含んでいるか通知します。これにより、後続のディレクトリレコードがあるか判断できます。
定数名
説 明
TRUE
最終ディレクトリレコードを保持している。
FALSE
最終ディレクトリレコードを保持していない。

 備 考
自分と親のディレクトリは常に保持しているため、ファイル情報の個数には含まれません。



Title

関数仕様

Function

保持ファイル情報の取得

Function Name[S-]

CDC_TgetFileInfo

No

8.4

 書 式
Sint32 CDC_TgetFileInfo(Sint32 fid, CdcFile *file)
 入 力
fid:ファイル識別子(CDC_NUL_FID:全ファイル情報を示す)
 出 力
file:ファイル情報
 関数値
エラーコードを返します。
 機 能
保持ファイル情報範囲の中からファイル識別子を指定して、ファイル情報(12バイト)を取得します。
ファイル識別子にCDC_NUL_FIDを指定すると、CDブロックが保持している全てのファイル情報(自分と親を除く最大254個)を取得します。
 注 意
ファイルの読み込み(CDC_ReadFile)コマンドを発行した直後は、コマンドの上書きを防止するため、必ず16.7ms以上あけてください。
  例
CdcFile file;                            /* 1ファイル情報格納領域の確保 */
ret = CDC_TgetFileInfo(fid, &file);

CdcFile allfile[254];                    /* 全ファイル情報格納領域の確保 */
ret = CDC_TgetFileInfo(CDC_NUL_FID, allfile);



Title

関数仕様

Function

ファイルの読み込み

Function Name[SR]

CDC_ReadFile

No

8.5

 書 式
Sint32 CDC_ReadFile(Sint32 filtno, Sint32 fid, Sint32 offset)
 入 力
filtno
:絞り番号
fid
:ファイル識別子
offset
:ファイル先頭からの論理的なオフセット(セクタ単位)
 出 力
なし
 関数値
エラーコードを返します。
 終了フラグ
EFLSフラグ
 機 能
指定したファイルをCDバッファに読み込みます。読み込み先のセレクタは、絞り番号によって指定します。



Title

関数仕様

Function

ファイルアクセスの中止

Function Name[SR]

CDC_AbortFile

No

8.6

 書 式
Sint32 CDC_AbortFile(void)
 入 力
なし
 出 力
なし
 関数値
エラーコードを返します。
 終了フラグ
EFLSフラグ(0クリアだけしている)……EFLSの値によらず実行可
 機 能
CDブロックファイルシステム(下記の機能)によるファイルのアクセスを中止します。

ファイルアクセスが中止されると、CDドライブにポーズがかかり、割り込み要因レジスタのEFLSフラグが1になります。
ファイルアクセス中でなければEFLSフラグを1にするだけです。
 備 考
ファイルアクセスを中止しても、バッファ区画のクリアや、セレクタの初期化は行いません。
CDC_ChgDir,CDC_ReadDir関数の実行を中止すると、保持しているファイル情報は全てクリアされます。
トレイが開いた場合もファイルアクセスは中止されます。

戻る進む
PROGRAMMER'S GUIDECD通信I/F(CDパート)
Copyright SEGA ENTERPRISES, LTD., 1997