User Tools

Site Tools


cdc:nos2.source:nam5871:hdctru

HDCTRU

Table Of Contents

  • [00013] PRGM HDCTRU
  • [00071] PROC OVLCALL
  • [00072] PROC XTRACE

Source Code

HDCTRU.txt
  1. *DECK HDCTRU
  2. USETEXT ACB
  3. USETEXT ACNB
  4. USETEXT ACNT
  5. USETEXT AT
  6. USETEXT NIPDEF
  7. USETEXT APPSTAT
  8. USETEXT NWLNTRY
  9. USETEXT OVERLAY
  10. USETEXT PARAMS
  11. USETEXT PT
  12. USETEXT SUPMSG
  13. PRGM HDCTRU; # PROCESS DC/TRU/R FROM APP #
  14.  
  15. *IF DEF,IMS
  16. STARTIMS;
  17. #
  18. *1DC HDCTRU
  19. *
  20. * 1. PROC NAME AUTHOR DATE
  21. * HDCTRU S. WATANABE 79/04/04
  22. *
  23. * 2. FUNCTIONAL DESCRIPTION.
  24. * PROCESS DC/TRU/R SUPERVISORY MESSAGE FROM APPLICATION.
  25. *
  26. * 3. METHOD USED.
  27. * VALIDATE DC/TRU/R SUPERVISORY MESSAGE.
  28. * IF ACN IS NON-ZERO AND ACNB IS FOUND,
  29. * DATA TRUNCATION FLAG IS SET IN THE ACNB.
  30. * IF ACN IS ZERO,
  31. * DATA TRUNCATION FLAG IS SET IN THE ACB
  32. * AND IN ALL ITS ACTIVE ACNB-S.
  33. *
  34. * 4. ENTRY PARAMETERS.
  35. * DCACN APPLICATION CONNECTION NUMBER
  36. * ACBADDR ACB ADDRESS
  37. * WLADDR WORKLIST ENTRY ADDRESS
  38. *
  39. * 5. EXIT PARAMETERS.
  40. * NONE
  41. *
  42. * 6. COMDECKS CALLED AND SYMPL TEXTS USED.
  43. * ACB ACNB APPSTAT AT NIPDEF
  44. * ACNT OVERLAY PARAMS SUPMSG PT
  45. *
  46. * 7. ROUTINES AND OVERLAYS CALLED.
  47. * HLGLERR OVL FORM LOGICAL ERROR MESSAGE
  48. * OVLCALL LOAD AND EXECUTE OVERLAY
  49. * XTRACE RECORD PROCESSOR CALLS
  50. *
  51. * 8. DAYFILE MESSAGES AND OTHER IMPORTANT INFORMATION.
  52. * NONE
  53. *
  54. * THIS PROGRAM IS A PRIMARY OVERLAY LOADED BY SUBROUTINE OVLCALL.
  55. * WHEN EXECUTION HAS COMPLETED, A JUMP IS MADE TO LOCATION RJMAIN
  56. * TO RETURN TO THE CALLING PROGRAM.
  57. *
  58. * W A R N I N G - THIS PROGRAM CANNOT EXCEED THE PRIMARY
  59. *CALL OPSIZE
  60. *
  61. * THIS OVERLAY IS CALLED BY HPPUT.
  62. *
  63.  #
  64. STOPIMS;
  65. *ENDIF
  66. #
  67.   EXTERNAL VARIABLES
  68. #
  69. XREF
  70. BEGIN
  71. PROC OVLCALL; # LOAD OVERLAY #
  72. PROC XTRACE; # TRACE CALLS #
  73. LABEL RJMAIN; # RETURN ADDRESS IN OVLCALL #
  74. END
  75. #
  76.   INTERNAL VARIABLES
  77. #
  78. ITEM FOUND U; # HOSTSIDE ACNB ADDRESS #
  79. ITEM INDX; # LOOP VARIABLE #
  80. #**********************************************************************#
  81. BEGIN
  82. CONTROL IFEQ DEBUG,1;
  83. XTRACE("HDCTR") ;
  84. CONTROL FI;
  85.  
  86. P<SUPMSG> = WLADDR + AIPHSIZE + ABHSIZE; # TEXT ADDRESS #
  87. P<ACB> = ACBADDR;
  88. P<ACNT> = ACBACNT[0];
  89.  
  90. IF DCACN[0] NQ 0 # ACN IS GIVEN #
  91. THEN # LOCATE THE ACNB #
  92. BEGIN
  93. FOUND = 0; # ZERO FOUND ITEM #
  94. IF DCACN[0] LQ ACNTHCN[0] AND DCACN[0] GQ ACNTMINACN[0]
  95. THEN
  96. BEGIN
  97. P<ACNB> = ACNTACNB[DCACN[0] + ACNTHSIZE - ACNTMINACN[0]];
  98. FOUND = P<ACNB>;
  99. END
  100. IF FOUND EQ 0 # NO ACNB WITH THIS ACN #
  101. THEN
  102. BEGIN
  103. PARAMS1 = RLG"ACN";
  104. OVLNAME = HLGLERRP; # SEND LOGICAL ERROR MSG #
  105. OVLCALL;
  106. END
  107. ELSE # ACNB FOUND #
  108. BEGIN
  109. ACNBD[0] = TRUE ;
  110. END
  111. END
  112. ELSE # NO ACN SPECIFIED #
  113. BEGIN
  114. ATT[ACBAN[0]] = TRUE;
  115. FOR INDX = ACNTHSIZE STEP 1 UNTIL ACNTHCN[0] - ACNTMINACN[0]
  116. + ACNTHSIZE
  117. DO
  118. BEGIN
  119. P<ACNB> = ACNTACNB[INDX];
  120. IF P<ACNB> NQ 0 THEN
  121. BEGIN
  122. ACNBD[0] = TRUE;
  123. END
  124. END
  125. END
  126. GOTO RJMAIN;
  127. END
  128. TERM
cdc/nos2.source/nam5871/hdctru.txt ยท Last modified: 2023/08/05 17:22 by Site Administrator