User Tools

Site Tools


cdc:nos2.source:opl871:vemem

Table of Contents

VEMEM

Table Of Contents

Source Code

VEMEM.txt
  1. ASCII
  2. *WIDTH,80
  3. *NOSEQ
  4. .PROC,VEMEM*I
  5. ,VEMEM =(*N=#FILE)
  6. .
  7. .HELP
  8. T^H^E VEMEM ^U^T^I^L^I^T^Y ^I^S ^U^S^E^D ^T^O ^H^E^L^P ^Y^O^U ^C^O^N^F^I^G^U^R^E ^Y^O^U^R ^M^A^I^N^F^R^A^M^E ^M^E^M^O^R^Y
  9. ^F^O^R ^U^S^E ^I^N ^A NOS D^U^A^L S^T^A^T^E ^E^N^V^I^R^O^N^M^E^N^T. B^A^S^E^D ^O^N ^Y^O^U^R ^R^E^S^P^O^N^S^E^S, ^I^T
  10. ^P^R^O^V^I^D^E^S ^Y^O^U ^W^I^T^H ^T^H^E ^P^R^O^P^E^R CMRDECK ^A^N^D EQPDECK ^E^N^T^R^I^E^S ^T^O ^C^O^N^F^I^G^U^R^E
  11. ^M^E^M^O^R^Y ^F^O^R NOS ^A^N^D NOS/VE ^U^S^A^G^E.
  12.  
  13. V^A^L^U^E^S ^F^O^R M^A^I^N^F^R^A^M^E ^M^E^M^O^R^Y, NOS ^M^E^M^O^R^Y ^A^N^D NOS/VE ^M^E^M^O^R^Y, ^A^R^E ^E^N^T^E^R^E^D
  14. ^I^N M^E^G^A^B^Y^T^E^S ^A^N^D K^I^L^O^B^Y^T^E^S. T^H^E ^F^O^R^M^A^T ^Y^O^U ^S^H^O^U^L^D ^U^S^E ^I^S:
  15. M^E^G^A^B^Y^T^E^S,K^I^L^O^B^Y^T^E^S
  16. F^O^R ^E^X^A^M^P^L^E, ^T^O ^E^N^T^E^R 6.5 ^M^E^G^A^B^Y^T^E^S ^O^F NOS/VE, ^E^N^T^E^R 6,512 ^A^T ^T^H^E
  17. ^P^R^O^M^P^T ^F^O^R ^T^H^E ^M^E^G^A^B^Y^T^E ^P^O^R^T^I^O^N ^O^F NOS/VE ^M^E^M^O^R^Y. I^F ^Y^O^U ^D^O ^N^O^T ^E^N^T^E^R
  18. ^A ^K^I^L^O^B^Y^T^E ^P^O^R^T^I^O^N, ^I^T ^W^I^L^L ^D^E^F^A^U^L^T ^T^O 0.
  19.  
  20. A^T ^S^E^V^E^R^A^L ^P^O^I^N^T^S, ^T^H^I^S ^P^R^O^C^E^D^U^R^E ^W^I^L^L ^D^I^S^P^L^A^Y ^H^O^W ^Y^O^U^R ^M^E^M^O^R^Y ^I^S
  21. ^A^L^L^O^C^A^T^E^D ^A^M^O^N^G^S^T NOS, NOS/VE ^A^N^D ^T^H^E P^A^G^E T^A^B^L^E. T^H^E ^D^I^S^P^L^A^Y ^I^S
  22. ^I^N ^U^N^I^T^S ^O^F M^E^G^A^B^Y^T^E^S,K^I^L^O^B^Y^T^E^S. W^H^E^N ^A^D^D^I^N^G ^U^P ^T^H^E ^N^U^M^B^E^R^S, ^N^O^T^E ^T^H^A^T
  23. 1 M^E^G^A^B^Y^T^E = 1,024 K^I^L^O^B^Y^T^E^S, ^T^H^U^S:
  24.  
  25. 0,064 (M^E^G^A^B^Y^T^E^S, K^I^L^O^B^Y^T^E^S)
  26. + 1,960 (M^E^G^A^B^Y^T^E^S, K^I^L^O^B^Y^T^E^S)
  27. = 2,000 (M^E^G^A^B^Y^T^E^S, K^I^L^O^B^Y^T^E^S)
  28.  
  29. V^A^L^U^E^S ^F^O^R U^N^I^F^I^E^D E^X^T^E^N^D^E^D M^E^M^O^R^Y (UEM), U^S^E^R A^C^C^E^S^S^I^B^L^E E^X^T^E^N^D^E^D
  30. M^E^M^O^R^Y (UEC) ^A^N^D I^N^P^U^T O^U^T^P^U^T B^U^F^F^E^R^S (IOB) ^A^R^E ^E^N^T^E^R^E^D ^I^N ^U^N^I^T^S ^O^F
  31. 1000B O^C^T^A^L ^W^O^R^D^S.
  32.  
  33. C^O^N^S^U^L^T ^T^H^E NOS D^U^A^L S^T^A^T^E ^S^E^C^T^I^O^N ^O^F ^T^H^E NOS I^N^S^T^A^L^L^A^T^I^O^N H^A^N^D^B^O^O^K ^F^O^R
  34. ^A ^D^I^S^C^U^S^S^I^O^N ^O^N NOS ^A^N^D NOS/VE ^M^E^M^O^R^Y ^S^H^A^R^I^N^G ^A^N^D ^T^H^E
  35. D^E^A^D^S^T^A^R^T D^E^C^K^S ^S^E^C^T^I^O^N ^O^F ^T^H^E NOS 2 A^N^A^L^Y^S^I^S H^A^N^D^B^O^O^K ^F^O^R ^I^N^F^O^R^M^A^T^I^O^N ^O^N
  36. NOS ^M^E^M^O^R^Y ^A^L^L^O^C^A^T^I^O^N ^A^N^D ^T^E^R^M^S.
  37.  
  38. .ENDHELP
  39. .****
  40. .* NOTE - THESE PROCEDURES CONTAIN DISPLAY CODE (00) COLONS. THE COLONS
  41. .* MUST BE LEFT IN DISPLAY CODE IN ORDER FOR THE *NOTE*
  42. .* STATEMENTS TO WORK PROPERLY. DO NOT CONVERT THE COLONS TO
  43. .* ASCII FORMAT (@AD).
  44. .****
  45. .IF,SL=SCREEN.$LINE.
  46. $BEGIN(MF,VEMEM) ** MF IS RETURNED IN R2 AND R3
  47. $DISPLAY(R2,R3)
  48. $BEGIN(CHOICED,VEMEM)
  49. $BEGIN(CHOICE,VEMEM) ** CHOICE RETURNS IN R1
  50. $DISPLAY(R1)
  51. $BEGIN(MAIN1,VEMEM,R2+,R3+,R1+)
  52. .IF,SL.EQ.SCREEN.$SCREEN.
  53. $REVERT. VEMEM COMPLETE
  54. $EXIT. VEMEM
  55. .IF,SL.EQ.SCREEN.$SCREEN.
  56. $REVERT(ABORT) VEMEM FAILED
  57. *WEOR
  58. .PROC,CHOICED*I
  59. ,VEMEM =(*N=#FILE)
  60. .
  61. $NOTE.;;:I 1. C^O^N^F^I^G^U^R^E NOS/VE ^A^N^D NOS ^W^I^T^H
  62. $NOTE.;:I NO ^U^S^E^R ^E^X^T^E^N^D^E^D ^M^E^M^O^R^Y (UEC=0)
  63. $NOTE.;:I NO ^U^N^I^F^I^E^D ^E^X^T^E^N^D^E^D ^M^E^M^O^R^Y (UEM=0)
  64. $NOTE.;;:I 2. C^O^N^F^I^G^U^R^E NOS/VE ^A^N^D NOS ^W^I^T^H
  65. $NOTE.;:I ^U^S^E^R ^E^X^T^E^N^D^E^D ^M^E^M^O^R^Y (UEC=?)
  66. $NOTE.;:I NO ^U^N^I^F^I^E^D ^E^X^T^E^N^D^E^D ^M^E^M^O^R^Y (UEM=0)
  67. $NOTE.;;:I 3. C^O^N^F^I^G^U^R^E NOS/VE ^A^N^D NOS ^W^I^T^H
  68. $NOTE.;:I ^U^S^E^R ^E^X^T^E^N^D^E^D ^M^E^M^O^R^Y (UEC=?)
  69. $NOTE.;:I ^U^N^I^F^I^E^D ^E^X^T^E^N^D^E^D ^M^E^M^O^R^Y (UEM=?);
  70. $REVERT.CHOICEDISPLAY
  71. $EXIT. CHOICEDISPLAY
  72. $REVERT(ABORT)CHOICEDISPLAY
  73. *WEOR
  74. .PROC,CHOICE*I
  75. ,CHOICE [C^H^O^O^S^E ^C^O^N^F^I^G^U^R^A^T^I^O^N ^O^P^T^I^O^N] =(1,2,3)
  76. ,VEMEM =(*N=#FILE)
  77. .
  78. .HELP.
  79. C^H^O^O^S^E ^W^H^I^C^H ^T^Y^P^E ^O^F ^M^E^M^O^R^Y ^C^O^N^F^I^G^U^R^A^T^I^O^N ^Y^O^U ^W^I^S^H ^T^O ^D^E^F^I^N^E.
  80. T^H^E ^C^H^O^I^C^E^S ^A^R^E:
  81. 1. NOS/VE ^A^N^D NOS ^W^I^T^H^O^U^T ^A^N^Y ^U^S^E^R ^E^X^T^E^N^D^E^D ^M^E^M^O^R^Y.
  82. 2. NOS/VE ^A^N^D NOS ^W^I^T^H ^U^S^E^R ^E^X^T^E^N^D^E^D ^M^E^M^O^R^Y ^O^N^L^Y.
  83. 3. NOS/VE ^A^N^D NOS ^W^I^T^H ^E^X^T^E^N^D^E^D ^M^E^M^O^R^Y, ^P^O^S^S^I^B^L^Y ^F^O^R 895 ^D^I^S^K^S,
  84. ^U^S^E^R^S, ^O^R ^A ^M^A^S^S ^S^T^O^R^A^G^E ^D^E^V^I^C^E.
  85. .HELP,CHOICE,NOLIST.
  86. T^H^E^R^E ^A^R^E ^T^H^R^E^E ^P^O^S^S^I^B^L^E ^C^H^O^I^C^E^S.
  87. 1. NOS/VE ^A^N^D NOS ^W^I^T^H^O^U^T ^A^N^Y ^U^N^I^F^I^E^D ^E^X^T^E^N^D^E^D ^M^E^M^O^R^Y.
  88. U^N^I^F^I^E^D ^E^X^T^E^N^D^E^D ^M^E^M^O^R^Y ^C^A^N ^B^E ^U^S^E^D ^O^N NOS ^F^O^R ^T^H^E ^F^O^L^L^O^W^I^N^G:
  89. ^A. U^S^E^R ^A^C^C^E^S^S^I^B^L^E ^E^X^T^E^N^D^E^D ^M^E^M^O^R^Y - ^T^H^I^S ^I^S ^T^Y^P^I^C^A^L^L^Y ^U^S^E^D ^B^Y
  90. FORTRAN ^P^R^O^G^R^A^M^S ^F^O^R ^T^H^E ^S^T^O^R^A^G^E ^O^F ^L^A^R^G^E ^A^R^R^A^Y^S.
  91. R^E^F^E^R ^T^O ^T^H^E ^D^I^S^C^U^S^S^I^O^N ^O^F ^T^H^E LEVEL ^S^T^A^T^E^M^E^N^T ^I^N ^T^H^E
  92. FORTRAN 5 R^E^F^E^R^E^N^C^E M^A^N^U^A^L. T^H^I^S ^T^Y^P^E ^O^F ^M^E^M^O^R^Y ^I^S
  93. ^R^E^F^E^R^R^E^D ^T^O ^A^S UEC.
  94. ^B. E^X^T^E^N^D^E^D ^M^E^M^O^R^Y ^A^S ^A ^M^A^S^S ^S^T^O^R^A^G^E ^D^E^V^I^C^E - ^T^H^I^S ^I^S ^T^Y^P^I^C^A^L^L^Y
  95. ^U^S^E^D ^F^O^R ^A^L^T^E^R^N^A^T^E ^S^Y^S^T^E^M ^R^E^S^I^D^E^N^C^Y ^O^F ^F^R^E^Q^U^E^N^T^L^Y
  96. ^A^C^C^E^S^S^E^D ^S^Y^S^T^E^M ^R^O^U^T^I^N^E^S ^A^N^D ^F^O^R ^S^T^O^R^I^N^G ^S^E^C^O^N^D^A^R^Y ^R^O^L^L^O^U^T ^F^I^L^E^S.
  97. R^E^F^E^R ^T^O ^T^H^E D^E^A^D^S^T^A^R^T D^E^C^K^S ^S^E^C^T^I^O^N ^O^F ^T^H^E NOS A^N^A^L^Y^S^I^S M^A^N^U^A^L ^F^O^R
  98. ^D^I^S^C^U^S^S^I^O^N^S ^O^N:
  99. * EQ-E^X^T^E^N^D^E^D M^E^M^O^R^Y EST ^E^N^T^R^Y,
  100. * ASR-A^L^T^E^R^N^A^T^E S^Y^S^T^E^M L^I^B^R^A^R^Y D^E^V^I^C^E A^S^S^I^G^N^M^E^N^T E^N^T^R^Y,
  101. * MSAL-M^A^S^S S^T^O^R^A^G^E A^L^L^O^C^A^T^I^O^N C^O^N^T^R^O^L E^N^T^R^Y,
  102. * SRST (S^E^C^O^N^D^A^R^Y R^O^L^L^O^U^T T^H^R^E^S^H^O^L^D E^N^T^R^Y)
  103. ^C. I^N^P^U^T/O^U^T^P^U^T ^B^U^F^F^E^R^S ^F^O^R 895 ^D^I^S^K^S. R^E^F^E^R ^T^O ^T^H^E D^E^A^D^S^T^A^R^T D^E^C^K^S
  104. ^S^E^C^T^I^O^N ^O^F ^T^H^E NOS A^N^A^L^Y^S^I^S M^A^N^U^A^L ^F^O^R ^A ^D^I^S^C^U^S^S^I^O^N ^O^F 895 ^D^I^S^K^S
  105. ^A^N^D ^T^H^E XM EQPDECK ^E^N^T^R^Y ^F^O^R ^D^E^C^L^A^R^I^N^G ^E^X^T^E^N^D^E^D ^M^E^M^O^R^Y
  106. ^S^P^A^C^E ^F^O^R ^B^U^F^F^E^R^S ^O^R ^U^S^E^R ^A^C^C^E^S^S. T^H^I^S ^T^Y^P^E ^O^F ^M^E^M^O^R^Y ^I^S
  107. ^R^E^F^E^R^R^E^D ^T^O ^A^S IOB.
  108.  
  109. S^E^L^E^C^T ^T^H^I^S ^C^H^O^I^C^E ^I^F ^Y^O^U ^D^O ^N^O^T ^N^E^E^D ^U^N^I^F^I^E^D ^E^X^T^E^N^D^E^D ^M^E^M^O^R^Y.
  110.  
  111. 2. NOS/VE ^A^N^D NOS ^W^I^T^H ^U^S^E^R ^A^C^C^E^S^S^I^B^L^E ^E^X^T^E^N^D^E^D ^M^E^M^O^R^Y.
  112. T^H^I^S ^C^H^O^I^C^E ^P^E^R^M^I^T^S ^Y^O^U ^T^O ^C^O^N^F^I^G^U^R^E ^S^O^M^E ^O^F ^Y^O^U^R NOS ^M^E^M^O^R^Y
  113. ^F^O^R ^A^C^C^E^S^S ^B^Y ^U^S^E^R^S. T^H^I^S ^M^E^M^O^R^Y, ^C^A^L^L^E^D ^U^S^E^R ^A^C^C^E^S^S^I^B^L^E
  114. ^E^X^T^E^N^D^E^D ^M^E^M^O^R^Y (^O^R UEC), ^I^S ^T^Y^P^I^C^A^L^L^Y ^U^S^E^D ^F^O^R ^T^H^E ^S^T^O^R^A^G^E ^O^F ^L^A^R^G^E
  115. ^A^R^R^A^Y^S ^I^N FORTRAN ^P^R^O^G^R^A^M^S. R^E^F^E^R ^T^O ^T^H^E ^D^I^S^C^U^S^S^I^O^N ^O^F ^T^H^E
  116. LEVEL ^S^T^A^T^E^M^E^N^T ^I^N ^T^H^E FORTRAN 5 R^E^F^E^R^E^N^C^E M^A^N^U^A^L.
  117.  
  118. S^E^L^E^C^T ^T^H^I^S ^C^H^O^I^C^E ^I^F ^Y^O^U ^W^A^N^T ^T^O ^C^O^N^F^I^G^U^R^E ^S^O^M^E ^M^E^M^O^R^Y ^F^O^R
  119. ^U^S^E^R ^A^C^C^E^S^S^I^B^L^E ^E^X^T^E^N^D^E^D ^M^E^M^O^R^Y.
  120.  
  121. 3. NOS/VE ^A^N^D NOS ^W^I^T^H ^U^N^I^F^I^E^D ^E^X^T^E^N^D^E^D ^M^E^M^O^R^Y. I^N
  122. ^A^D^D^I^T^I^O^N ^T^O ^M^E^M^O^R^Y ^F^O^R NOS/VE ^A^N^D NOS, ^U^N^I^F^I^E^D ^E^X^T^E^N^D^E^D
  123. ^M^E^M^O^R^Y ^I^S ^A^L^S^O ^C^O^N^F^I^G^U^R^E^D. U^N^I^F^I^E^D ^E^X^T^E^N^D^E^D ^M^E^M^O^R^Y, ^R^E^F^E^R^R^E^D ^T^O ^A^S
  124. UEM, ^C^A^N ^B^E ^U^S^E^D ^O^N NOS ^F^O^R ^T^H^E ^F^O^L^L^O^W^I^N^G:
  125. ^A. U^S^E^R ^A^C^C^E^S^S^I^B^L^E ^E^X^T^E^N^D^E^D ^M^E^M^O^R^Y - ^T^H^I^S ^I^S ^T^Y^P^I^C^A^L^L^Y ^U^S^E^D ^B^Y
  126. FORTRAN ^P^R^O^G^R^A^M^S ^F^O^R ^T^H^E ^S^T^O^R^A^G^E ^O^F ^L^A^R^G^E ^A^R^R^A^Y^S.
  127. R^E^F^E^R ^T^O ^T^H^E ^D^I^S^C^U^S^S^I^O^N ^O^F ^T^H^E LEVEL ^S^T^A^T^E^M^E^N^T ^I^N ^T^H^E
  128. FORTRAN 5 R^E^F^E^R^E^N^C^E M^A^N^U^A^L. T^H^I^S ^T^Y^P^E ^O^F ^M^E^M^O^R^Y ^I^S
  129. ^R^E^F^E^R^R^E^D ^T^O ^A^S UEC.
  130. ^B. E^X^T^E^N^D^E^D ^M^E^M^O^R^Y ^A^S ^A ^M^A^S^S ^S^T^O^R^A^G^E ^D^E^V^I^C^E - ^T^H^I^S ^I^S ^T^Y^P^I^C^A^L^L^Y
  131. ^U^S^E^D ^F^O^R ^A^L^T^E^R^N^A^T^E ^S^Y^S^T^E^M ^R^E^S^I^D^E^N^C^Y ^O^F ^F^R^E^Q^U^E^N^T^L^Y
  132. ^A^C^C^E^S^S^E^D ^S^Y^S^T^E^M ^R^O^U^T^I^N^E^S ^A^N^D ^F^O^R ^S^T^O^R^I^N^G ^S^E^C^O^N^D^A^R^Y ^R^O^L^L^O^U^T ^F^I^L^E^S.
  133. R^E^F^E^R ^T^O ^T^H^E D^E^A^D^S^T^A^R^T D^E^C^K^S ^S^E^C^T^I^O^N ^O^F ^T^H^E NOS A^N^A^L^Y^S^I^S M^A^N^U^A^L ^F^O^R
  134. ^D^I^S^C^U^S^S^I^O^N^S ^O^N:
  135. * EQ-E^X^T^E^N^D^E^D M^E^M^O^R^Y EST ^E^N^T^R^Y,
  136. * ASR-A^L^T^E^R^N^A^T^E S^Y^S^T^E^M L^I^B^R^A^R^Y D^E^V^I^C^E A^S^S^I^G^N^M^E^N^T E^N^T^R^Y,
  137. * MSAL-M^A^S^S S^T^O^R^A^G^E A^L^L^O^C^A^T^I^O^N C^O^N^T^R^O^L E^N^T^R^Y,
  138. * SRST (S^E^C^O^N^D^A^R^Y R^O^L^L^O^U^T T^H^R^E^S^H^O^L^D E^N^T^R^Y)
  139. ^C. I^N^P^U^T/O^U^T^P^U^T ^B^U^F^F^E^R^S ^F^O^R 895 ^D^I^S^K^S. R^E^F^E^R ^T^O ^T^H^E D^E^A^D^S^T^A^R^T D^E^C^K^S
  140. ^S^E^C^T^I^O^N ^O^F ^T^H^E NOS A^N^A^L^Y^S^I^S M^A^N^U^A^L ^F^O^R ^A ^D^I^S^C^U^S^S^I^O^N ^O^F 895 ^D^I^S^K^S
  141. ^A^N^D ^T^H^E XM EQPDECK ^E^N^T^R^Y ^F^O^R ^D^E^C^L^A^R^I^N^G ^E^X^T^E^N^D^E^D ^M^E^M^O^R^Y
  142. ^S^P^A^C^E ^F^O^R ^B^U^F^F^E^R^S ^O^R ^U^S^E^R ^A^C^C^E^S^S. T^H^I^S ^T^Y^P^E ^O^F ^M^E^M^O^R^Y ^I^S
  143. ^R^E^F^E^R^R^E^D ^T^O ^A^S IOB.
  144.  
  145. S^E^L^E^C^T ^T^H^I^S ^C^H^O^I^C^E ^I^F ^Y^O^U ^N^E^E^D ^U^N^I^F^I^E^D ^E^X^T^E^N^D^E^D ^M^E^M^O^R^Y ^F^O^R
  146. ^A^N^Y ^O^F ^T^H^E ^A^B^O^V^E. NOTE: ^I^F ^Y^O^U ^O^N^L^Y ^N^E^E^D ^U^N^I^F^I^E^D ^E^X^T^E^N^D^E^D
  147. ^M^E^M^O^R^Y ^F^O^R ^J^U^S^T ^A., ^U^S^E ^C^H^O^I^C^E 2: NOS/VE ^A^N^D NOS ^W^I^T^H ^U^S^E^R
  148. ^A^C^C^E^S^S^I^B^L^E ^E^X^T^E^N^D^E^D ^M^E^M^O^R^Y.
  149. .ENDHELP
  150. .*
  151. .IF, (CHOICE=1) ,CHOICE1.
  152. $NOTE.;;:I A^L^L^O^C^A^T^E NOS/VE ^A^N^D NOS ^O^N^L^Y.;
  153. .ELSE(CHOICE1)
  154. .IF, (CHOICE=2) ,CHOICE1.
  155. $NOTE.;;:I A^L^L^O^C^A^T^E NOS/VE ^A^N^D NOS, ^T^H^E^N
  156. $NOTE.;:I ^A^L^L^O^C^A^T^E ^U^S^E^R ^E^X^T^E^N^D^E^D ^M^E^M^O^R^Y (UEC).;
  157. .ELSE(CHOICE1)
  158. $NOTE.;;:I A^L^L^O^C^A^T^E NOS/VE ^A^N^D NOS, ^T^H^E^N
  159. $NOTE.;:I ^A^L^L^O^C^A^T^E ^U^N^I^F^I^E^D ^E^X^T^E^N^D^E^D ^M^E^M^O^R^Y (UEM).
  160. $NOTE.;:I A^L^L^O^C^A^T^E ^U^S^E^R ^E^X^T^E^N^D^E^D ^M^E^M^O^R^Y (UEC)
  161. $NOTE.;:I ^A^N^D 895 ^D^E^V^I^C^E ^B^U^F^F^E^R^S (IOB).;
  162. .ENDIF(CHOICE1)
  163. $REVERT(EX)$SET(R1=CHOICE)
  164. $EXIT. CHOICE
  165. $REVERT(ABORT) CHOICE FAILED
  166. *WEOR
  167. .PROC,MAIN1*I
  168. ,MB =(*S3/D)
  169. ,KB =(*S3/D)
  170. ,OPTION =(*A)
  171. ,VEMEM =(*N=#FILE)
  172. .
  173. .SET(#MF=STRD(MB*128+KB/8)) ** COMBINED TOTAL MEMORY
  174. .SET(#PT=STRD((MF+1023)/1024+8)) ** PAGE TABLE
  175. .IF, (OPTION = 1), MAIN1A.
  176. .SET(#UP=STRD(2048)) ** NOS MAXIMUM WITHOUT EXTENDED MEMORY
  177. .ELSE,MAIN1A.
  178. .SET(#UP=STRD(16384)) ** NOS MAXIMUM WITH EXTENDED MEMORY
  179. .ENDIF,MAIN1A.
  180. $BEGIN(VENOS,VEMEM) ** RETURNS R1=1=NOS, R1=2=VE
  181. $IF, (R1=1) ,MAIN1B.
  182. .* CHOOSE AN AMOUNT OF NOS MEMORY
  183. .* (128) = LOWER BOUND = 1 MEGABYTE
  184. .IF, (MF-832-PT .LT. UP) ,MAIN1B1.
  185. .SET(#UP=STRD(MF-832-PT)) ** SET NOS MEMORY LIMIT
  186.   .ENDIF(MAIN1B1)
  187.   $BEGIN(NOS,VEMEM,MF,0,128,UP,OPTION,FIRST=YES)
  188. $ELSE(MAIN1B)
  189.   .* CHOOSE AN AMOUNT OF VE MEMORY
  190.   .* (832) = LOWER BOUND = 6.5 MEGABYTE
  191.   .IF, (MF-832-PT .GT. UP) ,MAIN1B2.
  192.   .SET(#LOW=STRD(MF-UP-PT)) ** SET VE MIN BASED ON NOS MAX
  193. .ELSE(MAIN1B2)
  194. .SET(#LOW=STRD(832))
  195.   .ENDIF(MAIN1B2)
  196.   .SET(#UP=STRD(MF-128-PT)) ** UPPER = #MF-NOS-RESERVED
  197. $BEGIN(VE,VEMEM,MF,0,LOW,UP,OPTION,FIRST=YES)
  198. $ENDIF(MAIN1B)
  199. $REVERT. MAIN1 COMPLETE
  200. $EXIT. MAIN1
  201. $REVERT(ABORT) MAIN1 FAILED
  202. *WEOR
  203. .PROC,NOS*I
  204. ,MF =(*A)
  205. ,NOS =(*A)
  206. ,LOW =(*A)
  207. ,UP =(*A)
  208. ,OPTION =(*A)
  209. ,FIRST =(*N=NO,YES,NO)
  210. ,VEMEM =(*N=#FILE)
  211. .
  212. .SET(#PT=STRD((MF+1023)/1024+8)) ** PAGE TABLE
  213. .SET(#VE=STRD(MF-NOS-PT)) ** VE MEMORY
  214. .IF, ($FIRST$ .EQ. $NO$) ,NOS0.
  215. $NOTE.;;:I C^U^R^R^E^N^T ^C^H^O^I^C^E^S (M^B^Y^T^E^S,K^B^Y^T^E^S):;
  216. $BEGIN(DISPB,VEMEM,#PT,PT)
  217.   $BEGIN(DISPB,VEMEM,#NOS,NOS)
  218. $BEGIN(DISPB,VEMEM,#VE,VE)
  219.   $BEGIN(DISPB,VEMEM,#MF,MF)
  220. $BEGIN(CHOOSE1,VEMEM,$#NOS$) CHOICE RETURNS IN R1
  221. .ELSE(NOS0)
  222.   $SET(R1=1)
  223. .ENDIF(NOS0)
  224. $IF, (R1 = 1) ,NOS1.
  225.   $BEGIN(DISRNGB,VEMEM,#NOS,LOW,UP)
  226. $BEGIN(NOSQ,VEMEM,,,MF,LOW,UP,OPTION) ** NOSQ RECALLS #NOS
  227. $ELSE(NOS1)
  228. .* QUIT WAS CHOSEN.
  229. $IF, ($OPTION$ .EQ. $1$) ,NOS2)
  230. $BEGIN(DECKS,VEMEM,MF,NOS,VE,#OPTION=OPTION)
  231.   $ELSE(NOS2)
  232.   $BEGIN(MAIN_OPTION,VEMEM,MF,NOS,VE,#OPTION=OPTION)
  233. $ENDIF(NOS2)
  234. $ENDIF(NOS1)
  235. $REVERT. #NOS
  236. $EXIT. #NOS
  237. $REVERT(ABORT) #NOS FAILED
  238. *WEOR
  239. .PROC,VE*I
  240. ,MF =(*A)
  241. ,VE =(*A,*N=0)
  242. ,LOW =(*A)
  243. ,UP =(*A)
  244. ,OPTION =(*A)
  245. ,FIRST =(*N=NO,YES,NO)
  246. ,VEMEM =(*N=#FILE)
  247. .
  248. .SET(#PT=STRD((MF+1023)/1024+8)) ** PAGE TABLE
  249. .SET(#NOS=STRD(MF-VE-PT)) ** NOS MEMORY
  250. .IF, (OPTION .EQ. 1) ,VE0.
  251. .IF, (NOS .GT. 2048) ,VE0A.
  252. .SET(#NOS=STRD(2048))
  253.   .ENDIF,VE0A.
  254. .ELSE,VE0.
  255.   .IF, (NOS .GT. 16384) ,VE0B.
  256.   .SET(#NOS=STRD(16384))
  257. .ENDIF,VE0B.
  258. .ENDIF,VE0.
  259. .IF, (VE .NE. 0), VE1.
  260. .SET(#VE=STRD(MF-NOS-PT)) ** VE MEMORY ADJUSTED
  261. .ENDIF,VE1.
  262. .IF, ($FIRST$ .EQ. $NO$) ,VE2.
  263.   $NOTE.;;:I C^U^R^R^E^N^T ^C^H^O^I^C^E^S (M^B^Y^T^E^S,K^B^Y^T^E^S):;
  264.   $BEGIN(DISPB,VEMEM,#PT,PT)
  265. $BEGIN(DISPB,VEMEM,#NOS,NOS)
  266.   $BEGIN(DISPB,VEMEM,#VE,VE)
  267. $BEGIN(DISPB,VEMEM,#MF,MF)
  268.   $BEGIN(CHOOSE1,VEMEM,$#VE$) CHOICE RETURNS IN R1
  269. .ELSE(VE2)
  270. $SET(R1=1)
  271. .ENDIF(VE2)
  272. $IF, (R1 = 1) ,VE3.
  273. $BEGIN(DISRNGB,VEMEM,#VE,LOW,UP)
  274.   $BEGIN(VEQ,VEMEM,,,MF,LOW,UP,OPTION) ** VEQ RECALLS #VE
  275. $ELSE(VE3)
  276. .* QUIT WAS CHOSEN.
  277. $IF, ($OPTION$ .EQ. $1$) ,VE4)
  278. $BEGIN(DECKS,VEMEM,MF,NOS,VE,#OPTION=OPTION)
  279.   $ELSE(VE4)
  280.   $BEGIN(MAIN_OPTION,VEMEM,MF,NOS,VE,#OPTION=OPTION)
  281. $ENDIF(VE4)
  282. $ENDIF(VE3)
  283. $REVERT. #VE
  284. $EXIT. #VE
  285. $REVERT(ABORT) #VE FAILED
  286. *WEOR
  287. .PROC,MAIN2*I
  288. ,MF =(*S6/D)
  289. ,NOS =(*A)
  290. ,VE =(*A)
  291. ,LOW =(*N=0)
  292. ,OPTION =(*A)
  293. ,VEMEM =(*N=#FILE)
  294. .
  295. .* CHOOSE AN AMOUNT OF UEC MEMORY
  296. .IF,(NOS.GT.2048),MAIN2A.
  297. .SET(#LOW=STRD(NOS-2048)) ** LOWER BOUND = NOS-16MB FOR JOBS
  298. .ENDIF,MAIN2A.
  299. .SET(#UP=STRD(NOS-128)) ** UPPER BOUND = NOS-1MB FOR JOBS
  300. $BEGIN(UEC,VEMEM,MF,NOS,VE,0,LOW,UP,OPTION,FIRST=YES)
  301. $REVERT. MAIN2 COMPLETE
  302. $EXIT. MAIN2
  303. $REVERT(ABORT) MAIN2 FAILED
  304. *WEOR
  305. .PROC,UEC*I
  306. ,MF =(*A)
  307. ,NOS =(*A)
  308. ,VE =(*A)
  309. ,UEC =(*A)
  310. ,LOW =(*A)
  311. ,UP =(*A)
  312. ,OPTION =(*A)
  313. ,FIRST =(*N=NO,YES,NO)
  314. ,VEMEM =(*N=#FILE)
  315. .
  316. .SET(#JOBS=STRD(NOS-UEC)) ** SYSTEM AND JOB MEMORY
  317. .IF, ($FIRST$ .EQ. $NO$) ,UEC0.
  318.   $NOTE.;;:I C^U^R^R^E^N^T ^C^H^O^I^C^E^S (O^C^T^A^L/1000B ^W^O^R^D^S):;
  319.   $BEGIN(DISPW,VEMEM,#JOBS,JOBS)
  320. $BEGIN(DISPW,VEMEM,#UEC,UEC)
  321.   $BEGIN(DISPW,VEMEM,#NOS,NOS)
  322. $BEGIN(CHOOSE1,VEMEM,$#UEC$) CHOICE RETURNS IN R1
  323. .ELSE(UEC0)
  324.   $SET(R1=1)
  325. .ENDIF(UEC0)
  326. $IF, (R1 = 1) ,UEC1.
  327.   $BEGIN(DISRNGW,VEMEM,#UEC,LOW,UP)
  328. $BEGIN(UECQ,VEMEM,,MF,NOS,VE,LOW,UP,OPTION) ** UECQ RECALLS #UEC
  329. $ELSE(UEC1)
  330. .* QUIT WAS CHOSEN.
  331. .* NOW ALLOCATE UEC AND IOB
  332. $BEGIN(DECKS,VEMEM,MF,NOS,VE,#UEC=UEC,#OPTION=OPTION)
  333. $ENDIF(UEC1)
  334. $REVERT. #UEC
  335. $EXIT. #UEC
  336. $REVERT(ABORT) #UEC
  337. *WEOR
  338. .PROC,MAIN3*I
  339. ,MF =(*S6/D)
  340. ,NOS =(*A)
  341. ,VE =(*A)
  342. ,OPTION =(*A)
  343. ,LOW =(*N=4)
  344. ,VEMEM =(*N=#FILE)
  345. .
  346. .* CHOOSE AN AMOUNT OF UEM MEMORY
  347. .* (4) = LOWER BOUND = 4 KWORDS
  348. .IF,(NOS.GT.(2048+LOW)),MAIN3A.
  349. .SET(#LOW=STRD(NOS-2048)) ** LOWER BOUND = NOS-16MB FOR JOBS
  350. .ENDIF,MAIN3A.
  351. .SET(#UP=STRD(NOS-128)) ** UPPER BOUND = NOS-1MB FOR JOBS
  352. .IF, (UP .LT. 4) ,MAIN3B.
  353. $NOTE.;;:I I^N^S^U^F^F^I^C^I^E^N^T #NOS ^M^E^M^O^R^Y ^T^O ^A^L^L^O^C^A^T^E
  354.   $NOTE.;:I UEM. P^L^E^A^S^E ^R^E-^S^T^A^R^T VEMEM.;
  355.   $REVERT.
  356. .ELSE(MAIN3B)
  357. $BEGIN(UEM,VEMEM,MF,NOS,VE,0,LOW,UP,OPTION,FIRST=YES)
  358. $REVERT. MAIN3 COMPLETE
  359. .ENDIF(MAIN3B)
  360. $EXIT. MAIN3
  361. $REVERT(ABORT) MAIN3 FAILED
  362. *WEOR
  363. .PROC,UEM*I
  364. ,MF =(*A)
  365. ,NOS =(*A)
  366. ,VE =(*A)
  367. ,UEM =(*A)
  368. ,LOW =(*A)
  369. ,UP =(*A)
  370. ,OPTION =(*A)
  371. ,FIRST =(*N=NO,YES,NO)
  372. ,VEMEM =(*N=#FILE)
  373. .
  374. .SET(#JOBS=STRD(NOS-UEM)) ** SYSTEM AND JOB MEMORY
  375. .IF, ($FIRST$ .EQ. $NO$) ,UEM0.
  376.   $NOTE.;;:I C^U^R^R^E^N^T ^C^H^O^I^C^E^S (O^C^T^A^L/1000B ^W^O^R^D^S):;
  377.   $BEGIN(DISPW,VEMEM,#JOBS,JOBS)
  378. $BEGIN(DISPW,VEMEM,#UEM,UEM)
  379.   $BEGIN(DISPW,VEMEM,#NOS,NOS)
  380. $BEGIN(CHOOSE1,VEMEM,$#UEM$)CHOICE RETURNS IN R1
  381. .ELSE(UEM0)
  382.   $SET(R1=1)
  383. .ENDIF(UEM0)
  384. $IF, (R1 = 1) ,UEM1.
  385.   $BEGIN(DISRNGW,VEMEM,#UEM,LOW,UP)
  386. $BEGIN(UEMQ,VEMEM,,MF,NOS,VE,LOW,UP,OPTION) ** UEMQ RECALLS #UEM
  387. $ELSE(UEM1)
  388. .* QUIT WAS CHOSEN.
  389. .* NOW ALLOCATE UEC AND IOB
  390. $BEGIN(MAIN4,VEMEM,MF,NOS,VE,UEM,#OPTION=OPTION)
  391. $ENDIF(UEM1)
  392. $REVERT. #UEM
  393. $EXIT. #UEM
  394. $REVERT(ABORT) #UEM
  395. *WEOR
  396. .PROC,MAIN4*I
  397. ,MF =(*S6/D)
  398. ,NOS =(*A)
  399. ,VE =(*A)
  400. ,UEM =(*A)
  401. ,OPTION =(*A)
  402. ,VEMEM =(*N=#FILE)
  403. .
  404. .* CHOOSE AN AMOUNT OF UEC/IOB MEMORY
  405. $BEGIN(UIO,VEMEM,MF,NOS,VE,UEM,0,0,OPTION,FIRST=YES)
  406. $REVERT. MAIN4 COMPLETE
  407. $EXIT. MAIN4
  408. $REVERT(ABORT) MAIN4 FAILED
  409. *WEOR
  410. .PROC,UIO*I
  411. ,MF =(*A)
  412. ,NOS =(*A)
  413. ,VE =(*A)
  414. ,UEM =(*A)
  415. ,IOB =(*A)
  416. ,UEC =(*A)
  417. ,OPTION =(*A)
  418. ,FIRST =(*N=NO,YES,NO)
  419. ,VEMEM =(*N=#FILE)
  420. .
  421. .SET(#ASR=STRD(UEM-IOB-UEC)) ** ASR AND SECONDARY ROLLOUT
  422. .IF, ($FIRST$ .EQ. $NO$) ,UIO0.
  423.   $NOTE.;;:I C^U^R^R^E^N^T ^C^H^O^I^C^E^S (O^C^T^A^L/1000B ^W^O^R^D^S):;
  424.   $BEGIN(DISPW,VEMEM,#ASR,ASR)
  425. $BEGIN(DISPW,VEMEM,#IOB,IOB)
  426.   $BEGIN(DISPW,VEMEM,#UEC,UEC)
  427. $BEGIN(DISPW,VEMEM,#UEMT,UEM)
  428.   $BEGIN(CHOOSE1,VEMEM,$#IOB/#UEC$) CHOICE RETURNS IN R1
  429. .ELSE(UIO0)
  430.   $SET(R1=1)
  431. .ENDIF(UIO0)
  432. $IF, (R1 = 1) ,UIO1.
  433.   $BEGIN(DISRNGW,VEMEM,#IOB,16,UEM)
  434. $BEGIN(DISRNGW,VEMEM,#UEC,0,UEM)
  435.   $BEGIN(UIOQ,VEMEM,,,MF,NOS,VE,UEM,OPTION) ** UIOQ RECALLS UIO
  436. $ELSE(UIO1)
  437.   .* QUIT WAS CHOSEN.
  438.   $BEGIN(DECKS,VEMEM,MF,NOS,VE,UEM,IOB,UEC,#OPTION=OPTION)
  439. $ENDIF(UIO1)
  440. $REVERT. UIO
  441. $EXIT. UIO
  442. $REVERT(ABORT) UIO
  443. *WEOR
  444. .PROC,CHOOSE1*I
  445. ,ARG =(*A)
  446. ,DF =(*N=#DATA)
  447. .
  448. $NOTE.
  449. $REVERT(EX)$BEGIN,DF,DF.
  450. .DATA,DF.
  451. .PROC,DF*I
  452. ,CHOICE [C^H^A^N^G^E ARG ^A^L^L^O^C^A^T^I^O^N (Y^E^S ^O^R N^O)] =(Y=1,YES=1,YE=1,NO=0,N=0)
  453. .
  454. $UNLOAD,DF.
  455. $REVERT(EX)$SET(R1=CHOICE)
  456. *WEOR
  457. .PROC,VENOS*M
  458. ,CHOICE=
  459. (1 "S^P^E^C^I^F^Y ^A^M^O^U^N^T ^O^F ^M^E^M^O^R^Y ^F^O^R NOS"
  460. ,2 "S^P^E^C^I^F^Y ^A^M^O^U^N^T ^O^F ^M^E^M^O^R^Y ^F^O^R NOS/VE")
  461. .
  462. .HELP
  463. Y^O^U ^M^A^Y ^C^H^O^O^S^E ^T^O:
  464. 1) A^L^L^O^C^A^T^E ^A ^S^P^E^C^I^F^I^C ^A^M^O^U^N^T ^O^F ^Y^O^U^R ^M^A^I^N^F^R^A^M^E^S ^M^E^M^O^R^Y ^F^O^R NOS
  465. (^I^N^C^L^U^D^I^N^G UEM, UEC ^A^N^D/^O^R IOB ^I^F ^A^P^P^L^I^C^A^B^L^E) ^A^N^D ^G^I^V^E ^T^H^E
  466. ^R^E^M^A^I^N^D^E^R ^O^F ^M^E^M^O^R^Y ^T^O NOS/VE.
  467. 2) A^L^L^O^C^A^T^E ^A ^S^P^E^C^I^F^I^C ^A^M^O^U^N^T ^O^F ^Y^O^U^R ^M^A^I^N^F^R^A^M^E^S ^M^E^M^O^R^Y ^F^O^R NOS/VE ^A^N^D
  468. ^G^I^V^E ^T^H^E ^R^E^M^A^I^N^D^E^R ^T^O NOS (^I^N^C^L^U^D^I^N^G UEM, UEC, ^A^N^D/^O^R IOB ^I^F
  469. ^A^P^P^L^I^C^A^B^L^E).
  470. .HELP,1
  471. B^Y ^S^E^L^E^C^T^I^N^G ^T^H^I^S ^O^P^T^I^O^N, ^Y^O^U ^W^I^L^L ^B^E ^P^R^O^M^P^T^E^D ^T^O ^S^E^L^E^C^T ^A ^S^P^E^C^I^F^I^C
  472. ^A^M^O^U^N^T ^O^F ^M^E^M^O^R^Y (^I^N ^M^E^G^A^B^Y^T^E^S) ^F^O^R NOS. T^H^E ^R^E^M^A^I^N^D^E^R ^O^F ^Y^O^U^R ^M^E^M^O^R^Y
  473. ^W^I^L^L ^B^E ^A^L^L^O^C^A^T^E^D ^F^O^R NOS/VE.
  474. .HELP,2
  475. B^Y ^S^E^L^E^C^T^I^N^G ^T^H^I^S ^O^P^T^I^O^N, ^Y^O^U ^W^I^L^L ^B^E ^P^R^O^M^P^T^E^D ^T^O ^S^E^L^E^C^T ^A ^S^P^E^C^I^F^I^C
  476. ^A^M^O^U^N^T ^O^F ^M^E^M^O^R^Y (^I^N ^M^E^G^A^B^Y^T^E^S) ^F^O^R NOS/VE. T^H^E ^R^E^M^A^I^N^D^E^R ^O^F ^Y^O^U^R
  477. ^M^E^M^O^R^Y ^W^I^L^L ^B^E ^A^L^L^O^C^A^T^E^D ^F^O^R NOS.
  478. .ENDHELP
  479. $REVERT(EX)$SET(R1=CHOICE)
  480. *WEOR
  481. .PROC,MF*I"S^P^E^C^I^F^Y ^T^H^E ^A^M^O^U^N^T ^O^F ^M^A^I^N^F^R^A^M^E ^M^E^M^O^R^Y."
  482. ,MBYTE [M^E^G^A^B^Y^T^E ^P^O^R^T^I^O^N ^O^F ^P^H^Y^S^I^C^A^L ^M^E^M^O^R^Y(8-256)] =(*S3/D)
  483. ,KBYTE [K^I^L^O^B^Y^T^E ^P^O^R^T^I^O^N ^O^F ^P^H^Y^S^I^C^A^L ^M^E^M^O^R^Y(0-960)] =(*S3/D,*N=0)
  484. ,LOW =(*N=8)
  485. ,UP =(*N=256)
  486. ,VEMEM =(*N=#FILE)
  487. .
  488. .HELP.
  489. S^U^P^P^L^Y ^T^H^E ^A^M^O^U^N^T ^O^F ^P^H^Y^S^I^C^A^L ^M^E^M^O^R^Y (^M^E^M^O^R^Y ^T^O ^B^E ^U^S^E^D ^B^Y ^B^O^T^H
  490. NOS ^A^N^D NOS/VE) ^O^N ^Y^O^U^R ^M^A^I^N^F^R^A^M^E. T^H^I^S ^V^A^L^U^E ^I^S ^G^I^V^E^N ^I^N ^T^E^R^M^S
  491. ^O^F
  492. M^B^Y^T^E^S,K^B^Y^T^E^S
  493. T^H^A^T ^I^S: ^I^N^T^E^G^E^R ^A^M^O^U^N^T ^I^N ^M^E^G^A^B^Y^T^E^S ^C^O^M^M^A ^F^R^A^C^T^I^O^N^A^L ^A^M^O^U^N^T ^I^N
  494. ^K^I^L^O^B^Y^T^E^S.
  495.  
  496. I^F ^Y^O^U^R ^P^H^Y^S^I^C^A^L ^M^E^M^O^R^Y ^S^I^Z^E ^I^S 16 ^M^E^G^A^B^Y^T^E^S, ^Y^O^U
  497. ^W^O^U^L^D ^E^N^T^E^R:
  498. 16,0
  499. .HELP,MBYTE,NOLIST.
  500. H^O^W ^M^U^C^H ^P^H^Y^S^I^C^A^L ^M^E^M^O^R^Y ^Y^O^U ^H^A^V^E, ^I^N ^I^N^T^E^G^E^R ^M^E^G^A^B^Y^T^E^S,^K^I^L^O^B^Y^T^E^S. F^O^R
  501. ^E^X^A^M^P^L^E, ^I^F ^Y^O^U ^H^A^V^E 16 ^M^E^G^A^B^Y^T^E^S ^O^F ^P^H^Y^S^I^C^A^L ^M^E^M^O^R^Y, ^E^N^T^E^R 16,0.
  502.  
  503. I^F ^Y^O^U ^H^A^V^E ^A ^N^O^N-^I^N^T^E^G^E^R ^M^E^G^A^B^Y^T^E ^A^M^O^U^N^T ^O^F ^P^H^Y^S^I^C^A^L ^M^E^M^O^R^Y, ^E^N^T^E^R ^T^H^E
  504. ^I^N^T^E^G^E^R ^P^O^R^T^I^O^N, ^A ^C^O^M^M^A, ^A^N^D ^T^H^E ^R^E^M^A^I^N^D^E^R ^I^N ^K^I^L^O^B^Y^T^E^S.
  505. F^O^R ^E^X^A^M^P^L^E, ^I^F ^Y^O^U ^H^A^V^E 8.5 ^M^E^G^A^B^Y^T^E^S ^O^F ^P^H^Y^S^I^C^A^L ^M^E^M^O^R^Y, ^E^N^T^E^R:
  506. 8,512
  507. .HELP,KBYTE,NOLIST.
  508. A^N^Y ^M^O^R^E ^P^H^Y^S^I^C^A^L ^M^E^M^O^R^Y ^T^H^A^T ^Y^O^U ^H^A^V^E, AFTER ^Y^O^U ^H^A^V^E ^E^X^P^R^E^S^S^E^D ^I^T ^I^N
  509. ^M^E^G^A^B^Y^T^E^S. E^N^T^E^R ^A ^V^A^L^U^E ^F^O^R ^T^H^I^S ^O^N^L^Y ^I^F ^Y^O^U ^H^A^V^E ^A ^N^O^N-^I^N^T^E^G^E^R
  510. ^M^E^G^A^B^Y^T^E ^A^M^O^U^N^T ^O^F ^P^H^Y^S^I^C^A^L ^M^E^M^O^R^Y. F^O^R ^E^X^A^M^P^L^E, ^I^F ^Y^O^U ^H^A^V^E 8.5
  511. ^M^E^G^A^B^Y^T^E^S ^O^F ^P^H^Y^S^I^C^A^L ^M^E^M^O^R^Y, ^Y^O^U ^W^O^U^L^D ^E^N^T^E^R:
  512. 512
  513. ^A^T ^T^H^I^S ^P^R^O^M^P^T ^F^O^R ^T^H^E ^N^O^N-^I^N^T^E^G^E^R (.5) ^M^E^G^A^B^Y^T^E ^P^O^R^T^I^O^N ^O^F ^Y^O^U^R
  514. ^P^H^Y^S^I^C^A^L ^M^E^M^O^R^Y.
  515.  
  516. T^H^E ^F^O^L^L^O^W^I^N^G ^T^A^B^L^E ^L^I^S^T^S ^T^H^E ^K^I^L^O^B^Y^T^E ^V^A^L^U^E ^F^O^R ^F^R^A^C^T^I^O^N^S ^O^F
  517. ^M^E^G^A^B^Y^T^E^S.
  518. K^I^L^O^B^Y^T^E F^R^A^C^T^I^O^N ^O^F ^A M^E^G^A^B^Y^T^E
  519. 64 1/16
  520. 128 1/8
  521. 192 3/16
  522. 256 1/4
  523. 320 5/16
  524. 384 3/8
  525. 448 7/16
  526. 512 1/2
  527. 576 9/16
  528. 640 5/8
  529. 704 11/16
  530. 768 3/4
  531. 832 13/16
  532. 896 7/8
  533. 960 15/16
  534. .ENDHELP
  535. .*
  536. .SET(#KBYTE=STRD(((KBYTE+63)/64)*64)).
  537. .IF, (MBYTE .LT. LOW) .OR. (MBYTE*128+KBYTE/8 .GT. UP*128) ,MF1.
  538.   $NOTE.;;:I M^E^M^O^R^Y ^R^A^N^G^E ^I^S LOW - UP ^M^E^G^A^B^Y^T^E^S.
  539.   $NOTE.;:I P^L^E^A^S^E ^R^E-^E^N^T^E^R.;
  540.   $REVERT(EX)$BEGIN(MF,VEMEM)
  541. .ENDIF(MF1)
  542. .* RETURN MBYTE IN R2, KBYTE IN R3.
  543. $REVERT,EX.$SET(R2=MBYTE,R3=KBYTE)
  544. $EXIT. MF
  545. $REVERT(ABORT) MF
  546. *WEOR
  547. .PROC,VEQ*I"S^P^E^C^I^F^Y ^T^H^E ^A^M^O^U^N^T ^O^F NOS/VE ^M^E^M^O^R^Y."
  548. ,MBYTE [M^E^G^A^B^Y^T^E ^P^O^R^T^I^O^N ^O^F VE ^M^E^M^O^R^Y] =(*S1..3/D)
  549. ,KBYTE [K^I^L^O^B^Y^T^E ^P^O^R^T^I^O^N ^O^F ^M^A^I^N^F^R^A^M^E ^M^E^M^O^R^Y] =(*S3/D,*N=0)
  550. ,MF =(*A)
  551. ,LOW =(*A)
  552. ,UP =(*A)
  553. ,OPTION =(*A)
  554. ,VEMEM =(*N=#FILE)
  555. .
  556. .HELP,MBYTE,NOLIST.
  557. H^O^W ^M^U^C^H ^M^E^M^O^R^Y NOS/VE ^I^S ^T^O ^U^S^E, ^I^N ^I^N^T^E^G^E^R
  558. ^M^E^G^A^B^Y^T^E^S,^K^I^L^O^B^Y^T^E^S
  559. F^O^R ^E^X^A^M^P^L^E, ^T^O ^S^P^E^C^I^F^Y NOS/VE ^I^S ^T^O ^U^S^E 16 ^M^E^G^A^B^Y^T^E^S ^O^F
  560. ^M^E^M^O^R^Y, ^E^N^T^E^R
  561. 16,0
  562. T^O ^S^P^E^C^I^F^Y ^A ^N^O^N-^I^N^T^E^G^E^R ^M^E^G^A^B^Y^T^E ^A^M^O^U^N^T ^O^F ^M^E^M^O^R^Y,
  563. ^E^N^T^E^R ^T^H^E ^I^N^T^E^G^E^R ^P^O^R^T^I^O^N, ^A ^C^O^M^M^A, ^A^N^D ^T^H^E ^R^E^M^A^I^N^D^E^R ^I^N
  564. ^K^I^L^O^B^Y^T^E^S.
  565. F^O^R ^E^X^A^M^P^L^E, ^T^O ^S^P^E^C^I^F^Y 8.5 ^M^E^G^A^B^Y^T^E^S ^O^F ^M^E^M^O^R^Y, ^E^N^T^E^R
  566. 8,512
  567.  
  568. NOTE: ^Y^O^U ^M^U^S^T ^R^E^S^E^R^V^E ^A ^M^I^N^I^M^U^M ^O^F 6.5 ^M^E^G^A^B^Y^T^E^S ^F^O^R NOS/VE.
  569. .HELP,KBYTE,NOLIST.
  570. A^N^Y ^M^O^R^E NOS/VE ^M^E^M^O^R^Y, AFTER ^Y^O^U ^H^A^V^E ^E^X^P^R^E^S^S^E^D ^I^T ^I^N
  571. ^M^E^G^A^B^Y^T^E^S. E^N^T^E^R ^A ^V^A^L^U^E ^F^O^R ^T^H^I^S ^O^N^L^Y ^I^F ^Y^O^U ^H^A^V^E ^A
  572. ^N^O^N-^I^N^T^E^G^E^R ^M^E^G^A^B^Y^T^E ^A^M^O^U^N^T ^O^F ^M^E^M^O^R^Y ^F^O^R NOS/VE.
  573. F^O^R ^E^X^A^M^P^L^E, ^T^O ^S^P^E^C^I^F^Y 8.5 ^M^E^G^A^B^Y^T^E^S ^O^F ^M^E^M^O^R^Y ^F^O^R NOS/VE,
  574. ^Y^O^U ^W^O^U^L^D ^E^N^T^E^R
  575. 512
  576. ^A^T ^T^H^I^S ^P^R^O^M^P^T ^F^O^R ^T^H^E ^N^O^N-^I^N^T^E^G^E^R (.5) ^M^E^G^A^B^Y^T^E ^P^O^R^T^I^O^N ^O^F
  577. ^Y^O^U^R ^M^E^M^O^R^Y ^A^M^O^U^N^T.
  578.  
  579. T^H^E ^F^O^L^L^O^W^I^N^G ^T^A^B^L^E ^L^I^S^T^S ^T^H^E ^K^I^L^O^B^Y^T^E ^V^A^L^U^E ^F^O^R ^F^R^A^C^T^I^O^N^S ^O^F
  580. ^M^E^G^A^B^Y^T^E^S.
  581. K^I^L^O^B^Y^T^E F^R^A^C^T^I^O^N ^O^F ^A M^E^G^A^B^Y^T^E
  582. 64 1/16
  583. 128 1/8
  584. 192 3/16
  585. 256 1/4
  586. 320 5/16
  587. 384 3/8
  588. 448 7/16
  589. 512 1/2
  590. 576 9/16
  591. 640 5/8
  592. 704 11/16
  593. 768 3/4
  594. 832 13/16
  595. 896 7/8
  596. 960 15/16
  597. .ENDHELP
  598. .*
  599. .SET(#VE=STRD(MBYTE*128+((KBYTE+63)/64)*8))
  600. .IF, (VE .GT. 0) .AND. ((VE .LT. LOW) .OR. (VE .GT. UP)) ,VE1.
  601.   .SET(N1=STRD(LOW/128),N2=STRD(UP/128))
  602.   $NOTE.;;:I M^E^M^O^R^Y ^R^A^N^G^E ^F^O^R #VE ^I^S N1 - N2 ^M^E^G^A^B^Y^T^E^S.
  603. $NOTE.;:I P^L^E^A^S^E ^R^E-^E^N^T^E^R.;
  604. $REVERT,EX.$BEGIN(VEQ,VEMEM,,,MF,LOW,UP,OPTION)
  605. .ENDIF(VE1)
  606. $REVERT(EX)$REVERT(EX)$BEGIN(#VE,VEMEM,MF,VE,LOW,UP,OPTION)
  607. $EXIT. VEQ
  608. $REVERT(ABORT) VEQ
  609. *WEOR
  610. .PROC,NOSQ*I"S^P^E^C^I^F^Y ^T^H^E ^A^M^O^U^N^T ^O^F NOS ^M^E^M^O^R^Y."
  611. ,MBYTE [M^E^G^A^B^Y^T^E ^P^O^R^T^I^O^N ^O^F NOS ^M^E^M^O^R^Y] =(*S1..3/D)
  612. ,KBYTE [K^I^L^O^B^Y^T^E ^P^O^R^T^I^O^N ^O^F ^M^A^I^N^F^R^A^M^E ^M^E^M^O^R^Y] =(*S3/D,*N=0)
  613. ,MF =(*A)
  614. ,LOW =(*A,*N=1)
  615. ,UP =(*A,*N=128)
  616. ,OPTION =(*A)
  617. ,VEMEM =(*N=#FILE)
  618. .
  619. .HELP,MBYTE,NOLIST.
  620. H^O^W ^M^U^C^H ^M^E^M^O^R^Y NOS ^I^S ^T^O ^U^S^E, ^I^N ^I^N^T^E^G^E^R
  621. ^M^E^G^A^B^Y^T^E^S,^K^I^L^O^B^Y^T^E^S
  622. F^O^R ^E^X^A^M^P^L^E, ^T^O ^S^P^E^C^I^F^Y NOS ^I^S ^T^O ^U^S^E 16 ^M^E^G^A^B^Y^T^E^S ^O^F
  623. ^M^E^M^O^R^Y, ^E^N^T^E^R
  624. 16,0
  625. T^O ^S^P^E^C^I^F^Y ^A ^N^O^N-^I^N^T^E^G^E^R ^M^E^G^A^B^Y^T^E ^A^M^O^U^N^T ^O^F ^M^E^M^O^R^Y,
  626. ^E^N^T^E^R ^T^H^E ^I^N^T^E^G^E^R ^P^O^R^T^I^O^N, ^A ^C^O^M^M^A, ^A^N^D ^T^H^E ^R^E^M^A^I^N^D^E^R ^I^N
  627. ^K^I^L^O^B^Y^T^E^S.
  628. F^O^R ^E^X^A^M^P^L^E, ^T^O ^S^P^E^C^I^F^Y 8.5 ^M^E^G^A^B^Y^T^E^S ^O^F ^M^E^M^O^R^Y, ^E^N^T^E^R
  629. 8,512
  630.  
  631. T^H^I^S ^T^A^B^L^E ^L^I^S^T^S ^E^Q^U^I^V^A^L^E^N^C^E^S ^O^F ^M^E^M^O^R^Y ^S^I^Z^E^S ^I^N ^M^E^G^A^B^Y^T^E^S,^K^I^L^O^B^Y^T^E^S,
  632. ^W^O^R^D^S ^I^N ^O^C^T^A^L, ^A^N^D ^W^O^R^D^S ^I^N ^D^E^C^I^M^A^L.
  633. M^E^G^A^B^Y^T^E^S,K^I^L^O^B^Y^T^E^S W^O^R^D^S (^O^C^T^A^L) W^O^R^D^S (^D^E^C^I^M^A^L)
  634. 1,0 400000 131072
  635. 1,512 600000 196608
  636. 2,0 1000000 262144
  637. 3,0 1400000 393216
  638. 4,0 2000000 524288
  639. 8,0 4000000 1048576
  640. 16,0 10000000 2097152
  641. 32,0 20000000 4194304
  642. 64,0 40000000 8388608
  643. 128,0 100000000 16777216
  644.  
  645. NOTE: Y^O^U ^M^U^S^T ^R^E^S^E^R^V^E ^A ^M^I^N^I^M^U^M ^O^F 1 ^M^E^G^A^B^Y^T^E ^F^O^R NOS.
  646. NOS ^C^A^N ^U^S^E ^A ^M^A^X^I^M^U^M ^O^F 128 ^M^E^G^A^B^Y^T^E^S.
  647. .HELP,KBYTE,NOLIST.
  648. A^N^Y ^M^O^R^E NOS ^M^E^M^O^R^Y, AFTER ^Y^O^U ^H^A^V^E ^E^X^P^R^E^S^S^E^D ^I^T ^I^N
  649. ^M^E^G^A^B^Y^T^E^S. E^N^T^E^R ^A ^V^A^L^U^E ^F^O^R ^T^H^I^S ^O^N^L^Y ^I^F ^Y^O^U ^H^A^V^E ^A
  650. ^N^O^N-^I^N^T^E^G^E^R ^M^E^G^A^B^Y^T^E ^A^M^O^U^N^T ^O^F ^M^E^M^O^R^Y ^F^O^R NOS.
  651. F^O^R ^E^X^A^M^P^L^E, ^T^O ^S^P^E^C^I^F^Y 8.5 ^M^E^G^A^B^Y^T^E^S ^O^F ^M^E^M^O^R^Y ^F^O^R NOS,
  652. ^Y^O^U ^W^O^U^L^D ^E^N^T^E^R
  653. 512
  654. ^A^T ^T^H^I^S ^P^R^O^M^P^T ^F^O^R ^T^H^E ^N^O^N-^I^N^T^E^G^E^R (.5) ^M^E^G^A^B^Y^T^E ^P^O^R^T^I^O^N ^O^F
  655. ^Y^O^U^R ^M^E^M^O^R^Y ^A^M^O^U^N^T.
  656.  
  657. T^H^E ^F^O^L^L^O^W^I^N^G ^T^A^B^L^E ^L^I^S^T^S ^T^H^E ^K^I^L^O^B^Y^T^E ^V^A^L^U^E ^F^O^R ^F^R^A^C^T^I^O^N^S ^O^F
  658. ^M^E^G^A^B^Y^T^E^S.
  659. K^I^L^O^B^Y^T^E F^R^A^C^T^I^O^N ^O^F ^A M^E^G^A^B^Y^T^E
  660. 64 1/16
  661. 128 1/8
  662. 192 3/16
  663. 256 1/4
  664. 320 5/16
  665. 384 3/8
  666. 448 7/16
  667. 512 1/2
  668. 576 9/16
  669. 640 5/8
  670. 704 11/16
  671. 768 3/4
  672. 832 13/16
  673. 896 7/8
  674. 960 15/16
  675. .ENDHELP
  676. .SET(#NOS=STRD(MBYTE*128+((KBYTE+63)/64)*8))
  677. .IF, (NOS .LT. LOW) .OR. (NOS .GT. UP) ,NOS2.
  678.   .SET(N1=STRD(LOW/128),N2=STRD(UP/128))
  679.   $NOTE.;;:I M^E^M^O^R^Y ^R^A^N^G^E ^F^O^R #NOS ^I^S N1 - N2 ^M^E^G^A^B^Y^T^E^S.
  680. $NOTE.;:I P^L^E^A^S^E ^R^E-^E^N^T^E^R.;
  681. $REVERT,EX.$BEGIN(NOSQ,VEMEM,,,MF,LOW,UP,OPTION)
  682. .ENDIF(NOS2)
  683. $REVERT(EX)$REVERT(EX)$BEGIN(#NOS,VEMEM,MF,NOS,LOW,UP,OPTION)
  684. $EXIT. NOSQ
  685. $REVERT(ABORT) NOSQ
  686. *WEOR
  687. .PROC,UIOQ*I"A^L^L^O^C^A^T^E I/O B^U^F^F^E^R^S ^A^N^D U^S^E^R E^X^T^E^N^D^E^D M^E^M^O^R^Y"
  688. ,IOB [O^C^T^A^L/1000B ^W^O^R^D^S ^M^E^M^O^R^Y ^F^O^R IOB] =(*S6/B)
  689. ,UEC [O^C^T^A^L/1000B ^W^O^R^D^S ^M^E^M^O^R^Y ^F^O^R UEC] =(*S6/B)
  690. ,MF =(*A)
  691. ,NOS =(*A)
  692. ,VE =(*A)
  693. ,UEM =(*A)
  694. ,OPTION =(*A)
  695. ,VEMEM =(*N=#FILE)
  696. .
  697. .HELP,IOB,NOLIST.
  698. A^N ^O^C^T^A^L ^V^A^L^U^E ^S^P^E^C^I^F^Y^I^N^G ^T^H^E ^A^M^O^U^N^T ^O^F ^M^E^M^O^R^Y ^T^O ^B^E ^R^E^S^E^R^V^E^D
  699. ^F^O^R ^I^N^P^U^T/^O^U^T^P^U^T ^D^E^V^I^C^E ^B^U^F^F^E^R^S ^F^O^R 895-^T^Y^P^E ^D^I^S^K ^D^R^I^V^E^S.
  700. T^H^I^S ^O^C^T^A^L ^V^A^L^U^E ^I^S ^I^N ^U^N^I^T^S ^O^F 1000 ^O^C^T^A^L ^W^O^R^D^S.
  701. .HELP,UEC,NOLIST.
  702. A^N ^O^C^T^A^L ^V^A^L^U^E ^S^P^E^C^I^F^Y^I^N^G ^T^H^E ^A^M^O^U^N^T ^O^F ^M^E^M^O^R^Y ^T^O ^B^E ^R^E^S^E^R^V^E^D
  703. ^F^O^R ^U^S^E^R ^A^C^C^E^S^S^I^B^L^E ^E^X^T^E^N^D^E^D ^M^E^M^O^R^Y.
  704. T^H^I^S ^O^C^T^A^L ^V^A^L^U^E ^I^S ^I^N ^U^N^I^T^S ^O^F 1000 ^O^C^T^A^L ^W^O^R^D^S.
  705. .ENDHELP
  706. .*
  707. .* VALIDATE IOB
  708. .IF, (IOB .NE. 0) ,UIOQ1.
  709. .SET(#IOB=STRD(IOB_B/2))
  710.   .IF, (IOB .LT. 16) .OR. (IOB .GT. UEM) ,UIOQ1A.
  711.   $NOTE.;;:I #IOB ^M^E^M^O^R^Y ^V^A^L^U^E ^O^U^T ^O^F ^R^A^N^G^E.
  712. $BEGIN(DISRNGW,VEMEM,#IOB,16,UEM)
  713.   $BEGIN(DISRNGW,VEMEM,#UEC,0,UEM)
  714. $NOTE.;:I P^L^E^A^S^E ^R^E-^E^N^T^E^R.
  715. $REVERT,EX.$BEGIN(UIOQ,VEMEM,,,MF,NOS,VE,UEM,OPTION)
  716. .ENDIF(UIOQ1A)
  717. .ENDIF(UIOQ1)
  718. .* VALIDATE UEC
  719. .SET(#UEC=STRD(UEC_B/2))
  720. .IF, (UEC .GT. UEM) ,UIOQ2.
  721.   $NOTE.;;:I #UEC ^M^E^M^O^R^Y ^V^A^L^U^E ^O^U^T ^O^F ^R^A^N^G^E.
  722. $BEGIN(DISRNGW,VEMEM,#IOB,16,UEM)
  723.   $BEGIN(DISRNGW,VEMEM,#UEC,0,UEM)
  724. $NOTE.;:I P^L^E^A^S^E ^R^E-^E^N^T^E^R.
  725. $REVERT,EX.$BEGIN(UIOQ,VEMEM,,,MF,NOS,VE,UEM,OPTION)
  726. .ENDIF(UIOQ2)
  727. .* VALIDATE UEC+IOB
  728. .IF, (IOB+UEC .GT. UEM) ,UIOQ3.
  729. $NOTE.;;:I #IOB+#UEC ^M^E^M^O^R^Y ^V^A^L^U^E ^O^U^T ^O^F ^R^A^N^G^E.
  730. $BEGIN(DISRNGW,VEMEM,#IOB,16,UEM)
  731.   $BEGIN(DISRNGW,VEMEM,#UEC,0,UEM)
  732. $NOTE.;:I P^L^E^A^S^E ^R^E-^E^N^T^E^R.
  733. $REVERT,EX.$BEGIN(UIOQ,VEMEM,,,MF,NOS,VE,UEM,OPTION)
  734. .ENDIF(UIOQ3)
  735. $REVERT(EX)$REVERT(EX)$BEGIN(UIO,VEMEM,MF,NOS,VE,UEM,IOB,UEC,OPTION)
  736. $EXIT. UIOQ
  737. $REVERT(ABORT) UIOQ
  738. *WEOR
  739. .PROC,UECQ*I"A^L^L^O^C^A^T^E U^S^E^R A^C^C^E^S^S^I^B^L^E E^X^T^E^N^D^E^D M^E^M^O^R^Y"
  740. ,WORDS [O^C^T^A^L/1000B ^W^O^R^D^S M^E^M^O^R^Y ^F^O^R UEC] =(*S1..6/B)
  741. ,MF =(*A)
  742. ,NOS =(*A)
  743. ,VE =(*A)
  744. ,LOW =(*A)
  745. ,UP =(*A)
  746. ,OPTION =(*A)
  747. ,VEMEM =(*N=#FILE)
  748. .
  749. .HELP,WORDS,NOLIST.
  750. A^N ^O^C^T^A^L ^V^A^L^U^E ^S^P^E^C^I^F^Y^I^N^G ^T^H^E ^A^M^O^U^N^T ^O^F ^M^E^M^O^R^Y ^T^O ^B^E ^R^E^S^E^R^V^E^D
  751. ^F^O^R ^U^S^E^R ^A^C^C^E^S^S^I^B^L^E ^E^X^T^E^N^D^E^D ^M^E^M^O^R^Y.
  752. T^H^I^S ^O^C^T^A^L ^V^A^L^U^E ^I^S ^I^N ^U^N^I^T^S ^O^F 1000 ^O^C^T^A^L ^W^O^R^D^S.
  753. .ENDHELP
  754. .SET(#UEC=STRD(WORDS_B/2))
  755. .IF,((UEC .LT. LOW).OR.(UEC .GT. UP)),UEC1A.
  756.   $NOTE.;;:I #UEC M^E^M^O^R^Y ^V^A^L^U^E ^I^S ^O^U^T ^O^F ^R^A^N^G^E.
  757. $BEGIN(DISRNGW,VEMEM,$#UEC$,LOW,UP)
  758.   $NOTE.;:I P^L^E^A^S^E ^R^E-^E^N^T^E^R.
  759.   $REVERT,EX.$BEGIN(UECQ,VEMEM,,MF,NOS,VE,LOW,UP,OPTION)
  760. .ENDIF,UEC1A
  761. $REVERT(EX)$REVERT(EX)$BEGIN(#UEC,VEMEM,MF,NOS,VE,UEC,LOW,UP,OPTION)
  762. $EXIT. UECQ
  763. $REVERT(ABORT) UECQ
  764. *WEOR
  765. .PROC,UEMQ*I"A^L^L^O^C^A^T^E U^N^I^F^I^E^D E^X^T^E^N^D^E^D M^E^M^O^R^Y"
  766. ,WORDS [O^C^T^A^L/1000B ^W^O^R^D^S M^E^M^O^R^Y ^F^O^R UEM] =(*S1..6/B)
  767. ,MF =(*A)
  768. ,NOS =(*A)
  769. ,VE =(*A)
  770. ,LOW =(*A)
  771. ,UP =(*A)
  772. ,OPTION =(*A)
  773. ,VEMEM =(*N=#FILE)
  774. .
  775. .HELP,WORDS,NOLIST.
  776. A^N ^O^C^T^A^L ^V^A^L^U^E ^S^P^E^C^I^F^Y^I^N^G ^T^H^E ^A^M^O^U^N^T ^O^F ^M^E^M^O^R^Y ^T^O ^B^E ^R^E^S^E^R^V^E^D
  777. ^F^O^R ^U^N^I^F^I^E^D ^E^X^T^E^N^D^E^D ^M^E^M^O^R^Y.
  778. T^H^I^S ^O^C^T^A^L ^V^A^L^U^E ^I^S ^I^N ^U^N^I^T^S ^O^F 1000 ^O^C^T^A^L ^W^O^R^D^S.
  779. .ENDHELP
  780. .SET(#UEM=STRD(WORDS_B/2))
  781. .IF,((UEM .LT. LOW).OR.(UEM .GT. UP)),UEM1A.
  782.   $NOTE.;;:I #UEM M^E^M^O^R^Y ^V^A^L^U^E ^I^S ^O^U^T ^O^F ^R^A^N^G^E.
  783. $BEGIN(DISRNGW,VEMEM,#UEM,LOW,UP)
  784.   $NOTE.;:I P^L^E^A^S^E ^R^E-^E^N^T^E^R.
  785.   $REVERT(EX)$BEGIN(UEMQ,VEMEM,,MF,NOS,VE,LOW,UP,OPTION)
  786. .ENDIF,UEM1A
  787. $REVERT(EX)$REVERT(EX)$BEGIN(#UEM,VEMEM,MF,NOS,VE,UEM,LOW,UP,OPTION)
  788. $EXIT. UEMQ
  789. $REVERT(ABORT) UEMQ
  790. *WEOR
  791. .PROC,DECKS*I
  792. ,MF =(*A)
  793. ,NOS =(*A)
  794. ,VE =(*N=0,*A)
  795. ,UEM =(*N=0,*A)
  796. ,IOB =(*N=0,*A)
  797. ,UEC =(*N=0,*A)
  798. ,OPTION =(*A)
  799. ,VEMEM =(*N=#FILE)
  800. .
  801. .SET(#NOS=STRB(NOS*16)) ** CONVERT TO OCTAL/100B
  802. .SET(#VE=STRB(VE*2)) ** CONVERT TO OCTAL/1000B
  803. .SET(#UEC=STRB(UEC*2)) ** CONVERT TO OCTAL/1000B
  804. .SET(#IOB=STRB(IOB*2)) ** CONVERT TO OCTAL/1000B
  805. .SET(#UEM=STRB(UEM*2)) ** CONVERT TO OCTAL/1000B
  806. $RETURN(CMREQP)
  807. .IF, ($OPTION$ .EQ. $1$) ,DECKS1.
  808.   .* NOS/VE, NOS, NO UEM, NO UEC
  809.   $NOTE.;;;:I M^A^K^E ^T^H^E ^F^O^L^L^O^W^I^N^G CMR ^D^E^C^K ^E^N^T^R^I^E^S:;
  810.   .IF, (VE .EQ. 0) ,DECKS1A.
  811.   $BEGIN(DISVAL,VEMEM,$#VE=$, *)
  812. .ELSE,DECKS1A.
  813. $BEGIN(DISVAL,VEMEM,$MINCM=$,NOS)
  814. $BEGIN(DISVAL,VEMEM,$#VE=$, 0)
  815.   .ENDIF,DECKS1A.
  816. .ELSE(DECKS1)
  817. .IF, (VE .EQ. 0) ,DECKS2.
  818.   .SET(#VE=STR($*$)) ** EXCLUDE NOS/VE
  819. .ENDIF,DECKS2.
  820. .IF, ($OPTION$ .EQ. $2$) ,DECKS1.
  821. .* NOS/VE, NOS, NO UEM, YES UEC
  822. $NOTE.;;;:I M^A^K^E ^T^H^E ^F^O^L^L^O^W^I^N^G CMR ^D^E^C^K ^E^N^T^R^I^E^S:;
  823. $BEGIN(DISVAL,VEMEM,$#VE=$,VE)
  824.   .IF, (UEC .NE. 0) ,DECKS3.
  825.   $NOTE.;;:I M^A^K^E ^T^H^E ^F^O^L^L^O^W^I^N^G EQP ^D^E^C^K ^E^N^T^R^I^E^S:;
  826.   $BEGIN(DISVAL,VEMEM,$XM=MCHID,0,$,UEC,$,EM$)
  827.   $NOTE.;;:I W^H^E^R^E MCHID ^I^S ^Y^O^U^R ^M^A^C^H^I^N^E ID.
  828.   $NOTE.;:I (CMRDECK ^E^N^T^R^Y MID.)
  829.   .ENDIF(DECKS3)
  830. .ELSE(DECKS1)
  831.   .* NOS/VE, NOS, UEM, MAYBE IOB AND UEC
  832.   $NOTE.;;;:I M^A^K^E ^T^H^E ^F^O^L^L^O^W^I^N^G CMR ^D^E^C^K ^E^N^T^R^I^E^S:;
  833.   $BEGIN(DISVAL,VEMEM,$#VE=$,VE)
  834. $NOTE.;;;:I M^A^K^E ^T^H^E ^F^O^L^L^O^W^I^N^G EQP ^D^E^C^K ^E^N^T^R^I^E^S:;
  835. $BEGIN(DISVAL,VEMEM,$EQ5=DE,ST=ON,ET=EM,SZ=$,UEM)
  836. .IF, (IOB .NE. 0) .OR. (UEC .NE. 0) ,DECKS1A.
  837. $BEGIN(DISVAL,VEMEM,$XM=MCHID,$,IOB,$,$,UEC)
  838. $NOTE.;;:I W^H^E^R^E MCHID ^I^S ^Y^O^U^R ^M^A^C^H^I^N^E ID.
  839. $NOTE.;:I (CMRDECK ^E^N^T^R^Y MID.)
  840. .ENDIF(DECKS1A)
  841. .ENDIF(DECKS1)
  842. $NOTE.;;:I E^N^T^R^I^E^S ^P^L^A^C^E^D ^O^N ^L^O^C^A^L ^F^I^L^E CMREQP.;;
  843. $PACK(CMREQP)
  844. $REVERT. DECKS COMPLETE
  845. $EXIT. DECKS
  846. $REVERT(ABORT) DECKS
  847. *WEOR
  848. .PROC,DISVAL*I
  849. ,MSG1 =(*A)
  850. ,VAL1 =(*S6/B*)
  851. ,MSG2 =(*A,*N=)
  852. ,VAL2 =(*S6/B*,*N=)
  853. .
  854. $NOTE.;MSG1_VAL1_MSG2_VAL2.
  855. $NOTE,CMREQP,NR.;MSG1_VAL1_MSG2_VAL2.
  856. $REVERT. DISVAL
  857. *WEOR
  858. .PROC,DISRNGB*I
  859. ,WORD =(*A)
  860. ,LOW =(*S6/D)
  861. ,UP =(*S6/D)
  862. ,VEMEM =(*N=#FILE)
  863. .
  864. .SET(#L1=STRD(LOW/128))
  865. .SET(#L2=STRD((LOW-L1*128)*8))
  866. .SET(#L1=STR($ _L1$,-3),#L2=STR($00_L2$,-3))
  867. .SET(#U1=STRD(UP/128))
  868. .SET(#U2=STRD((UP-U1*128)*8))
  869. .SET(#U1=STR($ _U1$,-3),#U2=STR($000_U2$,-3))
  870. $NOTE.;;:I A^L^L^O^W^E^D ^R^A^N^G^E ^F^O^R WORD ^M^E^M^O^R^Y ^I^S:
  871. $NOTE.;:I (M^E^G^A^B^Y^T^E^S,K^I^L^O^B^Y^T^E^S);
  872. $NOTE.;:I LOWER ^B^O^U^N^D ^I^S L1,L2;
  873. $NOTE.;:I UPPER ^B^O^U^N^D ^I^S U1,U2;
  874. $REVERT. DISRANG COMPLETE
  875. $EXIT. DISRANG
  876. $REVERT(ABORT) DISRANG FAILED
  877. *WEOR
  878. .PROC,DISPB*I
  879. ,TYPE =(*A)
  880. ,AMOUNT =(*A)
  881. .
  882. .SET(#MB=STRD(AMOUNT/128))
  883. .SET(#KB=STRD((AMOUNT-MB*128)*8))
  884. .SET(#MB=STR($ _MB$,-3),#KB=STR($000_KB$,-3))
  885. .IF, ($TYPE$ .EQ. $PT$) ,DISPB1.
  886. $NOTE.;:I P^A^G^E T^A^B^L^E ^M^E^M^O^R^Y ^I^S MB,KB
  887. .ELSE(DISPB1)
  888. .IF, ($TYPE$ .EQ. $NOS$) ,DISPB1.
  889. $NOTE.;:I NOS ^M^E^M^O^R^Y ^I^S MB,KB
  890. .ELSE(DISPB1)
  891. .IF, ($TYPE$ .EQ. $VE$) ,DISPB1.
  892. $NOTE.;:I NOS/VE ^M^E^M^O^R^Y ^I^S MB,KB
  893. .ELSE(DISPB1)
  894. .IF, ($TYPE$ .EQ. $MF$) ,DISPB1.
  895. $NOTE.;:ITOTAL P^H^Y^S^I^C^A^L M^A^I^N^F^R^A^M^E ^M^E^M^O^R^Y ^I^S MB,KB
  896. .ENDIF(DISPB1)
  897. $REVERT.
  898. *WEOR
  899. .PROC,DISRNGW*I
  900. ,WORD =(*A)
  901. ,LOW =(*S6/D)
  902. ,UP =(*S6/D)
  903. ,VEMEM =(*N=#FILE)
  904. .
  905. .SET(N1=STRB(LOW*2))
  906. .SET(N2=STRB(UP*2))
  907. $NOTE.;;:I A^L^L^O^W^E^D ^R^A^N^G^E ^F^O^R WORD ^M^E^M^O^R^Y ^I^S:
  908. $NOTE.;:I (O^C^T^A^L/1000B ^W^O^R^D^S);
  909. $NOTE.;:I N1 - N2;
  910. .IF, ($WORD$ .EQ. $IOB$) .$NOTE.;:I (E^N^T^E^R 0 ^F^O^R ^N^O IOB).
  911. $REVERT. DISRNGW COMPLETE
  912. $EXIT. DISRNGW
  913. $REVERT(ABORT) DISRNGW FAILED
  914. *WEOR
  915. .PROC,DISPW*I
  916. ,TYPE =(*A)
  917. ,AMOUNT =(*A)
  918. .
  919. .SET,#AMOUNT=STRB(AMOUNT*2).
  920. .SET,#AMOUNT=STR($ AMOUNT$,-6).
  921. .IF, ($TYPE$ .EQ. $JOBS$) ,DISPW1.
  922. $NOTE.;:I SYSTEM & E^X^E^C^U^T^I^N^G J^O^B ^M^E^M^O^R^Y ^I^S AMOUNT
  923. .ELSE(DISPW1)
  924. .IF, ($TYPE$ .EQ. $UEM$) ,DISPW1.
  925. $NOTE.;:I U^N^I^F^I^E^D E^X^T^E^N^D^E^D M^E^M^O^R^Y (UEM) ^I^S AMOUNT
  926. .ELSE(DISPW1)
  927. .IF, ($TYPE$ .EQ. $UEMT$) ,DISPW1.
  928. $NOTE.;:I TOTAL U^N^I^F^I^E^D E^X^T^E^N^D^E^D M^E^M^O^R^Y ^I^S AMOUNT
  929. .ELSE(DISPW1)
  930. .IF, ($TYPE$ .EQ. $ASR$) ,DISPW1.
  931. $NOTE.;:I A^L^T^E^R^N^A^T^E S^Y^S^T^E^M (ASR) ^A^N^D
  932. $NOTE.;:I S^E^C^O^N^D^A^R^Y R^O^L^L^O^U^T (SRST) ^M^E^M^O^R^Y ^I^S AMOUNT
  933. .ELSE(DISPW1)
  934. .IF, ($TYPE$ .EQ. $IOB$) ,DISPW1.
  935. $NOTE.;:I 895 I^N^P^U^T ^A^N^D O^U^T^P^U^T B^U^F^F^E^R^S (IOB) AMOUNT
  936. .ELSE(DISPW1)
  937. .IF, ($TYPE$ .EQ. $UEC$) ,DISPW1.
  938. $NOTE.;:IU^S^E^R A^C^C^E^S^S^I^B^L^E E^X^T^E^N^D^E^D M^E^M^O^R^Y (UEC) AMOUNT
  939. .ELSE(DISPW1)
  940. .IF, ($TYPE$ .EQ. $NOS$) ,DISPW1.
  941. $NOTE.;:I TOTAL NOS ^M^E^M^O^R^Y ^I^S AMOUNT
  942. .ENDIF(DISPW1)
  943. $REVERT.
cdc/nos2.source/opl871/vemem.txt ยท Last modified: 2023/08/05 17:24 by Site Administrator