User Tools

Site Tools


cdc:nos2.source:nam5871:hdcstmr

HDCSTMR

Table Of Contents

  • [00012] PRGM HDCSTMR
  • [00077] PROC OVLCALL
  • [00078] PROC XTRACE

Source Code

HDCSTMR.txt
  1. *DECK HDCSTMR
  2. USETEXT ACB
  3. USETEXT ACNB
  4. USETEXT ACNT
  5. USETEXT NIPDEF
  6. USETEXT APPSTAT
  7. USETEXT OVERLAY
  8. USETEXT PARAMS
  9. USETEXT PT
  10. USETEXT SUPMSG
  11. USETEXT SYSTIME
  12. PRGM HDCSTMR; # PROCESS DC/STMR/R FROM APP #
  13.  
  14.  
  15. STARTIMS;
  16. #
  17. *1DC HDCSTMR
  18. *
  19. * 1. PROC NAME AUTHOR DATE
  20. * HDCSTMR E. GEE 85/11/22
  21. *
  22. * 2. FUNCTIONAL DESCRIPTION.
  23. * PROCESS DC/STMR/R SUPERVISORY MESSAGE FROM APPLICATION.
  24. *
  25. * 3. METHOD USED.
  26. * IF ACN WAS SPECIFIED (I.E. NONZERO),
  27. * UPDATE ACNB WITH TIMEOUT DATA.
  28. * ELSE (ACN WAS NOT SPECIFIED),
  29. * UPDATE ACB WITH TIMEOUT DATA.
  30. * LOOP THROUGH ALL CONNECTIONS UPDATING ACNB WITH TIMEOUT
  31. * DATA.
  32. *
  33. * 4. ENTRY PARAMETERS.
  34. * DCACN APPLICATION CONNECTION NUMBER
  35. * ACBADDR ACB ADDRESS
  36. * WLADDR WORKLIST ENTRY ADDRESS
  37. *
  38. * 5. EXIT PARAMETERS.
  39. * NONE
  40. *
  41. * 6. COMDECKS CALLED AND SYMPL TEXTS USED.
  42. * ACB APPLICATION CONTROL BLOCK TEMPLATE
  43. * ACNB APPLICATION CONNECTION BLOCK TEMPLATE
  44. * APPSTAT APPLICATION STATUS TABLE
  45. * ACNT APPLICATION CONNECTION TABLE TEMPLATE
  46. * NIPDEF CONSTANT DEFINITIONS
  47. * OVERLAY OVERLAY TABLE
  48. * PARAMS BUF FOR PASSING PARAMS TO/FROM SEC OVLY
  49. * PT POINTER TABLE PLUS MISC VARIABLES
  50. * SUPMSG SUPERVISORY MESSAGE TEMPLATE
  51. * SYSTIME SYSTEM TIME
  52. *
  53. * 7. ROUTINES AND OVERLAYS CALLED.
  54. * HLGLERR OVL FORM LOGICAL ERROR MESSAGE
  55. * OVLCALL LOAD AND EXECUTE OVERLAY
  56. * XTRACE RECORD PROCESSOR CALLS
  57. *
  58. * 8. DAYFILE MESSAGES AND OTHER IMPORTANT INFORMATION.
  59. * NONE
  60. *
  61. * THIS PROGRAM IS A PRIMARY OVERLAY LOADED BY SUBROUTINE OVLCALL.
  62. * WHEN EXECUTION HAS COMPLETED, A JUMP IS MADE TO LOCATION RJMAIN
  63. * TO RETURN TO THE CALLING PROGRAM.
  64. *
  65. * W A R N I N G - THIS PROGRAM CANNOT EXCEED THE PRIMARY
  66. * OVERLAY BUFFER SIZE MINUS 5 (560B WORDS).
  67. *
  68. * THIS OVERLAY IS CALLED BY HPPUT.
  69. *
  70.  #
  71. STOPIMS;
  72. #
  73.   EXTERNAL VARIABLES
  74. #
  75. XREF
  76. BEGIN
  77. PROC OVLCALL; # LOAD OVERLAY #
  78. PROC XTRACE; # TRACE CALLS #
  79. LABEL RJMAIN; # RETURN ADDRESS IN OVLCALL #
  80. END
  81. #
  82.   INTERNAL VARIABLES
  83. #
  84. ITEM INDX; # LOOP VARIABLE #
  85. #**********************************************************************#
  86. BEGIN
  87.  
  88. CONTROL IFEQ DEBUG,1;
  89. XTRACE("HDSTM") ;
  90. CONTROL FI;
  91.  
  92. P<SUPMSG> = WLADDR + AIPHSIZE + ABHSIZE; # TEXT ADDRESS #
  93. P<ACB> = ACBADDR; # ADDRESS OF ACB #
  94. P<ACNT> = ACBACNT[0]; # ADDRESS OF ACNT TABLE #
  95.  
  96. IF (DCTIME[0] NQ 0) OR # NONZERO TIME INTERVAL GIVEN #
  97. (DCPERMT[0] ) # PERMANENT CHANGE FLAG #
  98. THEN
  99. BEGIN
  100. IF DCACN[0] NQ 0 # ACN IS GIVEN #
  101. THEN # LOCATE THE ACNB #
  102. BEGIN
  103. P<ACNB> = ACNTACNB[DCACN[0] + ACNTHSIZE - ACNTMINACN[0]];
  104. SETTIMER = TRUE; # SET GLOBAL APP SPEC TIMER FLAG#
  105. ACNBTIMERP[0] = DCPERMT[0]; # SET TIMER PERMANENT CHG FLG #
  106. ACNBTIMERF[0] = TRUE; # SET APP SPECIFIED TIMER FLAG #
  107. ACNBTIMER[0] = DCTIME[0]; # APP SPECIFIED TIMEOUT VALUE #
  108. ACNBINACT[0] = RTSECS[0] + DCTIME[0]; # NEW TIME FOR FC/INAC#
  109. END
  110. ELSE # NO ACN SPECIFIED #
  111. BEGIN
  112. ACBTIMER[0] = DCTIME[0]; # APP SPECIFIED TIMEOUT VALUE #
  113. ACBTIMERP[0] = DCPERMT[0]; # SET PERMANENT TIMER CHG FLAG #
  114. FOR INDX = ACNTHSIZE STEP 1 UNTIL ACNTHCN[0] - ACNTMINACN[0]
  115. + ACNTHSIZE
  116. DO
  117. BEGIN
  118. P<ACNB> = ACNTACNB[INDX];
  119. IF P<ACNB> NQ 0 THEN
  120. BEGIN
  121. SETTIMER = TRUE; # SET GLOBAL APP SPEC TIMER FLG #
  122. ACNBTIMERP[0] = DCPERMT[0]; # SET PERMANENT TIMER CHG FLG#
  123. ACNBTIMERF[0] = TRUE; # SET APP SPECIFIED TIMER FLAG #
  124. ACNBTIMER[0] = DCTIME[0];# APP SPECIFIED TIMEOUT VALUE #
  125. ACNBINACT[0] = RTSECS[0] + DCTIME[0];# NEW TIME FOR FC/IN#
  126. END
  127. END
  128. END
  129. END
  130. GOTO RJMAIN; # RETURN TO CALLING PROGRAM #
  131. END
  132. TERM
cdc/nos2.source/nam5871/hdcstmr.txt ยท Last modified: 2023/08/05 17:22 by Site Administrator