GDSX (Extended General Device Support) Manual
Service Routines
Extended General Device Support (GDSX) Manual—529931-001
8-81
TCBADDR
When a task owns break and a break occurs, the -20 system message is routed to that
task by the pseudo-$RECEIVE file. It is the responsibility of the task to issue
^SETMODENOWAITs to restore the terminal to break access or normal access.
The Guardian break facility does not allow multiple openers in the same process to
pass break ownership back and forth. Therefore, only one task at a time within a
GDSX process may own break for a particular terminal. This may be ensured by
preconfiguring all terminals with the ASSOCIATIVE attribute set or by setting the
ASSOCIATIVE configuration parameter for the GDSX process itself.
Consideration
If GDSX is being run as a process pair, a task calling this procedure will be suspended
if during the execution of the procedure in TSCODE the checkpoint semaphore is not
obtained immediately.
The following condition code settings are valid:
TCBADDR
Given a task’s TCB number, this procedure returns the address of the TCB. If you do
not have the task’s TCB number, you may find it more efficient to obtain the TCB
address by means of the DCB that corresponds to the task. See the example for the
procedure WRITE^ITC^MESSAGE[X]
on page 8-90.
address
returned value
INT(32):value
is the returned address of the TCB. If task-number is less than 1 or greater than
the value of the MAXTASKS configuration parameter, address is equal to 0.
task-number input
INT:value
CALL TAKEBREAK
= CCE indicates that the task now owns break for its terminal.
< CCL indicates that an I/O error occurred on the SETPARAM 3 issued by
TSCODE to take break ownership. The error number can be obtained by calling
^FILEINFO. Error 99 is returned if the BREAKENABLED configuration
parameter was not equal to 1.
> CCG indicates that the calling task already owns break.
address := TCBADDR ( task-number ); !
i