Summary
Each byte of string data stored in the offset of
the data buffer is copied to the LS area according to the number of strings.
Stores Parameter 4 (Characters to Copy) characters of data from Parameter
3 (Copy-From Offset Value) of the contents of Parameter 2 (Copy-From Data
Buffer) in Parameter 1 (Copy-To Address).
Format
_dlcopy (Copy-To Address, Copy-From Data Buffer,
Copy-From Offset Value, Number of Copied Characters)
Parameter 1: Internal Device
Parameter 2: Data Buffer
Parameter 3: Numeric value, Internal Device, Temporary address (The valid range for Parameter 3 is from 0 to 1024.)
Parameter 4: Numeric value, Internal Device, Temporary address (The valid range for Parameter 4 is from 1 to 1024.)
Example expression 1:
_dlcopy ([w:[#INTERNAL]LS0100], databuf0, 2, 4)
4 bytes of data retrieved from "offset 2" of "databuf0" are written into LS0100 to LS0103. The data is written to the LS area in byte units.
1 byte of data is read out from the data buffer and written into the LS area. That means only the bottom 8 bits (1 byte) of the internal device is used. The significant 8 bits (1 byte) will be cleared to 0.
When the specified value [source offset value + number of characters to be copied] is greater than the data buffer size, error number 3 (string extraction error) of the string error status [e: STR_ERR_STAT] is issued.
The processing is terminated when an error occurs and returns to the beginning of the Main function. (If the command comes while a function is running, it returns to the line that called that function.)