RTC
®
5 PC Interface Board
Rev. 1.9 e
10 Commands And Functions
257
innovators for industry
Ctrl Command execute_list_pos
Function
starts list execution (“List 1” or “List 2”) at the specified position.
Call
execute_list_pos( ListNo, Pos )
Parameters
ListNo
number of the list to be executed as an unsigned 32-bit value;
permissible values: [uneven: “List 1“, even: “List 2“]
Pos
address of the first list command to be executed (offset relative to the start of
the respective list) as an unsigned 32-bit value; allowed range: [0 … (2
20
–1)]
Comments
• The command will be ignored (
return value =
RTC5_BUSY
) if the board’s BUSY
status or PAUSED status is currently set (list is being processed or has been halted via
). If the board’s INTERNAL-BUSY status is currently set,
execute_list_pos
is only executed with a delay (after INTERNAL-BUSY has been reset
again). No checks are performed to determine if a list is currently being loaded. During
list processing, the other list (or even the same list) can be simultaneously reloaded (also
see
).
• Programs in the protected area (“List 3”) can’t be directly executed via
execute_list_pos
. They can only be called from a list (“List 1” or “List 2”) as a subrou-
tine. Alternatively, the corresponding area can be assigned via
to “List 1” or
“List 2”.
• Uneven
ListNo
values cause “List 1” to be executed; otherwise “List 2” will be
executed. This allows automatically generated continuous list changing via an incre-
mented count.
• If “List 2” has not been assigned memory (
Mem2
= 0, see
) then “List 1“ will
be opened.
• If
Pos
is specified as being larger than the memory area of the respective list (
Pos
>
Mem1
or
Pos
>
Mem2
), then
Pos
will be set to 0.
• The BUSY list status of the selected list is set and the BUSY list status of the other corre-
sponding list is reset (see
). The BUSY list execution status (see
is set.
• Execution stops when a
command is encountered. If the end of a list
area is reached without encountering a
command, then execution will
continue at the beginning of the same list area instead of with the next list. The output
pointer will remain in the active list area unless a
command was
command was previously issued.
For both lists to be treated as a single list, you must set the configuration appropriately:
e.g.
( Mem1+Mem2, 0 )
.
• If a home jump (defined with
or
) was executed via
execute_list_pos
will lead to a corresponding home return (the
INTERNAL-BUSY status is set while the home return is executed).
• The
execute_list_pos
command triggers a flush of the list input buffer (see
even if the start was unsuccessful.
•
execute_list_pos
also covers the specialized variants
and
.
RTC
®
4
RTC
®
5 new command
References
,