*DECK NTCNTAR
USETEXT NIPDEF
USETEXT AHEADER
USETEXT LLCB
USETEXT NCNB
USETEXT PARAMS
USETEXT SUPMSG
PRGM NTCNTAR;
STARTIMS;
#
*1DC NTCNTAR
*
* 1. PROC NAME AUTHOR DATE
* NTCNTAR C. BITTNER 82/02/01
*
* 2. FUNCTIONAL DESCRIPTION
* SEND TCN/TA/R TO CCP
*
* 3. METHOD USED
* ALLOCATE BUFFER FOR TCN/TA/R MESSAGE
* FORMAT APPLICATION BLOCK HEADER
* SET UP TCN/TA/R MESSAGE
* LINK MESSAGE ON PIP OUTBOUND CHAIN
*
* 4. ENTRY PARAMETERS
* PARAMS1 - NCNB ADDRESS
* PARAMS2 - REASON CODE FOR TCNRC
*
* 5. EXIT PARAMETERS
* NONE
*
* 6. COMDECKS CALLED AND SYMPL TEXTS USED
* NIPDEF AHEADER LLCB
* NCNB PARAMS SUPMSG
* OSSIZE
*
* 7. ROUTINES CALLED
* LOCLLCB - LOCATE LLCB
* MGETS - ALLOCATE EMPTY BUFFER
* NFOB - LINK MESSAGE ON PIP OUTBOUND CHAIN
* XTRACE - TRACE PROCEDURE CALL
*
* 8. DAYFILE MESSAGES AND OTHER IMPORTANT INFORMATION
* THIS IS A SECONDARY OVERLAY CALLED BY NCSTTP.
* W A R N I N G - THIS PROGRAM CANNOT EXCEED THE SECONDARY
*CALL OSSIZE
*
#
STOPIMS;
#
EXTERNAL VARIABLES
#
XREF
BEGIN
PROC LOCLLCB; # LOCATE LLCB #
PROC MGETS; # ALLOCATE EMPTY BUFFER #
PROC NFOB; # LINK MSG ON PIP OUTBOUND CHAIN #
PROC XTRACE; # TRACE PROCEDURE CALL #
LABEL RJMAIN; # RETURN ADDRESS IN OVLCALL #
END
#
INTERNAL VARIABLES
#
ITEM BUFADDR; # SM BUFFER ADDRESS #
#**********************************************************************#
BEGIN
CONTROL IFEQ DEBUG,1;
XTRACE("CNTAR");
CONTROL FI;
# GET BUFFER TO HOLD TCN/TA/R #
MGETS(NTCN + BLKHSIZE + ABHSIZE,BUFADDR,TRUE);
# SET UP APPLICATION BLOCK HEADER #
P<AHEADER> = BUFADDR + BLKHSIZE; # ADDR TO HOLD ABH #
ABHABT[0] = APPCMD; # BLOCK TYPE #
ABHACT[0] = CT8ASCII; # CHARACTER TYPE #
ABHTLC[0] = LTCN; # LENGTH OF TCN/TA/R #
# SET UP TCN/TA/R #
P<SUPMSG> = BUFADDR + BLKHSIZE + ABHSIZE; # FWA OF TEXT #
P<SMNIP> = P<SUPMSG>;
PFCSFC[0] = TCNTA;
TCNRC[0] = PARAMS2; # REASON CODE FOR THE TCNTA TO CCP #
P<NCNB> = PARAMS1;
TCNCN[0] = NCNBCN[0]; # CONNECTION NUMBER #
LOCLLCB(NCNBHN[0],NCNBTN[0],P<LLCB>);
# LINK MESSAGE TO PIP OUTBOUND CHAIN #
NFOB(BUFADDR,P<LLCB>);
GOTO RJMAIN; # RETURN TO CALLING PROGRAM #
END
TERM