User Tools

Site Tools


cdc:nos2.source:nam5871:cssctr

CSSCTR

Table Of Contents

  • [00007] PROC CSSCTR
  • [00008] CSSCTR - COMPLETE TEST REQUEST.
  • [00012] COMPLETE TEST REQUEST .
  • [00040] PROC SSBCBW
  • [00041] PROC SSBTBW
  • [00042] PROC SSTAQE

Source Code

CSSCTR.txt
  1. *DECK CSSCTR
  2. USETEXT TEXTCS;
  3. USETEXT TEXTSS;
  4. USETEXT TXTAPSS;
  5. USETEXT TXTSMCS;
  6. USETEXT TXTSUSS;
  7. PROC CSSCTR;
  8. # TITLE - CSSCTR - COMPLETE TEST REQUEST. #
  9. BEGIN # CSSCTR #
  10.  
  11. #
  12. ** CSSCTR - COMPLETE TEST REQUEST .
  13. *
  14. * C. BRION 82/05/06.
  15. *
  16. * THIS PROCEDURE PROCESSES THE NORMAL AND ABNORMAL RESPONSES
  17. * TO THE TEST REQUEST SM.
  18. *
  19. * PROC CSSCTR
  20. *
  21. * ENTRY:
  22. *
  23. * WCBUF = WORD COUNT WORD OF RESPONSE SM ENTRY.
  24. * ABH = APPLICATION BLOCK HEADER OF RESPONSE SM.
  25. * CSSM = BODY OF RESPONSE SM ENTRY.
  26. *
  27. * EXIT:
  28. *
  29. * A SUPERVISION EVENT IS ISSUED.
  30. * THE NPUCB OVERLAY STATE IS UPDATED.
  31. *
  32. #
  33.  
  34. #
  35. **** PROC CSSCTR XREF LIST.
  36. #
  37.  
  38. XREF
  39. BEGIN
  40. PROC SSBCBW; # SS-CLEAR BIT IN WORD #
  41. PROC SSBTBW; # SS-TEST BIT IN WORD #
  42. PROC SSTAQE; # SS-ACCEPT QUEUE ENTRY #
  43. END
  44. #
  45. ****
  46. #
  47.  
  48.  
  49. ITEM FOUND B; # NPUCB FOUND FLAG #
  50. ITEM I U; # LOOP INDUCTION VAR #
  51. ITEM NORD U; # NPUCB ORDINAL #
  52. ITEM OORD I; # OPERATOR ORDINAL #
  53. ITEM RUNNING B; # ONLINE DIAG OPERATOR FLAG #
  54.  
  55.  
  56. #
  57. * FLG$WORD - BASED ARRAY THAT POINTS THE THE ONLINE DIAGNOSTICS
  58. * OPERATOR BIT MAP.
  59. #
  60. BASED ARRAY FLG$WORD [00:00] S(NPCBSZ$);
  61. BEGIN
  62. ITEM FW$WORD I(00,00,60);
  63. END
  64.  
  65.  
  66.  
  67. OORD = OLDDO[0];
  68. ABHWORD[1] = ABHWORD[0]; # SET OUTGOING SM ABH #
  69.  
  70. #
  71. * FIND NPUCB WITH MATCHING NODE NUMBERS AS INCOMING RESPONSE SM.
  72. #
  73.  
  74. FOR I = 0 STEP 1 WHILE (NOT FOUND AND I LS CSNPCNT)
  75. DO
  76. BEGIN
  77. IF (ABHDN[0] EQ NPU$HID[I] AND ABHSN[0] EQ NPU$NID[I])
  78. THEN
  79. BEGIN
  80. FOUND = TRUE;
  81. NORD = I;
  82. END
  83. END
  84.  
  85. #
  86. * IF NPUCB FOUND THEN CHECK IF TEST REQUEST STILL CURRENT BY CHECK-
  87. * ING THE CURRENT OVERLAY OPERATOR ORDINAL OF THE NPUCB. IF OUT OF
  88. * RANGE, MEANS THAT REQUEST CANCELED BY OPERATOR ACTION-SIMPLY
  89. * CLEAR CURRENT OVERLAY OCB ORDINAL. OTHERWISE, REQUEST STILL CUR-
  90. * RENT.
  91. #
  92.  
  93. IF FOUND
  94. THEN
  95.  
  96. BEGIN
  97. P<FLG$WORD> = LOC(NPU$OVFLGS[NORD]);
  98. SSBTBW(FLG$WORD,OORD,RUNNING);
  99.  
  100. IF RUNNING
  101. THEN
  102. BEGIN
  103. ABHDN[1] = ABHSN[1]; # SWITCH DN,SN FOR EVQ #
  104. OC$UVERB[OORD] = 0; # CLEAR OCB VERB #
  105.  
  106. #
  107. * IF ABNORMAL RESPONSE, CLEAR OVERLAY OCB ORDINAL OF NPUCB AND
  108. * SET OVERLAY STATE TO IDLE.
  109. #
  110.  
  111. IF EB[0]
  112. THEN
  113. BEGIN
  114. SSBCBW(FLG$WORD,OORD);
  115. END
  116.  
  117.  
  118. #
  119. * SEND SUPERVISION EVENT TO EVENT PROCESSOR.
  120. #
  121.  
  122. SSTAQE(P<EVQ>,WCBUF[0],ABH[1],CSSM[0]);
  123.  
  124. END
  125.  
  126. #
  127. * OPERATOR MUST HAVE DISCONNECTED. SEND TERMINAL TEXT WITH THE
  128. * INPUT ALLOWED FLAG SET TO COMPLETE THE TERMINATION PROCESSING
  129. * IN THE C-LAYER.
  130. #
  131. ELSE
  132. BEGIN
  133. WCB$WORD[1] = 2;
  134. WCB$SMID[1] = SMID"TTEXT";
  135. WCB$IAF[1] = TRUE;
  136. ABHADR[1] = OORD;
  137.  
  138. SSTAQE(P<CNQ>,WCBUF[1],ABH[1],CSSM[1]);
  139. END
  140. END
  141. END #CSSCTR#
  142.  
  143. TERM
  144.  
  145.  
  146.  
  147.  
cdc/nos2.source/nam5871/cssctr.txt ยท Last modified: 2023/08/05 17:22 by Site Administrator