X25AM Programming Manual

PTP Applications
X25AM Programming Manual527201-001
3-67
Text of TAL Example
CALL COMM^ERROR (ERROR);
END;
END;
!-------------------------------------------------------------------------
! CONNECT LINE (PLACE OR ACCEPT CALL) PROCEDURE
!-------------------------------------------------------------------------
PROC CONNECT^LINE;
BEGIN
INT ERROR;
STRING CALL^[0:3] := ["CALL"],
WAIT^[0:3] := ["WAIT"];
REPROMPT:
TERM^BUFF ':=' ["ENTER <CALL> TO PLACE A CALL OR <WAIT> TO WAIT "];
TERM^BUFF[24] ':=' ["FOR A CALL ? "];
CALL WRITEREAD (TERM^FILE, TERM^BUFF, 70, MAX^TERM^READ);
IF <> THEN CALL DEBUG;
CALL AWAITIO (TERM^FILE,,,,-1D);
IF <> THEN CALL DEBUG;
IF TERM^BUFFS = CALL^ FOR 4 THEN BEGIN ! DO A CONTROL 17
CALL CONTROL (COMM^FILE, 17); ! PLACE A CALL TO THE REMOTE
SUBDEVICE.
! CHECK THE LISTING HEAD FOR CUD PARAMETERS
! WHICH HAVE TO BE USED WHEN DEFINING THE
! SUBDEVICE AT BOTH ENDS.
IF <> THEN BEGIN ! CALL CONTROL TO PLACE A CALL TO THE
CALL FILEINFO (COMM^FILE, ERROR); ! REMOTE SUBDEVICE, CHECK
CONDITION
CALL COMM^ERROR (ERROR); ! CODE FOR ERRORS
CALL^SENT^FLAG := 0; ! FLAG THE CALL DID NOT CONNECT
END
ELSE BEGIN ! NO ERRORS
CALL^SENT^FLAG := 1; ! THE CALL REQUEST WAS SENT
CALL AWAITIO (COMM^FILE,,,,-1D); ! COMPLETE THE CONTROL WITH A
CALL
IF <> THEN BEGIN ! TO AWAITIO & CHECK FOR ERRORS
CALL FILEINFO (COMM^FILE, ERROR);
CALL COMM^ERROR (ERROR);
END