GDSX (Extended General Device Support) Manual
Service Routines
Extended General Device Support (GDSX) Manual—529931-001
8-9
ADD^TRACE^DATA^INT
 CALL PUTLOCALPOOL (0, MBUF);
 END;
END;
If the global sr^misc^trace flag (which is the same as trace^control^flags[1].<9>, as 
defined in the common^data section of DCCBDECS), is set to 1 before the preceding 
code is executed, in addition to the preceding user-defined entries, TSCODE 
generates a standard trace entry with a type of sr^misc^req whenever a user exit is 
called. For more information on these globals, see the tables in Tracing GDSX on 
page 2-80.
ADD^TRACE^DATA^INT
This procedure is exactly like ADD^TRACE^DATA, except that the datai parameter 
is an INT:value, containing the address where data copying should begin. 
ALLOCATEIOCB
This procedure allocates an I/O control block (IOCB) for an I/O request. Either an 
IOCB address or 0 is returned to the calling task. You must deallocate the IOCB after 
the I/O is completed. If IOCBs are not deallocated after use, they are inaccessible for 
the remainder of the life of the GDSX process.
A task that allocates IOCBs should manage them with a linked list in global memory, 
so that if the task is stopped unexpectedly, code in the USER^STOP user exit can 
deallocate the IOCBs. 
iocb-address returned value
INT(32):value
is an IOCB address if an IOCB was allocated; otherwise this variable is set to zero.
time-out input
INT(32):value
is the number of ticks (10 ms) to wait for an IOCB to become available. If no 
time-out parameter is supplied, the value of the IOCBWAITTIME configuration 
parameter is used. IOCBWAITTIME has a default of 1,000 ticks.
Consideration
This procedure may cause the calling task to be suspended.
iocb-address := ALLOCATEIOCB ( [ time-out ] ); ! 
i










