Envoy Application Programming Manual

Table Of Contents
TINET Multipoint Supervisor Protocol
Envoy Application Programming Manual427159-001
8-9
Polling
The example above shows the following points:
The address list contains six entries.
The address list is defined as a STRING array so individual byte elements can be
initialized.
Each terminal address consists of four characters.
The first three entries (poll^count) constitute the poll list.
The last three entries (num^entries minus poll^count) constitute the select list.
Polling
Polling is initiated by calling the READ procedure. This subsection includes:
Polling Type on page 8-10
Polling Interval on page 8-15
Poll State on page 8-16
Nonresponding Terminal List on page 8-17
Example 8-2. Build an Address List
LITERAL addr^size = 2, ! address size in words.
num^entries = 6, ! number of address-list
! entries.
NUL = 0, ! ASCII NULL character.
EOT = 4, ! ASCII EOT character.
ENQ = 5, ! ASCII ENQ character.
poll^count = 3, ! number of poll-list entries.
poll^type = 0; ! specifies continuous polling.
STRING
.saddr^list[ 0 : addr^size * num^entries * 2 - 1] :=
! address list.
[ EOT, EOT, %040, ENQ, ! terminal 1 poll.
EOT, EOT, %041, ENQ, ! terminal 2 poll.
EOT, EOT, %042, ENQ, ! terminal 3 poll.
EOT, %060, NUL, NUL, ! terminal 1 select.
EOT, %061, NUL, NUL, ! terminal 2 select.
EOT, %062, NUL, NUL ] ; ! terminal 3 select.
INT .addr^list := @saddr^list ’>>’ 1; ! redefine as INT
! array.
CALL DEFINELIST (linefnum,addr^list,addr^size,num^entries,
poll^count,poll^type);
IF < THEN ...