User Tools

Site Tools


cdc:nos2.source:nam5871:ns_non

NS$NON

Table Of Contents

  • [00004] PROC NS$NON
  • [00006] NS$NON - ISSUE NETON REQUEST.
  • [00010] ISSUE NETON REQUEST.
  • [00036] PROC NS$DBG
  • [00042] PROC NETON
  • [00043] PROC NS$MSG
  • [00044] PROC RECALL

Source Code

NS$NON.txt
  1. *DECK NS$NON
  2. USETEXT COM$NS
  3. USETEXT DEF$NS
  4. PROC NS$NON; # ISSUE NETON REQUEST #
  5.  
  6. # TITLE NS$NON - ISSUE NETON REQUEST. #
  7.  
  8. BEGIN # NS$NON #
  9. #
  10. ** NS$NON - ISSUE NETON REQUEST.
  11. *
  12. * J.C. LEE 1981
  13. *
  14. * THIS ROUTINE ISSUES NETON REQUEST.
  15. *
  16. * PROC NS$NON
  17. *
  18. * ENTRY:
  19. * NONE.
  20. *
  21. * EXIT:
  22. * NONE.
  23. *
  24. * METHOD:
  25. * ISSUE "NS TRYING NETON" MESSAGE TO DAYFILE.
  26. * KEEP ON TRYING TO NETON AS LONG AS NETON
  27. * LIMIT HAS NOT REACHED AND NAM NOT AVAILABLE.
  28. * IF NETON NOT SUCCESSFUL, DAYFILE MESSAGE AND ABORT.
  29. * ELSE, SET NS NETTED-ON FLAG.
  30. *
  31. #
  32.  
  33. $BEGIN
  34. XREF
  35. BEGIN
  36. PROC NS$DBG; # TRACE PROCEDURE CALL #
  37. END
  38. $END
  39.  
  40. XREF
  41. BEGIN
  42. PROC NETON; # NETON #
  43. PROC NS$MSG; # DISPATCH MESSAGE #
  44. PROC RECALL; # RECALL #
  45. END
  46.  
  47. DEF N$NETONTRY # 10000 #; # NUMBER OF NETON TRYS ALLOWED #
  48.  
  49. STATUS NETONSTAT # NETON RETURN STATUS #
  50. NETTEDON, # 0 NORMAL, NETON ACCEPTED #
  51. NONAM, # 1 ABNORMAL, NAM NOT AVAILABLE #
  52. DUPAPPL, # 2 ABNORMAL, DUPLICATE APPLICATION NETON #
  53. APPLDA, # 3 ABNORMAL, APPLICATION DISABLED #
  54. ;
  55.  
  56. DEF L$M01 # 3 #; # BAD NETON MESSAGE SIZE #
  57. DEF DM$M01 # DM$ABORT+DM$SYSLOC #; # MESSAGE ROUTING OPTIONS #
  58. ARRAY MSG$M01 [1:3] S(L$M01);
  59. BEGIN # BAD NETON MESSAGE #
  60. ITEM M01$TEXT C(0,0,21) = [ # MESSAGE TEXT #
  61. "NS NAM NOT AVAILABLE.",
  62. "NS DUPLICATE NETON. ",
  63. "NS DISABLED. ",
  64. ];
  65. ITEM M01$END U(2,6,54) = [3(0)]; # LINE TERMINATOR #
  66. END
  67.  
  68. DEF L$M02 # 2 #; # TRYING NETON MESSAGE SIZE #
  69. DEF DM$M02 # DM$SYSLOC #; # MESSAGE ROUTING OPTIONS #
  70. ARRAY MSG$M02 [0:0] S(L$M02);
  71. BEGIN # TRYING NETON MESSAGE #
  72. ITEM M02$TEXT C(0,0,16) = # MESSAGE TEXT #
  73. ["NS TRYING NETON."];
  74. ITEM M02$END U(1,36,24) = [0]; # LINE TERMINATOR #
  75. END
  76.  
  77. ITEM I I; # LOOP VARIABLE #
  78. ITEM STAT S:NETONSTAT; # NETON RETURN STATUS #
  79.  
  80. CONTROL EJECT;
  81.  
  82. $BEGIN
  83. NS$DBG("NON"); # TRACE CALL #
  84. $END
  85.  
  86. NS$MSG(MSG$M02,L$M02,DM$M02); # DAYFILE -TRYING NETON- #
  87. STAT = S"NONAM";
  88.  
  89. FOR I = 1 STEP 1 WHILE STAT EQ S"NONAM" # NAM NOT AVAILABLE #
  90. AND I LQ N$NETONTRY # NETON TRYS ALLOWED #
  91. DO # KEEP ON TRYING TO NETON #
  92. BEGIN
  93.  
  94. RECALL(0); # GIVE UP CPU WHILE WAITING FOR NAM #
  95. NETON("NS",NSUPWORD,STAT,0,0); # ISSUE NETON REQUEST #
  96.  
  97. END
  98.  
  99. IF STAT NQ S"NETTEDON"
  100. THEN # NETON IS NOT SUCCESSFUL #
  101. NS$MSG(MSG$M01[STAT],L$M01,DM$M01); # DAYFILE / ABORT NS #
  102.  
  103. NSNETON = TRUE; # SET NS NETTED ON FLAG #
  104.  
  105. RETURN;
  106. END # NS$NON #
  107. TERM
cdc/nos2.source/nam5871/ns_non.txt ยท Last modified: 2023/08/05 17:22 by Site Administrator