CRE Programmer's Guide
String and Memory Block Functions
Common Run-Time Environment (CRE) Programmer’s Guide—528146-004
8-37
Memory_Move
Memory_Move
The Memory_Move functions move a block of memory. These functions are not 
available in the native CRE library. 
dest
is a pointer to the destination to which the block is moved.
source
is a pointer to the beginning of the block to move.
num_bytes
specifies the number of bytes to move.
Return Value
The Memory_Move functions return the address of the destination block, @dest.
Considerations
The Memory_Move functions ensure that data is not lost, even if the source and 
destination blocks overlap.
Example
STRING .EXT dst := ( 4D '<<' 17) + 65536D;
STRING .EXT src := ( 4D '<<' 17);
! move first 64k bytes of extended segment
CALL RTL_Memory_Move_(dst, src, 65536D);
INT PROC RTL_Memory_Move_( dest, source, num_bytes );
 STRING .dest; ! out
 STRING .source; ! in
 INT num_bytes; ! in TNS 
only
INT(32) PROC RTL_Memory_MoveX_( dest, source, num_bytes );
 STRING .EXT dest; ! out
 STRING .EXT source; ! in
 INT(32) num_bytes; ! in TNS 
only










