Return to previous page | Return to menu | Go to next page


void
Other functions

slDMAXCopy

Block transfer using CPUDMA

Format

void slDMAXCopy(src , dst , cnt , mode)
void *src ;
void *dst ;
Uint32 cnt ;
Uint16 mode ;

Parameter

src Start address of transfer source memory area
dst Start address of the destination memory area
cnt Block transfer amount (bytes)
mode Transfer mode flag

Function

Block transfer is performed using the DMA built into the CPU.
The parameter “cnt” specifies how many bytes are transferred.
The parameter “mode” specifies what to do with the transfer source, what to do with the transfer destination, and what to do with the transfer unit.
The cache is initialized when transfer to the cache area is performed.

Return value

None

Remarks

The function “slDMAXCopy” can specify how to move the pointer of the function “slDMACopy”. The value assigned to the parameter “mode” is as follows.

Example of use)
(1) The transfer source is fixed, the transfer destination is advanced, and transfer is performed in word units.
   slDMAXCopy(src , dst , cnt , Sfix_Dinc_Word) ;
   Used when reading from a specific port or filling the memory with the same data.
(2) Advance the transfer source and transfer in bytes while returning the transfer destination.
   slDMAXCopy(src , dst , cnt , Sinc_Ddec_Byte) ;
   Used when transferring data in reverse order.
Other operations are the same as the function “slDMACopy”.

Reference: Chapter 9 Controller Input

slDMAXCopy


Return to previous page | Return to menu | Go to next page