User Tools

Site Tools


cdc:nos2.source:nam5871:hpnonvf

HPNONVF

Table Of Contents

  • [00017] PRGM HPNONVF
  • [00072] PROC HSFAPPL
  • [00073] PROC HSNOFF
  • [00074] PROC KPUT
  • [00075] PROC OSCHAPP
  • [00076] PROC OMSG
  • [00077] PROC RDUMP
  • [00078] PROC ABORT
  • [00079] PROC XTRACE

Source Code

HPNONVF.txt
  1. *DECK HPNONVF
  2. USETEXT NIPDEF
  3. USETEXT ACB
  4. USETEXT APPSTAT
  5. USETEXT AT
  6. USETEXT AWLNTRY
  7. USETEXT DUMPFLG
  8. USETEXT INPARUT
  9. USETEXT KDIS
  10. USETEXT KHDRX
  11. USETEXT MSGIDX
  12. USETEXT NWLNTRY
  13. USETEXT OVERLAY
  14. USETEXT PARAMS
  15. USETEXT PT
  16. USETEXT SUPMSG
  17. PRGM HPNONVF; # PROCESS *NET ON* RESPONSE FROM NVF #
  18.  
  19. STARTIMS;
  20. #
  21. *1DC HPNONVF
  22. *
  23. * 1. PROC NAME AUTHOR DATE
  24. * HPNONVF E. GEE 77/06/02
  25. *
  26. * 2. FUNCTIONAL DESCRIPTION.
  27. * PROCESS NET/ON/N SUP MSG FROM NVF
  28. *
  29. * 3. METHOD USED.
  30. * VALIDATE APPLICATION NUMBER IN NET/ON/R SUP MSG
  31. * FILL IN FIELDS OF AWL NETON ENTRY
  32. * CLEAR WAITING-FOR-NETON-RESPONSE FLAG IN AT ENTRY
  33. * SCHEDULE APPLICATION NETTING ON
  34. *
  35. * 4. ENTRY PARAMETERS.
  36. * WLADDR CURRENT NWL ENTRY (NETPUT) ADDRESS
  37. *
  38. * 5. EXIT PARAMETERS.
  39. * AWLCB =1,THE COMPLETE BIT
  40. * AWLRC RETURN CODE
  41. * AN APPLICATION NUMBER
  42. *
  43. *
  44. * 6. COMDECKS CALLED AND SYMPL TEXTS USED.
  45. * ACB APPSTAT AT
  46. * NIPDEF KDIS NWLNTRY OPSIZE
  47.   PT SUPMSG
  48. *
  49. * 7. ROUTINES AND OVERLAYS CALLED.
  50. * KPUT UPDATE K-DISPLAY INFORMATION
  51. * OMSG ISSUE DAYFILE MESSAGES
  52. * OSCHAPP SCHEDULE APPLICATION
  53. * XTRACE TRACES CALLS
  54. *
  55. * 8. DAYFILE MESSAGES. NONE
  56. *
  57. * THIS PROGRAM IS A PRIMARY OVERLAY LOADED BY SUBROUTINE OVLCALL.
  58. * WHEN EXECUTION HAS COMPLETED, A JUMP IS MADE TO LOCATION RJMAIN
  59. * TO RETURN TO THE CALLING PROGRAM.
  60. *
  61. * W A R N I N G - THIS PROGRAM CANNOT EXCEED THE PRIMARY
  62. *CALL OPSIZE
  63. *
  64. * THIS OVERLAY IS CALLED BY HPPUT.
  65. *
  66.  #
  67. STOPIMS;
  68. #
  69.   EXTERNAL VARIABLES
  70. #
  71. XREF BEGIN
  72. PROC HSFAPPL; # I S S U E F A I L / A P P L #
  73. PROC HSNOFF; # I S S U E N E T / O F F SUP/MSG #
  74. PROC KPUT ;
  75. PROC OSCHAPP; # SCHEDULER APPLICATION #
  76. PROC OMSG; # ISSUE DAYFILE MSG #
  77. PROC RDUMP; # DUMP NIP FL #
  78. PROC ABORT ;
  79. PROC XTRACE; # TRACE CALLS #
  80. LABEL RJMAIN; # RETURN ADDRESS IN OVLCALL #
  81. END
  82. #
  83.   INTERNAL VARIABLES
  84. #
  85. ITEM AN;
  86. CONTROL IFEQ DEBUG,1;
  87. ARRAY BADBUFWA P(4);
  88. BEGIN
  89. ITEM BADMSG C(0,0,34) = ["BAD AN NET/ON SM RESPONSE FROM NVF"];
  90. ITEM EBADMSG U(3,36,24) = [0];
  91. END
  92. CONTROL FI;
  93. #**********************************************************************#
  94. BEGIN
  95. CONTROL IFEQ DEBUG,1 ;
  96. XTRACE("HPNVF") ;
  97. CONTROL FI;
  98. P<NWLENTRY> = WLADDR; # WORKLIST ADDRESS #
  99. P<SUPMSG> = LOC(NWLEABH[0]) + ABHSIZE; # SUP MSG ADDRESS #
  100. P<SMNVF> = P<SUPMSG>; # BASE NET/ON TEMPLATE #
  101. #
  102.   CHECK IF VALID AN IN NET/ON/R SUP MSG
  103. #
  104. AN = NETAN[0]; #APPLICATION NUMBER #
  105. P<ACB> = ATACBA[AN]; # ACB ADDRESS #
  106. CONTROL IFEQ DEBUG,1;
  107. IF AN LQ NVFAN OR AN GR ATHAN OR NOT ATNVFR[AN]
  108. OR ATACBA[AN] EQ 0
  109. THEN # INVALID AN IN NET/ON/R SUP/MSG #
  110. BEGIN
  111. OMSG(BADBUFWA,0); # SEND NIP DAYFILE MSG #
  112. ABORT(0,0) ;
  113. END
  114. CONTROL FI;
  115. #
  116.   UPDATE APPLICATION NAME TO WHAT WAS RETURNED FROM NVF
  117. #
  118. ACBANAME[0] = NETANAM[0] ;
  119. IF KDST[0]
  120. AND ACBKNDX[0] NQ 0
  121. AND ACBKNDX[0] GQ KDAPPST[0]
  122. AND ACBKNDX[0] LQ KDAPPND[0]
  123. THEN
  124. KPUT(KHDRNP[0],ACBKNDX[0]-KDAPPST[0],KPAPNM,ACBANAME[0]) ;
  125.  
  126. # CLEAR WAITING-FOR-NETON-RESPONSE FLAG IN AT #
  127. ATNVFR[AN] = FALSE;
  128. IF NETK[0]
  129. THEN
  130. BEGIN
  131. ATK[AN] = TRUE;
  132. IF KDST[0]
  133. AND ACBKNDX[0] NQ 0
  134. AND ACBKNDX[0] GQ KDAPPST[0]
  135. AND ACBKNDX[0] LQ KDAPPND[0]
  136. THEN
  137. KPUT(KHDRNP[0],ACBKNDX[0]-KDAPPST[0],KPAPI,"N") ;
  138. END
  139. ATXFR[AN] = NETXFER[0] ; # SAVE INFOR ABOUT XFR IN AT #
  140.  
  141. ATPRU[AN] = NETPRU[0] ; # FLAG FOR PRU APPLICATION IF ON #
  142.  
  143. IF NOT ATNVFB[AN] # IF NOT WAITING TO SEND OTHER SM TO NVF #
  144. THEN # PROCESS NET/ON RESPONSE FROM NVF #
  145. BEGIN
  146. #
  147.   FILL IN FIELDS OF AWL NETON ENTRY
  148. #
  149. P<AWLENTRY> = LOC(ACBAWL0[0]); # AWL NETON ENTRY ADDR #
  150. AWLCB[0] = 1;
  151. AWLRC[0] = NETRC[0]; # NET ON RETURN CODE #
  152. AWLNIN[0] = INPNIN[1] ;
  153.  
  154. AWLEWD1[0] = AN; # APPLICATION NUMBER OF APP NETTING ON #
  155.  
  156. #
  157.   SCHEDULE APPLICATION NETTING ON
  158. #
  159. OSCHAPP(P<ACB>);
  160. END
  161. GOTO RJMAIN; # RETURN TO CALLING PROGRAM #
  162. END
  163. TERM
cdc/nos2.source/nam5871/hpnonvf.txt ยท Last modified: 2023/08/05 17:22 by Site Administrator