User Tools

Site Tools


cdc:nos2.source:nam5871:nvfuros

NVFUROS

Table Of Contents

  • [00003] PROC NVFUROS(VCBORD,STATS)
  • [00004] NVFUROS - RETURNS VCB ORDINAL STATUS(FREE/BUSY).
  • [00008] RETURNS VCB ORDINAL STATUS(FREE/BUSY).
  • [00037] PROC ABORT
  • [00038] PROC MESSAGE
  • [00039] PROC SSBTBW
  • [00040] FUNC XCDD C(10)

Source Code

NVFUROS.txt
  1. *DECK NVFUROS
  2. USETEXT TXVCBNV
  3. PROC NVFUROS(VCBORD,STATS);
  4. # TITLE NVFUROS - RETURNS VCB ORDINAL STATUS(FREE/BUSY). #
  5.  
  6. BEGIN # NVFUROS #
  7. #
  8. ** NVFUROS - RETURNS VCB ORDINAL STATUS(FREE/BUSY).
  9. *
  10. * A. LIM 81/07/21
  11. * C. BRION 82/06/22
  12. *
  13. * THIS PROCEDURE RETURNS THE STATUS(FREE/BUSY) OF VCB ORDINAL.
  14. *
  15. * PROC NVFUROS(VCBORD,STATS)
  16. *
  17. * ENTRY VCBORD = VCB ORDINAL
  18. *
  19. * EXIT STATS = STATUS OF VCB ORDINAL
  20. * 1 = FREE, AND 0 = BUSY.
  21. *
  22. * NOTES NONE
  23. *
  24. * METHOD 1) VERIFY IF VCB ORDINAL IS LEGAL.
  25. * IF NOT, ISSUE DAYFILE MESSAGE, AND
  26. * ABORT NVF. ELSE RETURN THE STATUS
  27. * OF VCB ORDINAL.
  28. *
  29. #
  30.  
  31.  
  32. #
  33. **** PROC NVFUROS XREF LIST BEGIN.
  34. #
  35. XREF
  36. BEGIN
  37. PROC ABORT; # MACREL - ABORT TASK #
  38. PROC MESSAGE; # MACREL - ISSUE MESSAGE #
  39. PROC SSBTBW; # SS - TEST BIT IN WORD #
  40. FUNC XCDD C(10); # MACREL-CNVRT INT TO DEC DSP CD#
  41. END
  42. #
  43. ****
  44. #
  45.  
  46.  
  47.  
  48. # FORMAL PARAMETERS #
  49.  
  50. ITEM VCBORD I;
  51. ITEM STATS B;
  52.  
  53.  
  54. # ACTUAL PARAMETERS #
  55.  
  56. ITEM WORD I;
  57. ITEM BITN I;
  58.  
  59.  
  60. # INDUCTION VARIABLES #
  61.  
  62. ITEM I I; # DUMMY #
  63.  
  64.  
  65. # ITEMS #
  66.  
  67. ITEM TEMP C(10);
  68.  
  69.  
  70.  
  71.  
  72.  
  73. WORD = 0;
  74. BITN =VCBORD;
  75. FOR I = 0 WHILE (BITN-48) GR 0 # CONVERT ORDNL TO WORD/BIT #
  76. DO
  77. BEGIN
  78. BITN = BITN -48;
  79. WORD = WORD + 1;
  80. END
  81.  
  82.  
  83. # VERIFY VCB ORDINAL #
  84. $BEGIN
  85. IF WORD GR VTSIZE$
  86. OR (BITN - BITN/MAXENSEC$ * MAXENSEC$) EQ 0
  87. OR (BITN - BITN/MAXENSEC$ * MAXENSEC$) GR ACTENSEC$
  88. THEN
  89. BEGIN
  90. TEMP = XCDD(VCBORD);
  91. V$MSG[0] = "ILLEGAL VCB ORDINAL = ";
  92. V$ORD[0] = C<7,3>TEMP;
  93. V$PID[0] = "NVFUROS";
  94. MESSAGE(VCBMSG[0],DFILE$);
  95. ABORT;
  96. END
  97. $END
  98.  
  99. SSBTBW(VOT[WORD],BITN,STATS); # GET STATUS OF VCB ORDINAL #
  100. RETURN;
  101.  
  102. END # NVFUROS #
  103.  
  104. TERM
cdc/nos2.source/nam5871/nvfuros.txt ยท Last modified: 2023/08/05 17:23 by Site Administrator