RTC6 boards
Doc. Rev. 1.0.21 en-US
6 Developing RTC6-User Programs
111
Alternating List Changes
Another way to achieve continuous command output
is by alternatingly repeating output of the two lists.
To do so, start_loop must be called. This causes a
continuous, automatic and alternatingly repeating
processing of both lists, provided both lists are
finished each with set_end_of_list.
The alternating processing repeats until quit_loop is
called. quit_loop terminates continuous processing
as soon as the current list is finished.
The currently non-active list can be newly reloaded
even as the other list is processed. This allows
continuous alternating output of two lists with not
only fixed content, but also constantly new content.
Notes
• The commands for starting a one-time automatic
list change and start_loop to start an alternating
list change can be called at any point in time.
However, they do not take effect until the next
set_end_of_list is reached.
• When loading a list while another is being
processed, make sure no still-needed commands
are thereby overwritten. Useful here is load_list,
which only starts loading a list if it is currently not
in use or already has been processed, see
Chapter 6.4.1 ”Loading Lists”, page 105.
• Moreover, the currently new list should have
made a certain amount of loading progress
before the list change occurs.
The input pointer should always be adequately
ahead of the output pointer (because the PCI
transfer of the list commands is buffered, see
Chapter 6.4.1 ”Loading Lists”, page 105, and so-
called short list commands can be used, see
Chapter 6.1.2 ”Control Commands and
List Commands”, page 94).
Otherwise, “old” commands might be
unintentionally executed.
• The RTC6 PCIe Board does not support the
RTC4 circular queue mode, see Chapter 6.5.4
”RTC4-Circular Queue Mode”, page 121.
However, this operating mode can also be
effectively replaced using an alternating list
change and load_list described above.