*DECK HTCHAR
USETEXT NIPDEF
USETEXT SUPMSG
USETEXT ACNB
USETEXT NCNB
USETEXT AHEADER
USETEXT AT
USETEXT PT
USETEXT PARAMS
PRGM HTCHAR; # SEND TCH/TCHAR TO APPLICATION #
STARTIMS;
#
*1DC HTCHAR
* 1. PROC NAME AUTHOR DATE
* HTCHAR C. BITTNER 82/06/01
*
* 2. FUNCTIONAL DESCRIPTION
* SEND TCH/TCHAR (TERMINAL CHARACTERISTICS CHANGED SM)
* TO APPLICATION.
*
* 3. METHOD USED
* ALLOCATE BUFFER FOR MESSAGE
* SET UP APPLICATION BLOCK HEADER
* SET UP THE TEXT FOR TCH/TCHAR SM
* QUEUE SM ON APPLICATION-S ACB
*
* 4. ENTRY PARAMETERS
* PARAMS1 - ACNB ADDRESS
*
* 5. EXIT PARAMETERS
* NONE
*
* 6. COMDECKS CALLED AND SYMPL TEXTS USED
* NIPDEF SUPMSG ACNB
* NCNB AHEADER AT
* PT PARAMS OSSIZE
*
* 7. ROUTINES AND OVERLAYS CALLED
* BLINK - LINK MESSAGE ON DATA RING
* MGETS - ALLOCATE BUFFER
* OSCHAPP - SCHEDULE APPLICATION
* XTRACE - TRACE PROCEDURE CALL
*
* 8. DAYFILE MESSAGES AND OTHER IMPORTANT INFORMATION
* THIS IS A SECONDARY OVERLAY CALLED BY HCSTTP.
* W A R N I N G - THIS PROGRAM CANNOT EXCEED THE SECONDARY
*CALL OSSIZE
#
STOPIMS;
#
PARAMS1 - ACNB ADDRESS
#
#
EXTERNAL VARIABLES
#
XREF
BEGIN
PROC BLINK; # QUEUE MESSAGE ON APPLICATION-S ACB #
PROC MGETS; # ALLOCATE EMPTY BUFFER #
PROC OSCHAPP; # SCHEDULE APPLICATION #
PROC XTRACE; # RECORD PROCEDURE CALL #
LABEL RJMAIN; # RETURN ADDRESS IN OVLCALL #
END
#
INTERNAL VARIABLES
#
ITEM BUFADDR; # BUFFER FOR SM #
#**********************************************************************#
BEGIN
CONTROL IFEQ DEBUG,1;
XTRACE("TCHAR");
CONTROL FI;
#
GET BUFFER FOR TCH/TCHAR SM
#
MGETS(LTCH + BLKHSIZE + ABHSIZE,BUFADDR,TRUE);
#
SET UP APPLICATION BLOCK HEADER
#
P<AHEADER> = BUFADDR + BLKHSIZE; # BASE ABH #
ABHABT[0] = APPCMD; # BLOCK TYPE #
ABHACT[0] = CT60TRANS; # CHARACTER TYPE-TRANSPARENT #
ABHTLC[0] = LTCH; # TEXT LENGTH #
#
SET UP TEXT FOR TCH/TCHAR
#
P<SUPMSG> = BUFADDR + BLKHSIZE + ABHSIZE; # FWA OF TEXT #
PFCSFC[0] = TCHTCH; # SET FUNCTION CODE #
P<ACNB> = PARAMS1; # ACNB ADDRESS #
P<NCNB> = ACNBNCNB[0]; # NCNB TWIN POINTER #
ACNBTC[0] = NCNBTC[0]; # TERMINAL CLASS #
TCHACN[0] = ACNBACN[0]; # APPLICATION CONNECTION NUMBER #
TCHTCL[0] = NCNBTC[0]; # TERMINAL CLASS #
TCHPW[0] = NCNBPW[0]; # PAGE WIDTH #
TCHPL[0] = NCNBPL[0]; # PAGE LENGTH #
#
QUEUE TCH/TCHAR ON APPLICATION-S ACB
#
BLINK(BUFADDR,ATACBA[ACNBAN[0]]); # QUEUE MSG ON APP-S ACB #
OSCHAPP(ATACBA[ACNBAN[0]]); # SCHEDULE APPLICATION #
GOTO RJMAIN; # RETURN TO CALLING PROGRAM #
END
TERM