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

関数詳細-6


8.2.6 バッファ情報




Title

関数仕様

Function

CDバッファサイズの取得

Function Name[S-]

CDC_GetBufSiz

No

6.1

 書 式
Sint32 CDC_GetBufSiz(Sint32 *totalsiz, Sint32 *bufnum, Sint32 *freesiz)
 入 力
なし
 出 力
totalsiz
:全バッファサイズ(セクタ単位、200セクタ=C8H)
bufnum
:全バッファ区画数(24区画=18H)
freesiz
:空きバッファサイズ(セクタ単位)
 関数値
エラーコードを返します。
 機 能
CDバッファ全体のサイズとバッファ区画数(いずれも固定値)、および現在の空きサイズを取得します。
セレクタの数(または絞りの数)は、全バッファ区画数に等しくなります。
 備 考
空きサイズが0であっても、システムで使用しているセクタがあるため、バッファフルになるとは限りません。



Title

関数仕様

Function

CDバッファ区画のセクタ数の取得

Function Name[S-]

CDC_GetSctNum

No

6.2

 書 式
Sint32 CDC_GetSctNum(Sint32 bufno, Sint32 *snum)
 入 力
bufno:バッファ区画番号
 出 力
snum :バッファ区画内のセクタ数(バッファ区画サイズ)
 関数値
エラーコードを返します。
 機 能
バッファ区画の現在のセクタ数(バッファ区画サイズ)を取得します。



Title

関数仕様

Function

実データサイズの計算

Function Name[SR]

CDC_CalActSiz

No

6.3

 書 式
Sint32 CDC_CalActSiz(Sint32 bufno, Sint32 spos, Sint32 snum)
 入 力
bufno
:バッファ区画番号
spos
:セクタ位置(CDC_SPOS_END:区画最後のセクタを示す)
snum
:セクタ数(CDC_SNUM_END:sposから区画最後までのセクタ数を示す)
 出 力
なし
 関数値
エラーコードを返します。
 終了フラグ
ESELフラグ
 機 能
バッファ区画の指定セクタ範囲から、実データサイズ(ホストに取り出す場合のワード数)を計算します。計算結果を得るには、実データサイズの取得(CDC_GetActSiz)を実行します。
エラーの場合、実データサイズは以下の値になります。
定数名
説 明
CDC_ACTSIZ_ERR
計算を実行できなかった。
1セクタの長さは、セクタ長の設定(CDC_SetSctLen)で変更できます。
 備 考
区画出力コネクタに接続済みのコネクタは切断されます。



Title

関数仕様

Function

実データサイズの取得

Function Name[S-]

CDC_GetActSiz

No

6.4

 書 式
Sint32 CDC_GetActSiz(Sint32 *actwnum)
 入 力
なし
 出 力
actwnum:実データサイズ(ワード数)
 関数値
エラーコードを返します。
 終了フラグ
ESELフラグ(チェックだけしている)
 機 能
実データサイズの計算結果(初期値0)を取得します。
前回の計算結果は、次に計算(CDC_CalActSiz)を実行するまで保持されます。



Title

関数仕様

Function

セクタ情報の取得

Function Name[S-]

CDC_GetSctInfo

No

6.5

 書 式
Sint32 CDC_GetSctInfo(Sint32 bufno, Sint32 spos, CdcSct *sct)
 入 力
bufno
:バッファ区画番号
spos
:セクタ位置(CDC_SPOS_END:区画最後のセクタを示す)
 出 力
sct :セクタ情報
 関数値
エラーコードを返します。
 機 能
バッファ区画の指定セクタのヘッダ情報(FAD)、サブヘッダ情報を取得します。



Title

関数仕様

Function

フレームアドレス検索の実行

Function Name[SR]

CDC_ExeFadSearch

No

6.6

 書 式
Sint32 CDC_ExeFadSearch(Sint32 bufno, Sint32 spos, Sint32 fad)
 入 力
bufno
:バッファ区画番号
spos
:セクタ位置(CDC_SPOS_END:区画最後のセクタを示す)
fad
:フレームアドレス
 出 力
なし
 関数値
エラーコードを返します。
 終了フラグ
ESELフラグ
 機 能
バッファ区画の指定セクタ位置から、フレームアドレスをキーにしてセクタを検索します。検索結果を得るには、フレームアドレス検索結果の取得(CDC_GetFadSearch)を実行します。

 (1)検索方向
バッファ区画の後方に向かって検索します。(セクタ位置の小さい方から大きい方へ)

 (2)検索結果
検索結果として保持する内容は、バッファ区画番号、検索して得られたセクタ位置、そのセクタのフレームアドレスです。

 (3)検索条件
一致するFADが存在しない場合、指定されたFADを越えない最も近いセクタを検索します。つまり検索結果のFADは、FAD≦指定FADを満たす最大のFADとなります。
エラーの場合、検索結果のセクタ位置とFADは以下の値になります。
セクタ位置
フレームアドレス
説 明
CDC_SPOS_ERR
0
検索条件を満たすセクタが存在しない。
CDC_FAD_ERR
検索を実行できなかった。
 備 考
区画出力コネクタに接続済みのコネクタは切断されます。



Title

関数仕様

Function

フレームアドレス検索結果の取得

Function Name[S-]

CDC_GetFadSearch

No

6.7

 書 式
Sint32 CDC_GetFadSearch(Sint32 *bufno, Sint32 *spos, Sint32 *fad)
 入 力
なし
 出 力
bufno
:バッファ区画番号
spos
:セクタ位置
fad
:フレームアドレス
 関数値
エラーコードを返します。
 終了フラグ
ESELフラグ(チェックだけしている)
 機 能
フレームアドレス検索の実行結果(初期値は全て0)を取得します。
前回の検索結果は、次に検索(CDC_ExeFadSearch)を実行するまで保持されます。

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