English
PROGRAMMER'S GUIDEファイルシステムライブラリ
戻る進む
ファイルシステムライブラリ

8.関数仕様-5


8.5 読み込みパラメータ設定




Title

関数仕様

Function

取り出しモードの設定(常駐/破棄)

Function Name

GFS_SetGmode

No
5.1

 書 式
Sint32 GFS_SetGmode(GfsHn gfs, Sint32 gmode)
 入 力
gfs
:ファイルハンドル
gmode
:取り出しモード(GFS_GMODE_〜)
 出 力
なし
 関数値
設定前の取り出しモード。エラーの場合は負のエラーコード。
 機 能
取り出しモードを設定します。



Title

関数仕様

Function

転送モードの設定
(ソフトウェア/DMAなど)

Function Name

GFS_SetTmode

No

5.2

 書 式
Sint32 GFS_SetTmode(GfsHn gfs, Sint32 tmode)
 入 力
gfs
:ファイルハンドル
tmode
:転送モード(GFS_TMODE_〜)
 出 力
なし
 関数値
設定前の転送モード。エラーの場合は負のエラーコード。
 機 能
CDバッファからの転送方法を設定します。
 備 考
転送モードがGFS_TMODE_SCUに設定されていても、転送先アドレスが次の空間に含まれる場合は
CPUによるソフトウェア転送が強制的に行われます。
   WORKRAM-L空間   00200000H 〜 002FFFFFH
   A-Bus空間       02000000H 〜 058FFFFFH



Title

関数仕様

Function

CDバッファへの読み込み量の設定

Function Name

GFS_SetReadPara

No

5.3

 書 式
Sint32 GFS_SetReadPara(GfsHn gfs, Sint32 cdrsize)
 入 力
gfs
:ファイルハンドル
cdrsize
:CDバッファへの1回の最大読み込み量(単位:セクタ)
 出 力
なし
 関数値
設定前の読み込み量。エラーの場合は負のエラーコード。
 機 能
CDバッファヘの1回の読み込み量の最大値を設定します。



Title

関数仕様

Function

CDバッファからの転送量の設定

Function Name

GFS_SetTransPara

No

5.4

 書 式
Sint32 GFS_SetTransPara(GfsHn gfs, Sint32 tsize)
 入 力
gfs
:ファイルハンドル
tsize
:指定された領域に1回に転送される量(単位:セクタ)
 出 力
なし
 関数値
設定前の転送量。エラーの場合は負のエラーコード。
 機 能
1回の取り出し処理で、転送先の領域に転送されるデータ量を設定します。
[備考]
  DOSファイルの取り出しパラメータは処理の都合上、1度に1セクタしか転送できませ
ん。取り出しパラメータを1以外の値に設定しても無効です。



Title

関数仕様

Function

転送関数の登録

Function Name

GFS_SetTrFunc

No

5.5

 書 式
void GFS_SetTrFunc(GfsHn gfs, GfsTrFunc func)
 入 力
gfs
:ファイルハンドル
func
:転送関数
 出 力
なし
 関数値
なし
 機 能
指定したファイルに対して、転送関数を登録します。
登録関数は、ファイルの転送処理時に呼び出されます。
 備 考

  1. 登録関数は以下の形式です。
    Sint32 (*GfsTrFunc)(GfsHn gfs, Sint32 nsct)
    gfs
    :ファイルハンドル
    nsct
    :転送可能セクタ数

  2. 転送関数は、最大nsctセクタのデータを転送することができます。

  3. 関数値には、実際に転送したセクタ数を返します。DMAなどにより転送関数終了時点で転送中の場合は、(-1)を返す必要があります。

  例
/* 転送関数の例 */
Uint32 read_buf[BUFSIZE];
Sint32 transFunc(GfsHn gfs, Sint32 nsct)
{
    Uint32 *ptr;
    Sint32 dadr;
    Sint32 i;
    ptr=GFS_StartTrans(gfs,&dadr);
    for (i = 0 ; i < 2048 * nsct; i++){
       read_buf[i] = *ptr;
       ptr += dadr;
    }
    return(nsct);
}



Title

関数仕様

Function

転送関数における転送開始

Function Name

GFS_StartTrans

No

5.6

 書 式
Uint32 *GFS_StartTrans(GfsHn gfs,Sint32 *dadr)
 入 力
gfs
:ファイルハンドル
dadr
:1ロングワード転送するごとの転送元アドレスの変化分。
 出 力
なし
 関数値
転送元アドレス
 機 能
転送関数においてデータの転送処理を開始します。

戻る進む
PROGRAMMER'S GUIDEファイルシステムライブラリ
Copyright SEGA ENTERPRISES, LTD., 1997