Reference Manual

Turbo PMAC/PMAC2 Software Reference
Turbo PMAC On-line Command Specification 307
DEFINE GATHER
Function: Create a data gathering buffer.
Scope: Global
Syntax: DEFINE GATHER [{constant}]
DEF GAT [{constant}]
where:
{constant} is a positive integer representing the number of words of memory to be reserved for
the buffer
This command reserves space in Turbo PMAC’s memory or in DPRAM depending upon the setting of
I5000 for the data gathering buffer and prepares it for collecting data at the beginning of the buffer. If a
data gathering buffer already exists, its contents are not erased but the Data Gather Buffer Storage address
(Y:$003120) is reinitialized to the Data Gather Buffer Start address (X:$003120) and the LIST
GATHER command will no longer function. Data collection will again start at the beginning of the buffer
when the command GATHER is issued.
If Data Gathering is in progress (an ENDGATHER command has not been issued and the gather buffer has
not been filled up) Turbo PMAC will report an error on receipt of this command.
The optional {constant} specifies the number of long words to be reserved for the data gathering
buffer, leaving the remainder of Turbo PMAC's memory available for other buffers such as motion and
PLC programs. If {constant} is not specified, all of Turbo PMAC's unused buffer memory is
reserved for data gathering. Until this buffer is deleted (with the DELETE GATHER command), no new
motion or PLC programs may be entered into Turbo PMAC.
Note:
If I5000 = 2 or 3 the {size} requested in the DEFINE GATHER {size}
command refers to a DPRAM long word (32-bits). If the {size} is smaller than
required to hold an even multiple of the requested data, the actual data storage will
go beyond the requested {size} to the next higher multiple of memory words
required to hold the data. For example, if gathering one 24-bit value and one 48-
bit value, 3 DPRAM long words of memory is needed. If the {size} specified is
4000 words (not a multiple of 3), the actual storage size will be 4002 words (the
next higher multiple of 3).
The number of long words of unused buffer memory can be found by issuing the SIZE command.
Example:
DEFINE GATHER
DEFINE GATHER 1000
See Also:
I-variables I5000 I5051
On-line commands GATHER, DELETE GATHER, <CTRL-G>, SIZE
DEFINE LOOKAHEAD
Function: Create a lookahead buffer
Scope: Coordinate-system specific
Syntax: DEFINE LOOKAHEAD {constant},{constant}
DEF LOOK {constant},{constant}
where:
the first {constant} is a positive integer representing the number of move segments that can be
stored in the buffer;