RTC
®
5 PC Interface Board
Rev. 1.9 e
10 Commands And Functions
243
innovators for industry
Ctrl Command config_list
Function
Configures list memory, therefore allocates memory areas for lists
Call
config_list( Mem1, Mem2 )
Parameters
Mem1
desired memory size for “List 1” (as an unsigned 32-bit value)
Mem2
desired memory size for “List 2” (as an unsigned 32-bit value)
Comments
• The RTC
®
5’s list memory contains 2
20
storage positions that can be divided into three
areas (lists) via
config_list
. The sizes of “List 1” and “List 2” are specified through
parameters
Mem1
and
Mem2
.
config_list
automatically assigns to the protected area
(“List 3”) all remaining memory not assigned to “List 1” or “List 2”.
• The following rules apply to the parameters
Mem1
and
Mem2
(invalid values will be auto-
matically corrected in the specified order):
–
Mem1
> 0 (“List 1” cannot be empty)
Mem1
= 0 will be corrected to
Mem1
= 1.
–
Mem1
2
20
(“List 1” can contain a maximum of 2
20
storage positions)
Mem1
> 2
20
will be corrected to
Mem1
= 2
20
–
Mem1
= ”–1” will be interpreted as
Mem1
= (2
32
–1) and corrected to
Mem1
= 2
20
.
Example: With
config_list( –1, x )
where
x
is any value (also
x
= –1), “List 1” will
be automatically assigned the entire list memory (
Mem1
= 2
20
,
Mem2
= 0, no memory
for “List 3”).
–
Mem2
2
20
–
Mem1
(“List 2” can maximally receive the “rest” of list memory)
Mem2
= 0 is allowed.
Mem2
> 2
20
–
Mem1
will be corrected to
Mem2
= 2
20
–
Mem1
.
–
Mem2
= ”–1” will be interpreted as
Mem2
= (2
32
–1) and corrected to
Mem2
= 2
20
–
Mem1
.
Example: With
config_list( Mem1, –1 )
, “List 2” will automatically be assigned the
“rest” of list memory (
Mem2
= 2
20
–
Mem1
, no memory for “List 3”).
– Storage positions for “List 3”: 2
20
–
Mem1
–
Mem2
• By default, the RTC
®
5’s list buffer area is preconfigured so that “List 1” and “List 2” can
each accept 4000 list commands (
Mem1
=
Mem2
= 4000). The protected “List 3” then
owns the remaining 1040576 of the 2
20
storage positions.
• The
config_list
command is ignored (
RTC5_BUSY
) if the
board’s BUSY status or PAUSED status is currently set (list is being processed or has been
halted via
).
• Configuration via
config_list
does not alter the contents of list memory. Repeating the
call with differing parameters is therefore nondestructive. However, after a configura-
tion change, previously loaded list commands will be processed in accordance with the
new configuration. Moreover, a configuration change could in some circumstances
affect the input pointer (if, prior to the reconfiguration, it pointed to a memory position
which was assigned to “List 3” by the configuration change, then it will be shifted to
the beginning of “List 1”) or affect a previously started automatic list change. This
should be taken into account when further loading or executing command lists. Read
the notes in the section
"Configuring the List Memory", page 70
• If you don’t know the current configuration data for list memory (
Mem1
and
Mem2
), you
can find out after
load_list( ListNo, 0 )
or
set_start_list_pos( ListNo, 0 )
by
using the command
(if the board changed “ownership”
).
RTC
®
4
RTC
®
5 new command
References