User Tools

Site Tools


cdc:nos2.source:nam5871:dlnbh

Table of Contents

DLNBH

Table Of Contents

  • [00009] PROC DLNBH
  • [00068] PROC DLABEND
  • [00069] PROC DLDFM

Source Code

DLNBH.txt
  1. *DECK DLNBH
  2. USETEXT DLFPDEF
  3. USETEXT ABH
  4. USETEXT DIRTBLH
  5. USETEXT ERRMSG
  6. USETEXT OUTCDA
  7. USETEXT NHEADER
  8. USETEXT ZHRCD
  9. PROC DLNBH; # SELECT NETWORK MESSAGES FOR OUTPUT #
  10.  
  11. *IF DEF,IMS
  12. #
  13. *1DC DLNBH
  14. *
  15. * 1. PROC NAME AUTHOR DATE
  16. * DLNBH P.C.TAM 79/01/10
  17. *
  18. * 2. FUNCTIONAL DESCRIPTION
  19. * SELECT NETWORK MESSAGES FOR OUTPUT
  20. *
  21. * 3. METHOD USED
  22. * LOOP THROUGH NETWORK BLOCK PROCESSING TABLE. PROCESS
  23. * EACH ENTRY AS FOLLOWS UNTIL EITHER THE CHOSEN FLAG
  24. * IS CLEARED OR ALL ENTRIES ARE PROCESSED.
  25. * C CHECK IF CANCEL FLAG IS SET IN DBC.
  26. * IF NOT SET, CLEAR CHOSEN FLAG.
  27. * F CHECK IF NO FORMAT EFFECTOR FLAG IS SET IN
  28. * DBC. IF NOT SET, CLEAR CHOSEN FLAG.
  29. * P CHECK IF PARITY/AUTO INPUT FLAG IS SET IN
  30. * DBC. IF NOT SET, CLEAR CHOSEN FLAG.
  31. * X CHECK IF TRANSPARENT DATA FLAG IS SET IN DBC.
  32. * IF NOT SET, CLEAR CHOSEN FLAG.
  33. * DN COMPARE NODE NUMBER IN NETWORK BLOCK PROCESSING
  34. * TABLE WITH DN IN MESSAGE. IF NO MATCH,
  35. * CLEAR CHOSEN FLAG.
  36. * SN COMPARE SOURCE NODE IN NETWORK BLOCK PROCESSING
  37. * TABLE WITH SN IN MESSAGE. IF NO MATCH,
  38. * CLEAR CHOSEN FLAG.
  39. * CN COMPARE CONNECTION NUMBER IN NETWORK BLOCK
  40. * PROCESSING TABLE WITH CN IN MESSAGE. IF NO MATCH,
  41. * CLEAR CHOSEN FLAG.
  42. *
  43. * 4. ENTRY PARAMETER.
  44. * DIRTBLH COMMON BLOCK CONTAINING SELECTION CRITERIA
  45. * ZHRCD COMMON BLOCK HOLDING THE NETWORK BLOCK HEADER
  46. *
  47. * 5. EXIT PARAMETER.
  48. * CHOSEN IN ZHRCD, SET IF MESSAGE IS SELECTED.
  49. *
  50. * 6. COMDECKS CALLED AND SYMPL TEXTS USED.
  51. * ABH DIRTBLH DLFPDEF ERRMSG
  52. * OUTCDA NHEADER ZHRCD
  53. *
  54. * 7. ROUTINES CALLED
  55. * DLABEND ABORT PROGRAM
  56. * DLDFM ISSUE DAYFILE MESSAGE
  57. *
  58. * 8. DAYFILE MESSAGES
  59. * BAD DIRECTIVE TABLE ENTRY.
  60. *
  61.  #
  62. *ENDIF
  63. #
  64.   EXTERNAL VARIABLES
  65. #
  66. XREF
  67. BEGIN
  68. PROC DLABEND; # ABORT PROGRAM #
  69. PROC DLDFM; # ISSUE DAYFILE MESSAGE #
  70. END
  71.  
  72. #
  73.   LOCAL VARIABLES
  74. #
  75. SWITCH CRIT
  76. ERR, ERR, ERR, ERR, ERR, ERR, ERR,ERR,L$C, L$F, L$P, ERR,
  77. ERR, L$X, L$DN, L$SN, L$CN, ERR, ERR, ERR, ERR, ERR, ERR;
  78.  
  79. ITEM
  80. I, # INDEX VARIABLE #
  81. K, # TEMPORARY VARIABLE #
  82. TEMPABH; # TEMPORARY ABH #
  83.  
  84. # ******************************************************************** #
  85. BEGIN
  86. P<NHEADER> = LOC(ZHWD1[0]) + BLKHSIZE;
  87. P<ABH> = LOC(TEMPABH);
  88. ABHDBC[0] = NHDBC[0];
  89. FOR I = 1 STEP 1 WHILE I LQ DIRNUMH AND CHOSEN
  90. DO
  91. BEGIN
  92. GOTO CRIT[DIRHID[I]];
  93. L$C: # CANCEL FLAG PROCESSING #
  94. IF ABHCAN[0] NQ 1
  95. THEN
  96. CHOSEN = FALSE;
  97. GOTO NEXT;
  98. L$F: # NO FORMAT EFFECTOR PROCESSING #
  99. IF ABHNFE[0] NQ 1
  100. THEN
  101. CHOSEN = FALSE;
  102. GOTO NEXT;
  103. L$P: # PARITY / AUTO INPUT FLAG PROCESSING #
  104. IF ABHBIT[0] NQ 1
  105. THEN
  106. CHOSEN = FALSE;
  107. GOTO NEXT;
  108. L$X: # TRANSPARENT BIT PROCESSING #
  109. IF ABHXPT[0] NQ 1
  110. THEN
  111. CHOSEN = FALSE;
  112. GOTO NEXT;
  113. L$DN: # DESTINATION NODE PROCESSING #
  114. IF DIRHVAL[I] NQ DN[0]
  115. THEN
  116. CHOSEN = FALSE;
  117. GOTO NEXT;
  118. L$SN: # SOURCE NODE PROCESSING #
  119. IF DIRHVAL[I] NQ SN[0]
  120. THEN
  121. CHOSEN = FALSE;
  122. GOTO NEXT;
  123. L$CN: # CONNECTION NUMBER PROCESSING #
  124. IF DIRHVAL[I] NQ CN[0]
  125. THEN
  126. CHOSEN = FALSE;
  127. GOTO NEXT;
  128. ERR:
  129. DLDFM(BAD$DNTRY); # BAD DIRECTIVE TABLE ENTRY #
  130. DLABEND; # ABORT PROGRAM #
  131. NEXT:
  132. END
  133. END
  134. TERM
cdc/nos2.source/nam5871/dlnbh.txt ยท Last modified: 2023/08/05 17:22 by Site Administrator