one | Title | Function | Function name | No |
gfs | : file handle |
gmode | : Retrieval mode (GFS_GMODE_〜) |
one | Title | Function | Function name | No |
gfs | : file handle |
tmode | : Transfer mode (GFS_TMODE_~) |
Even if the transfer mode is set to GFS_TMODE_SCU, software transfer by the CPU will be forced if the transfer destination address is included in the following space. WORKRAM-L space 00200000H ~ 002FFFFFH A-Bus space 02000000H ~ 058FFFFFH
one | Title | Function | Function name | No |
gfs | : file handle |
cdrsize | : Maximum amount of one read into CD buffer (unit: sector) |
one | Title | Function | Function name | No |
gfs | : file handle |
tsize | : Amount transferred to the specified area at one time (unit: sector) |
[remarks] Due to processing reasons, the DOS file extraction parameters can only transfer one sector at a time. Setting the retrieval parameter to a value other than 1 has no effect.
one | Title | Function | Function name | No |
gfs | : file handle |
func | : transfer function |
The registration function has the following format:
Sint32 (*GfsTrFunc)(GfsHn gfs, Sint32 nsct)
gfs | : file handle |
nsct | : Number of transferable sectors |
The transfer function can transfer data up to nsct sectors.
The function value returns the number of sectors actually transferred. If a transfer is in progress at the end of the transfer function due to DMA, etc., it is necessary to return (-1).
/* Transfer function example */ 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); }
one | Title | Function | Function name | No |
gfs | : file handle |
dadr | : The amount of change in the transfer source address for each longword transfer. |