Table of Contents

0FA

Table Of Contents

  • [00003] 0FA - RELEASE FAST ATTACH PERMANENT FILE.
  • [00010] RELEASE FAST ATTACH PERMANENT FILE.
  • [00056] MAIN ROUTINE.
  • [00057] DRP - MAIN ROUTINE.
  • [00127] SUBROUTINES.
  • [00129] SFF - SEARCH FOR FAST ATTACH FILE.

Source Code

0FA.txt
  1. IDENT 0FA,DRPX
  2. PERIPH J
  3. TITLE 0FA - RELEASE FAST ATTACH PERMANENT FILE.
  4. BASE MIXED
  5. SST
  6. QUAL$ EQU 1 DEFINE UNQUALIFIED COMMON DECKS
  7. *COMMENT 0FA - RELEASE FAST ATTACH PERMANENT FILE.
  8. COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
  9. SPACE 4
  10. *** 0FA - RELEASE FAST ATTACH PERMANENT FILE.
  11. * M. E. MADDEN. 73/07/10.
  12. * S. L. KSANDER. 75/05/26.
  13. SPACE 4
  14. *** 0FA IS A LOCATION FREE ROUTINE TO BE USED FOR
  15. * RELEASING FAST ATTACH PERMANENT FILES.
  16. *
  17. * IF THE FILE IS ATTACHED IN WRITE MODE THE MODE BITS
  18. * FOR THE FILE WILL BE UPDATED TO CLEAR THE WRITE LOCKOUT
  19. * STATUS. THE ACTIVE FILE COUNT IN THE MST WILL ALSO
  20. * BE DECREMENTED FOR THIS FILE. AN EVENT WILL BE
  21. * ISSUED TO ROLL IN USERS WAITING FOR THE FILE.
  22. *
  23. * IF THE FILE WAS ATTACHED IN READ MODE THE USER COUNTS FOR
  24. * THE FILE WILL BE UPDATED TO REFLECT ONE LESS USER
  25. * ACCESSING THE FILE.
  26. *
  27. * UPDATING OF THE ECS ENTRY AND THE LOCAL FNT IS HANDLED
  28. * BY CPU MONITOR THROUGH THE *AFAM* MONITOR FUNCTION.
  29. SPACE 4
  30. *** CALL.
  31. *
  32. * ENTRY ((LA)-1) = FILE STATUS.
  33. * 6/,1/0,1/A,1/M,1/E,1/U,1/R
  34. * A = APPEND
  35. * M = MODIFY
  36. * E = EXECUTE
  37. * U = UTILITY ATTACH (ALWAYS ZERO FOR *0FA*)
  38. * R = READ ONLY
  39. * (FS - FS+4) = FST INFORMATION.
  40. *
  41. * EXIT (A) = 0.
  42. SPACE 4
  43. *CALL COMPMAC
  44. *CALL COMSCPS
  45. *CALL COMSMST
  46. *CALL COMSPFM
  47. *CALL COMSZOL
  48. *CALL COMPREL
  49. SPACE 4,10
  50. **** DIRECT LOCATION ASSIGNMENTS.
  51.  
  52.  
  53. FS EQU 20 - 24 FST INFORMATION (5 LOCATIONS)
  54.  
  55. ****
  56. TITLE MAIN ROUTINE.
  57. ** DRP - MAIN ROUTINE.
  58.  
  59.  
  60. ORG 5
  61. DRP SUBR ENTRY/EXIT
  62. RJM SFF SEARCH FOR FILE
  63. LDD CM+3
  64. LPN 77
  65. ZJN DRP0 IF NOT GLOBAL FAST ATTACH FILE
  66. LDD T5
  67. DRP0 STD CM+1
  68. LDD T2 SET FNT ORDINAL IN REQUEST
  69. STD CM+4
  70. LDN RFAS REQUEST RETURN OF FAST ATTACH FILE
  71. STD CM+3
  72.  
  73. * DETERMINE MODE OF FILE TO BE RETURNED.
  74.  
  75. LDD LA SET TABLE BASE ADDRESS
  76. ADC TFNS
  77. STM DRPA
  78. LDN TFNSL
  79. STD T2
  80. DRP1 SOD T2 DECREMENT TABLE INDEX
  81. MJN DRP2 IF END OF TABLE
  82. LDM -1
  83. LPN 35 SEARCH TABLE FOR MODE
  84. LMM. **,T2
  85. DRPA EQU *-1
  86. NJN DRP1 IF NOT MATCHING STATUS
  87. LDD T2 SET ATTACH MODE IN REQUEST
  88. STD CM+2
  89. MONITOR AFAM RETURN FILE
  90. LDD CM+1 CHECK RETURN STATUS
  91. ZJN DRP3 IF FUNCTION COMPLETE
  92. DRP2 MONITOR HNGM HANG PP
  93.  
  94. DRP3 LDD T5 SET EST ORDINAL
  95. STD CM+1
  96. LDN DUCS DECREMENT ACTIVE FILE COUNT
  97. STD CM+3
  98. MONITOR SMDM
  99. * LDN 0 ISSUE EVENT TO INDICATE FILE RETURNED
  100. STD CM+1
  101. LDD T6 SET FIRST TRACK IN EVENT
  102. STD CM+4
  103. LDD T5 SET EQUIPMENT IN EVENT
  104. STD CM+3
  105. MONITOR EATM
  106. * LDN 0
  107. LJM DRPX RETURN
  108. TFNS SPACE 4
  109. * TABLE OF FILE MODES.
  110. * INDEXED BY *PFM* MODE NUMBER.
  111.  
  112.  
  113. TFNS BSS 0
  114. LOC 0
  115. CON 0 WRITE
  116. CON 1 READ
  117. CON 20 APPEND/EXTEND
  118. CON 5 EXECUTE
  119. CON 77 NULL
  120. CON 30 MODIFY
  121. CON 31 READ ALLOW MODIFY
  122. CON 21 READ ALLOW APPEND/EXTEND
  123. CON 10 UPDATE
  124. CON 11 READ ALLOW UPDATE
  125. LOC *O
  126. TFNSL EQU *-TFNS LENGTH OF TABLE
  127. TITLE SUBROUTINES.
  128. SFF SPACE 4,10
  129. ** SFF - SEARCH FOR FAST ATTACH FILE.
  130. *
  131. * ENTRY (FS - FS+4) = FST INFORMATION.
  132. *
  133. * EXIT (T2) = FNT ORDINAL OF FAST ATTACH FILE.
  134. * (T5) = EST ORDINAL.
  135. * (T6) = FIRST TRACK.
  136. * (CM+3) = GLOBAL FAST ATTACH FILE FLAG.
  137. *
  138. * USES T3, T4, CM - CM+4.
  139. *
  140. * MACROS MONITOR, SFA.
  141.  
  142.  
  143. SFF SUBR ENTRY/EXIT
  144. LDN FNTP FETCH FNT POINTER
  145. CRD T2
  146. LDN 1 INITIALIZE FNT ORDINAL
  147. STD T2
  148. SFF1 SFA FNT,T2
  149. CRD CM
  150. ADN FSTG GET FST INFORMATION
  151. CRD T5
  152. LDD CM+4 CHECK FILE TYPE
  153. SHN -6
  154. LMN FAFT
  155. NJN SFF2 IF NOT FAST ATTACH FILE
  156. LDD T5
  157. LMD FS
  158. NJN SFF2 IF NOT SAME EQUIPMENT
  159. LDD T6
  160. LMD FS+1
  161. ZJN SFFX IF MATCHING TRACK
  162. SFF2 AOD T2 ADVANCE FNT ORDINAL
  163. LMD T4
  164. NJN SFF1 IF NOT END OF FNT
  165. MONITOR HNGM HANG PP
  166. * LDN 0
  167. LJM DRPX EXIT
  168. SPACE 4,10
  169. ** COMMON DECKS.
  170.  
  171.  
  172. FNT$ EQU 1
  173. *CALL COMPGFP
  174. SPACE 4
  175. OVERFLOW 5,ZFAL
  176. END