When using external storage, verify the restrictions identified below.5.6.3 Restrictions on External Storage Usage
For Device Addresses, only the LS Area and USR Area (Extended User Area) can be used.
The temporary addresses of D-Scripts and Global D-Scripts are managed independently from the temporary address of Extended Scripts. Therefore, changes made to the temporary addresses of D-Scripts and Global D-Scripts are not reflected in the temporary address of Extended Scripts.
You can call user-defined functions created with D-Script/Global D-Script, but if you access a device address outside the range of the internal device in the function, it may not operate normally. Also, when transferred (during the creation of data for the display unit), user-defined functions are created independently for D-Scripts, Global D-Scripts, and Extended Scripts.
When calling a function from a function, the maximum number of nested levels is 9.
Up to 254 functions can be called. (The number of functions available with "Call" is 254.)
Extended Script does not affect the tag count.
Functions (for example string operations) supported only by Extended Script, do not operate when called with D-Script or Global D-Script.
The available data format is Bin. BCD data format is disabled.
The size of the Send buffer is 2048 bytes, while the Receive buffer is 8192 bytes. The ER signal (output) and RS signal (output) are turned OFF after at least 80% of the Receive buffer is full of received data.
D-Script/Global D-Script and Extended Script cannot be selected simultaneously. Note the combinations listed in the table below.
Extended SIO Setting |
D-Script/ Global D-Script Extended SIO function for Extended Script |
Extended SIO function for Extended Script |
---|---|---|
D-Script/Global D-Script |
O: Operation possible |
X: Will not operate |
Extended Script |
X: Will not operate |
O: Operation possible |
Notational conventions for the character string setting
When using character strings with "_strset ( )" and other functions, enclose the character string in double quotation marks ("). To display double quotation marks in the character strings, append the "\" symbol and express as [\"]. As there is no way to represent "\" using a single symbol, use a character code expression such as strset(databuf0,92).
Example:
"ABC\"DEF"→ABC"DEF
"ABC\DEF"→ABC\DEF
"ABC\\"DEF"→ABC\"DEF
"ABC\\DEF"→ABC\\DEF
For functions where a negative number is entered for an argument that does not accept negative numbers*1, the entered number operates as unsigned*2.
The size of the dedicated Extended SIO buffers databuf0, databuf1, databuf2, and databuf3 are all 1 KB.
There is no differenciation between upper and lower case for text in the parameters.
In an Extended Script, when using a device address where you define the access type, the instructions and operators you can use are as follows.
Offset Address
Addition (+), Subtraction (-), Modulus (%), Multiplication (*), Division (/), and Assignment (=)
You cannot use the following characters in folder or file names. They will cause an error.
: , = + / " [ ] | < > ? [Space]
However, you also cannot use the following characters in the Copy File function.
: , = + / " [ ] | < > ? ~ * \
The following restrictions apply to CF, SD, and USB file operations.
You can only use the 8.3 format (8 characters for the file name, the period, and 3 characters for the extension) for the file name.
To set a root folder, specify " " (empty string) as the folder name.
What to Be Careful of When Reading the Same Device Address in the Same Extended Script
Even when the same device address is used in the same extended script, values read from the device address may differ depending on the processing timing of extended scripts.
To avoid this situation, please program scripts to temporarily store data in internal devices or temporary addresses.
Example:
When Using USR Area
[w:[#INTERNAL]USR20000]=[w:[#MEMLINK]0100]
[w:[#INTERNAL]USR00000]=[w:[#INTERNAL]USR20000]
[w:[#INTERNAL]USR00001]=[w:[#INTERNAL]USR20000]
When Using Temporary Address
[t:0000]=[w:[#MEMLINK]0100]
[w:[#INTERNAL]USR00000]=[t:0000]
[w:[#INTERNAL]USR00001]=[t:0000]
Built-in functions will not be affected by changes in argument values during script execution. However, the following functions may be affected.
Please program scripts not to change argument values while executing scripts on these functions.
memring
_memshift
_memsearch