cdc:nos2.source:nam5871:hdcstmr
Table of Contents
HDCSTMR
Table Of Contents
- [00012] PRGM HDCSTMR
- [00077] PROC OVLCALL
- [00078] PROC XTRACE
Source Code
- HDCSTMR.txt
- *DECK HDCSTMR
- USETEXT ACB
- USETEXT ACNB
- USETEXT ACNT
- USETEXT NIPDEF
- USETEXT APPSTAT
- USETEXT OVERLAY
- USETEXT PARAMS
- USETEXT PT
- USETEXT SUPMSG
- USETEXT SYSTIME
- PRGM HDCSTMR; # PROCESS DC/STMR/R FROM APP #
- STARTIMS;
- #
- *1DC HDCSTMR
- *
- * 1. PROC NAME AUTHOR DATE
- * HDCSTMR E. GEE 85/11/22
- *
- * 2. FUNCTIONAL DESCRIPTION.
- * PROCESS DC/STMR/R SUPERVISORY MESSAGE FROM APPLICATION.
- *
- * 3. METHOD USED.
- * IF ACN WAS SPECIFIED (I.E. NONZERO),
- * UPDATE ACNB WITH TIMEOUT DATA.
- * ELSE (ACN WAS NOT SPECIFIED),
- * UPDATE ACB WITH TIMEOUT DATA.
- * LOOP THROUGH ALL CONNECTIONS UPDATING ACNB WITH TIMEOUT
- * DATA.
- *
- * 4. ENTRY PARAMETERS.
- * DCACN APPLICATION CONNECTION NUMBER
- * ACBADDR ACB ADDRESS
- * WLADDR WORKLIST ENTRY ADDRESS
- *
- * 5. EXIT PARAMETERS.
- * NONE
- *
- * 6. COMDECKS CALLED AND SYMPL TEXTS USED.
- * ACB APPLICATION CONTROL BLOCK TEMPLATE
- * ACNB APPLICATION CONNECTION BLOCK TEMPLATE
- * APPSTAT APPLICATION STATUS TABLE
- * ACNT APPLICATION CONNECTION TABLE TEMPLATE
- * NIPDEF CONSTANT DEFINITIONS
- * OVERLAY OVERLAY TABLE
- * PARAMS BUF FOR PASSING PARAMS TO/FROM SEC OVLY
- * PT POINTER TABLE PLUS MISC VARIABLES
- * SUPMSG SUPERVISORY MESSAGE TEMPLATE
- * SYSTIME SYSTEM TIME
- *
- * 7. ROUTINES AND OVERLAYS CALLED.
- * HLGLERR OVL FORM LOGICAL ERROR MESSAGE
- * OVLCALL LOAD AND EXECUTE OVERLAY
- * XTRACE RECORD PROCESSOR CALLS
- *
- * 8. DAYFILE MESSAGES AND OTHER IMPORTANT INFORMATION.
- * NONE
- *
- * THIS PROGRAM IS A PRIMARY OVERLAY LOADED BY SUBROUTINE OVLCALL.
- * WHEN EXECUTION HAS COMPLETED, A JUMP IS MADE TO LOCATION RJMAIN
- * TO RETURN TO THE CALLING PROGRAM.
- *
- * W A R N I N G - THIS PROGRAM CANNOT EXCEED THE PRIMARY
- * OVERLAY BUFFER SIZE MINUS 5 (560B WORDS).
- *
- * THIS OVERLAY IS CALLED BY HPPUT.
- *
- #
- STOPIMS;
- #
- EXTERNAL VARIABLES
- #
- XREF
- BEGIN
- PROC OVLCALL; # LOAD OVERLAY #
- PROC XTRACE; # TRACE CALLS #
- LABEL RJMAIN; # RETURN ADDRESS IN OVLCALL #
- END
- #
- INTERNAL VARIABLES
- #
- ITEM INDX; # LOOP VARIABLE #
- #**********************************************************************#
- BEGIN
- CONTROL IFEQ DEBUG,1;
- XTRACE("HDSTM") ;
- CONTROL FI;
- P<SUPMSG> = WLADDR + AIPHSIZE + ABHSIZE; # TEXT ADDRESS #
- P<ACB> = ACBADDR; # ADDRESS OF ACB #
- P<ACNT> = ACBACNT[0]; # ADDRESS OF ACNT TABLE #
- IF (DCTIME[0] NQ 0) OR # NONZERO TIME INTERVAL GIVEN #
- (DCPERMT[0] ) # PERMANENT CHANGE FLAG #
- THEN
- BEGIN
- IF DCACN[0] NQ 0 # ACN IS GIVEN #
- THEN # LOCATE THE ACNB #
- BEGIN
- P<ACNB> = ACNTACNB[DCACN[0] + ACNTHSIZE - ACNTMINACN[0]];
- SETTIMER = TRUE; # SET GLOBAL APP SPEC TIMER FLAG#
- ACNBTIMERP[0] = DCPERMT[0]; # SET TIMER PERMANENT CHG FLG #
- ACNBTIMERF[0] = TRUE; # SET APP SPECIFIED TIMER FLAG #
- ACNBTIMER[0] = DCTIME[0]; # APP SPECIFIED TIMEOUT VALUE #
- ACNBINACT[0] = RTSECS[0] + DCTIME[0]; # NEW TIME FOR FC/INAC#
- END
- ELSE # NO ACN SPECIFIED #
- BEGIN
- ACBTIMER[0] = DCTIME[0]; # APP SPECIFIED TIMEOUT VALUE #
- ACBTIMERP[0] = DCPERMT[0]; # SET PERMANENT TIMER CHG FLAG #
- FOR INDX = ACNTHSIZE STEP 1 UNTIL ACNTHCN[0] - ACNTMINACN[0]
- + ACNTHSIZE
- DO
- BEGIN
- P<ACNB> = ACNTACNB[INDX];
- IF P<ACNB> NQ 0 THEN
- BEGIN
- SETTIMER = TRUE; # SET GLOBAL APP SPEC TIMER FLG #
- ACNBTIMERP[0] = DCPERMT[0]; # SET PERMANENT TIMER CHG FLG#
- ACNBTIMERF[0] = TRUE; # SET APP SPECIFIED TIMER FLAG #
- ACNBTIMER[0] = DCTIME[0];# APP SPECIFIED TIMEOUT VALUE #
- ACNBINACT[0] = RTSECS[0] + DCTIME[0];# NEW TIME FOR FC/IN#
- END
- END
- END
- END
- GOTO RJMAIN; # RETURN TO CALLING PROGRAM #
- END
- TERM
cdc/nos2.source/nam5871/hdcstmr.txt ยท Last modified: 2023/08/05 17:22 by Site Administrator