User Tools

Site Tools


cdc:nos2.source:nam5871:netrr

Table of Contents

NETRR

Table Of Contents

  • [00009] PROC NETRR
  • [00052] PROC NP$CLK
  • [00053] PROC NP$DATE
  • [00054] PROC NP$ERR
  • [00055] PROC NP$PIOE
  • [00056] PROC NP$RTIM
  • [00057] PROC NP$SEND
  • [00058] PROC NP$WRTO
  • [00059] PROC NP$WRTR
  • [00060] PROC NP$WRTW

Source Code

NETRR.txt
  1. *DECK NETRR
  2. USETEXT AIPDEF
  3. USETEXT NP$MODE
  4. USETEXT NP$DB
  5. USETEXT NP$NWL
  6. USETEXT NP$ONAM
  7. USETEXT NP$STAT
  8. USETEXT NP$ZHDR
  9. PROC NETRR;
  10. *IF DEF,IMS
  11. #
  12. *1DC NETRR
  13. *
  14. * 1. PROC NAME AUTHOR DATE
  15. * NETRR NGUYEN, L.T. 88/04/12
  16. *
  17. * 2. FUNCTIONAL DESCRIPTION
  18. * PROCESSES THE NETRR CALL FROM AN APPLICATION.
  19. *
  20. * 3. METHOD USED
  21. * IF DEBUG DEFINED, LOG NETRR ENTRY IN ZZZZZDN FILE.
  22. * SEND NETRR WORKLIST TO NIP.
  23. *
  24. * 4. ENTRY CONDITIONS
  25. * NONE.
  26. *
  27. * 5. EXIT CONDITIONS
  28. * NONE.
  29. *
  30. * 6. COMDECKS CALLED AND SYMPL TEXTS USED.
  31. * AIPDEF NP$CRT
  32. * NP$DB NP$DBA NP$MODE NP$NWL
  33. *
  34. * 7. PROCEDURES/FUNCTIONS CALLED
  35. * NP$PIOE - PROCESS I/O ERROR ON DEBUG LOG FILE
  36. * NP$RTIM - RETURNS CURRENT TIME FROM DEADSTART IN SECONDS
  37. * AND MILLISECONDS
  38. * NP$SEND - SEND WORKLIST TO NIP.
  39. * NP$WRTO - WRITE ONE WORD TO FILE.
  40. * NP$WRTW - WRITES WORDS TO FILE - NOS DATA TRANSFER MACRO
  41. * NP$ERR - DAYFILE ERROR MESSAGE AND ABORT.
  42. *
  43. * 8. DAYFILE/DIAGNOSTIC MESSAGES
  44. * NONE.
  45.  #
  46. *ENDIF
  47. #
  48.   AIP RESET
  49. #
  50. XREF
  51. BEGIN
  52. PROC NP$CLK ;
  53. PROC NP$DATE ;
  54. PROC NP$ERR ;
  55. PROC NP$PIOE ;
  56. PROC NP$RTIM ;
  57. PROC NP$SEND ;
  58. PROC NP$WRTO ;
  59. PROC NP$WRTR ;
  60. PROC NP$WRTW ;
  61. END
  62.  
  63. ITEM TIMEWD U ;
  64.  
  65. *IF DEF,DEBUG
  66.  
  67. # DEBUG OPTION ARRAY DEFINITIONS #
  68.  
  69. ARRAY RSTLINE P(2); # LOGS NETRR ENTRY #
  70. BEGIN
  71. ITEM RST$TIM U(0,0,60); # TIME OF CALL TO NETRR #
  72. ITEM RST$CAL U(1,24,AL); # NETRR CALLING ADDRESS #
  73. ITEM RST$OPC I(1,54,6); # NETRR OPCODE (=12) #
  74. END
  75. *ENDIF
  76.  
  77. BEGIN # NETRR #
  78. IF NOT ACCEPTED
  79. THEN
  80. NP$ERR("34") ;
  81.  
  82. *IF DEF,DEBUG
  83. # FORMAT LOG ENTRY FOR NETRR CALL #
  84.  
  85. P<CALLADR> = LOC(NETRR) ; # GET CALL ADDRESS #
  86.  
  87. NP$RTIM(TIMEWD); # GET REAL TIME SINCE DEADSTART #
  88. RST$TIM[0] = TIMEWD;
  89. RST$CAL[0] = CALLADDR[0];
  90. RST$OPC[0] = OP$RR ;
  91. NP$WRTW(DB$FET,RSTLINE,2); # WRITE NETRR TO DEBUG LOG #
  92. #
  93.   UPDATE MSGCNT IN NSUP COMMUNICATION WORD.
  94. #
  95. MSGCNT[0] = MSGCNT[0] + 1;
  96. #
  97.   CHECK FOR I/O ERROR IN DEBUG LOG FILE
  98. #
  99. IF FET$AT[0] NQ 0
  100. THEN # I/O ERROR HAS OCCURRED ON FILE#
  101. BEGIN
  102. NP$PIOE(DB$FET); # PROCESS I/O ERROR #
  103. END
  104. *ENDIF
  105. #
  106.   RESET VARIABLES IN AIP
  107. #
  108. NEXT = NHDR + 1; # SET NWL COUNTER #
  109. SPACE$LEFT=LWL; # SET NWL POINTER #
  110. N$AWL[0] = 0; # CLEAR AWL RESPONSE INDICATORS#
  111. #
  112.   RESET POINTERS FOR SUPERVISORY MESSAGE BUFFER - SMB
  113. #
  114. HEAD = FIRST; # FIRST IS START OF SMB #
  115. FOOT = HEAD; # SMB IS EMPTY: NO MESSAGES #
  116. NEXTSMLEN = 0; # NO SUPERVISORY MSGS IN NIP #
  117. #
  118.   RESET POINTERS FOR AIP UPLINE DATA MESSAGE BUFFER - GMB
  119. #
  120. GMBHEAD = 1; # INITIAL INDX FOR FWA TO WRITE#
  121. GMBFOOT = 1; # INITIAL INDX FOR LWA TO WRITE#
  122. GMBUSE = FALSE; # INIT GMB NOT IN USE FLAG #
  123. GMBTRUNC = FALSE; # INIT NO TRUNCATION OF DATA #
  124. GMBLAST = 1; # INITIAL INDEX FOR END OF BUF #
  125. GMBCN = 0; # INIT CON NUMBER FOR GMB #
  126. GMBLN = 0; # INIT LIST NUMBER FOR GMB #
  127. GMMESIZE = 0; # INIT FOR NO GMM ENTRY NEEDED #
  128. #
  129.   SET UP NWL HEADER
  130. #
  131. HDR[NHDR] = LOC(HDR[NHDR]) + 1;#RETURN AWL AFTER CONTROL WDS#
  132. HDR$P[NHDR] = PN ; # APPLICATION NUMBER #
  133. HDR$N[NHDR] = 1; #ONLY 1 ENTRY, I.E. THE NETRR #
  134. HDR$W[NHDR] = 1 + NONBSIZE;
  135. #
  136.   FORMAT NETRR NWL ENTRY
  137. #
  138. NWL[NEXT] = 0 ; #CLEAR AND BUILD OP WORD #
  139. NWL$OP[NEXT] = OP$RR;
  140. NWL$ID[NEXT] = AWLID; #UNPROCESSED WORKLIST ID = AWLID (=11) #
  141. NWL$BS[NEXT] = NRRBSIZE;
  142.  
  143. #
  144.   SEND NETRR NWL TO NIP
  145. #
  146. SENDGETMM = FALSE;
  147. SENDGETSM = FALSE;
  148.  
  149. NP$SEND;
  150.  
  151. SENDGETMM = TRUE;
  152. SENDGETSM = TRUE;
  153.  
  154. RETURN;
  155.  
  156. END #NETRR #
  157. TERM
cdc/nos2.source/nam5871/netrr.txt ยท Last modified: 2023/08/05 17:22 by Site Administrator