Table of Contents

FVS Source

References

Source Listing

FVS.MACRO.txt
  1. MACRO 00001000
  2. FVS &SECT 00002000
  3. PUSH PRINT 00002200
  4. AIF ('&SYSPARM' NE 'SUP').ACC01 00002400
  5. PRINT OFF,NOGEN 00002600
  6. .ACC01 ANOP 00002800
  7. AIF ('&SECT' EQ 'CSECT').CSECT 00003000
  8. FVSECT DSECT 00004000
  9. AGO .CONT 00005000
  10. .CSECT ANOP 00006000
  11. FVS DS 0D 00007000
  12. ENTRY FVS 00008000
  13. ENTRY ADTFVS 00009000
  14. ENTRY KXFLAG 00010000
  15. ENTRY UFDBUSY 00011000
  16. .CONT ANOP 00012000
  17. DISK$SEG DS 15F (1) FOR FSTLKP, FSTLKW, ACTLKP, TRKLKP, QQTRK 00013000
  18. REGSAV3 DS 15F (2) FOR RDBUF, WRBUF, FINIS, STATE, POINT 00014000
  19. RWFSTRG DS 18F (3) REMAINING STORAGE FOR RDBUF, WRBUF, FINIS 00015000
  20. * 00016000
  21. ADTFVS DC 2F'0' ADTLKP 00017000
  22. * 00018000
  23. * SAVE-AREA FOR LOWEST-LEVEL ROUTINES: 00019000
  24. * E.G. READMFD, RELUFD, UPDISK, TYPSRCH, ADTLKW 00020000
  25. REGSAV0 DS 15F -- (1) SAVED R0-R15 00021000
  26. DC AL3(00) -- (2) FIRST 3 BYTES OF RETURN-CODE 00022000
  27. ERRCOD0 DC AL1(*-*) -- (3) ERROR-CODE GOES HERE 00023000
  28. * 00024000
  29. TRKLSAVE EQU REGSAV0 FOR TRKLKP/X ONLY WHEN CALLED BY QQTRK/X 00025000
  30. * 00026000
  31. * SAVE-AREA FOR NEXT-TO-LOWEST LEVEL ROUTINES: 00027000
  32. * E.G. READFST, ERASE, ALTER, INTSVC-LOADMOD 00028000
  33. REGSAV1 DS 15F -- (1) 00029000
  34. DC AL3(00) -- (2) 00030000
  35. ERRCOD1 DC AL1(*-*) -- (3) 00031000
  36. * 00032000
  37. F65535 DC F'65535' = X'0000FFFF' 00033000
  38. * 00034000
  39. FW4 DC F'4' 00035000
  40. HW4 EQU FW4+2 00036000
  41. * 00037000
  42. VFREE DC V(FREE) -- (1) 00038000
  43. F100 DC F'100' -- (2) 00039000
  44. * 00040000
  45. VFRET DC V(FRET) (INTO R15) 00041000
  46. JSR0 DC F'0' R0 AND ... 00042000
  47. JSR1 DC F'0' R1 SAVED HERE FOR FRET CALLS. 00043000
  48. * 00044000
  49. * PARAMETER-LIST TO READ/WRITE MFD... 00045000
  50. RWMFD DC A(*-*) -- CORE-ADDRESS 00046000
  51. F800 DC F'800' -- 800 BYTES 00047000
  52. DC A(HW4) 00048000
  53. FVSDSKA DC A(*-*) -- ADD. OF ACTIVE-DISK-TABLE 00049000
  54. * 00050000
  55. DSKLST DS 0F ALL-PURPOSE RDTK/WRTK P-LIST... 00051000
  56. DSKLOC DC A(*-*) CORE LOC. OF ITEM 00052000
  57. RWCNT DC A(*-*) BYTE-COUNT (USUALLY 800) 00053000
  58. DSKADR DC A(*-*) DISK ADDRESS OF ITEM 00054000
  59. ADTADD DC A(*-*) ADDRESS OF CORRECT ACTIVE-DISK-TABLE 00055000
  60. * 00056000
  61. FINISLST DC CL8'FINIS' P-LIST TO CLOSE ALL FILES 00057000
  62. DC CL8'*' 00058000
  63. DC CL8'*' 00059000
  64. DC CL2'*' 00060000
  65. * 00061000
  66. DS 0H HALFWORD CONSTANTS ... 00062000
  67. FFF DC X'FFFF' MEANS NO SIGNIFICANT DATA PAST 215TH BYTE 00063000
  68. FFE DC X'FFFE' 1968-ERA MFD STILL SUPPORTED ON INPUT ONLY 00064000
  69. FFD DC X'FFFD' NEWEST SIGNAL FOR FULL 2314 HANDLING 00065000
  70. * 00066000
  71. * 'SIGNAL' = SCRATCH HALFWORD USED BY READMFD OR ERASE... 00067000
  72. SIGNAL DC H'0' = 0000, X'FFFF', X'FFFE', OR X'FFFD' 00068000
  73. SWTCH EQU SIGNAL+1 00, FF, FE, OR FD 00069000
  74. * 00070000
  75. UFDBUSY DC X'00' NONZERO MEANS 'UFD IS BUSY BEING UPDATED' 00071000
  76. KXFLAG DC X'00' 'KX' FLAGS 00072000
  77. KXWANT EQU X'80' KX WANTED ASAP 00073000
  78. KXWSVC EQU X'01' HOLD KX UNTIL ANY SVC ACTIVITY 00074000
  79. * 00075000
  80. DC X'00' RESERVED FOR FUTURE USE @VM08901 00076100
  81. FLGSAVE DC X'00' FOR SCRATCH USE (E.G. BY RELUFD) 00077000
  82. * 00078000
  83. * FLAG BITS FOR 'UFDBUSY' FLAG... 00079000
  84. WRBIT EQU X'80' WRBUF 00080000
  85. UPBIT EQU X'40' UPDISK - READMFD 00081000
  86. FNBIT EQU X'20' FINIS 00082000
  87. ERBIT EQU X'10' ERASE - ALTER - READFST 00083000
  88. DIOBIT EQU X'08' RDTK/WRTK 00084000
  89. * THE FOLLOWING BITS ARE FOR ROUTINES WHICH DO NOT UPDATE THE DISK, 00085000
  90. * BUT WHICH CAN'T BE INTERRUPTED BY A KX ANYWAY. 00086000
  91. ABNBIT EQU X'02' DMSABN -- ABEND RECOVERY ROUTINE 00087000
  92. ITSBIT EQU X'01' DMSITS -- SVC HANDLING ROUTINE 00088000
  93. * 00089000
  94. FVSFLAG DC X'00' (FOR GENERAL USE - AS NEEDED) 00090000
  95. * 00091000
  96. * MISCELLANEOUS STORAGE USED BY ERASE (OR ALTER) .... 00092000
  97. ERSFLAG DC X'00' FLAG FOR USE BY ERASE OR ALTER 00093000
  98. * 00094000
  99. FVSERAS0 DC F'0' (1) - R0 TO/FROM FSTLKW (FOR ERASE) 00095000
  100. FVSERAS1 DC F'0' (2) - R1 TO ACTLKP OR FSTLKW (FOR ERASE) 00096000
  101. FVSERAS2 DC F'0' (3) ADDRESS OF FREE STORAGE USED BY ERASE 00097000
  102. SPACE 00098000
  103. READCNT DC F'0' CURRENT READ COUNT (DMSBRD) @VM08888 00099100
  104. SPACE 00099200
  105. DC F'0' RESERVED FOR FUTURE USE @VM08888 00099300
  106. SPACE 1 00100000
  107. * 00101000
  108. * FILE STATUS TABLE (FST) COPY FROM "STATE" 00102000
  109. * 00103000
  110. STATEFST DS 0D FULL FST OF 'STATED' FILE 00104000
  111. FVSFSTN DC D'0' FILENAME -0 00105000
  112. FVSFSTT DC D'0' FILETYPE -8 00106000
  113. FVSFSTDT DC 2H'0' DATE/TIME LAST WRITTEN -16,18 00107000
  114. FVSFSTWP DC H'0' WRITE POINTER (ITEM ID) -20 00108000
  115. FVSFSTRP DC H'0' READ POINTER (ITEM ID) -22 00109000
  116. FVSFSTM DC H'0' FILEMODE -24 00110000
  117. FVSFSTIC DC H'0' N'ITEMS IN FILE -26 00111000
  118. FVSFSTCL DC H'0' DA(FIRST CHAIN LINK) -28 00112000
  119. FVSFSTFV DC C' ' FIXED(F) / VARIABLE(V) INDICATOR -30 00113000
  120. FVSFSTFB DC X'00' FLAG BYTE -31 00114000
  121. FVSFSTIL DC F'0' L'ITEMS -32 00115000
  122. FVSFSTDB DC H'0' N'DATA BLOCKS -36 00116000
  123. FVSFSTYR DC 2C' ' YEAR LAST WRITTEN -38 00117000
  124. DC F'0' HRC105DS 00117100
  125. FVSFSTAB DC F'0' Alternate block count - 44 HRC105DS 00117200
  126. FVSFSTAI DC F'0' Alternate item count - 48 HRC105DS 00117300
  127. DC XL1'00' HRC105DS 00117400
  128. DC XL1'00' HRC105DS 00117500
  129. FVSFSTAT DC CL6' ' Alternate date and time - 54 HRC105DS 00117600
  130. DC F'0' Reserved HRC105DS 00117700
  131. * 00118000
  132. FVSFSTAD DC A(0) A(ADT FOR THIS FILE) 00119000
  133. STATER0 EQU FVSFSTAD 00120000
  134. FVSFSTAC DC A(0) A(REAL FST ENTRY FOR THIS FILE) 00121000
  135. STATER1 EQU FVSFSTAC 00122000
  136. * 00123000
  137. STFSTSIZ EQU (*-STATEFST) STATEFST size in bytes HRC015DS 00123100
  138. STFSTSDW EQU (STFSTSIZ+7)/8 STATEFST size in doublewords HRC015DS 00123200
  139. * HRC015DS 00123300
  140. EJECT 00124000
  141. POP PRINT 00124100
  142. MEND 00125000