Table of Contents

GENVAR Source

References

Source Listing

GENVAR.MACRO.txt
  1. MACRO
  2. GENVAR
  3. GENVAR DSECT
  4. SPACE 3
  5. * PLIST FILE SORTIN
  6. SPACE
  7. RDPLST DS 0D
  8. RDOPTN DS CL8 OPTION
  9. RDFN DS CL8 FILENAME
  10. RDFT DS CL8 FILETYPE
  11. RDMODE DS CL2 MODE
  12. INITMO DS H ITEM NUMBER
  13. DATABF DS F BUFFER ADDRESS
  14. INSIZE DS F
  15. FVRD DS H RECORD FORMAT
  16. NBRD DS H RECORD NUMBER
  17. NBBYTRD DS F NUMBER OF BYTES
  18. SPACE 2
  19. * PLIST FILE SORTOUT
  20. SPACE
  21. WRPLST DS 0D
  22. WROPTN DS CL8 OPTION
  23. WRFN DS CL8 FILENAME
  24. WRFT DS CL8 FILETYPE
  25. WRMODE DS CL2 MODE
  26. NUMWR DS H ITEM NUMBER
  27. WRBUF DS F BUFFER ADDRESS
  28. WRSIZE DS F
  29. FVWR DS H RECORD FORMAT
  30. NBWR DS H RECORD NUMBER
  31. NBBYTWR DS F NUMBER OF BYTES
  32. SPACE 2
  33. * PLIST FILE SYSUT1
  34. SPACE
  35. TPPLST DS 0D
  36. TPOPTN DS CL8 OPTION
  37. TPFN DS CL8 FILENAME
  38. TPFT DS CL8 FILETYPE
  39. TPMODE DS CL2 MODE
  40. NUMTP DS H ITEM NUMBER
  41. TPBUF DS F BUFFER ADDRESS
  42. TPSIZE DS F
  43. FVTP DS H RECORD FORMAT
  44. NBTP DS H RECORD NUMBER
  45. NBBYTTP DS F NUMBER OF BYTES
  46. EJECT
  47. * PLIST FILE SYSUT2
  48. SPACE
  49. WKPLST DS 0D
  50. WKOPTN DS CL8 OPTION
  51. WKFN DS CL8 FILENAME
  52. WKFT DS CL8 FILETYPE
  53. WKMODE DS CL2 MODE
  54. NUMWK DS H ITEM NUMBER
  55. WKBUF DS F BUFFER ADDRESS
  56. WKSIZE DS F
  57. FVWK DS H RECORD FORMAT
  58. NBWK DS H RECORD NUMBER
  59. NBBYTWK DS F NUMBER OF BYTES
  60. SPACE 2
  61. WAITRD DS 0D
  62. DS CL8
  63. BUFAD DS F
  64. DS H
  65. LMESS DS H
  66. SPACE 2
  67. TYPLIN DS 0D
  68. DS CL8
  69. DS AL1
  70. ADDR DS AL3
  71. DS 3X
  72. LENGTH DS X
  73. SPACE 2
  74. ZONA DS 2D
  75. ZONB DS 2D
  76. SAVAREA1 DS 18F FIRST LEVEL SAVE AREA
  77. SAVAREA2 DS 18F SECOND LEVEL SAVE AREA
  78. SAVAREA3 DS 18F THIRD LEVEL SAVE AREA
  79. SAVAREA4 DS 18F
  80. SAVAREA5 DS 18F
  81. SPACE 2
  82. * FLAGS USED IN THE SORT OPERATION
  83. FLAG01 DS X
  84. MSGNONE EQU X'80' GIVE NO MESSAGES UW
  85. MSGCRIT EQU X'40' GIVE CRITICAL MESSAGES UW
  86. MSGPRT EQU X'20' GIVE MESSAGES ON PRINTER UW
  87. E15EXIT EQU X'10' E15 EXIT PRESENT UW
  88. E35EXIT EQU X'08' E35 EXIT PRESENT UW
  89. SORTINEX EQU X'04' SORTIN EXISTS UW
  90. SORTINEF EQU X'02' EOF ON SORTIN UW
  91. LASTNAK EQU X'01' LAST RECORD NOT ACCEPTED UW
  92. SPACE
  93. FLAG02 DS X FORMAT FLAG
  94. FORMASC EQU X'80' ASCENDING UW
  95. FORMDES EQU X'40' DESCENDING UW
  96. FORMCH EQU X'20' CHARACTER UW
  97. FORMZD EQU X'10' ZONED DECIMAL UW
  98. FORMPD EQU X'08' PACKED DECIMAL UW
  99. FORMFI EQU X'04' FIXED BINARY UW
  100. FORMBI EQU X'02' BINARY (NOT SUPPORTED) UW
  101. FORMFL EQU X'01' FLOATING POINT UW
  102. SPACE
  103. FLAG03 DS X SORTFLDS FLAG
  104. FLDFLDS EQU X'80' FIELDS= FOUND UW
  105. FLDFMT EQU X'40' FORMAT= FOUND UW
  106. FLDSIZE EQU X'20' FILSZ= OR SIZE= FOUND UW
  107. FLDSKIP EQU X'10' SKIPREC= FOUND UW
  108. FLDCKPT EQU X'08' CKPT FOUND UW
  109. FLDENTER EQU X'04' SORTFLDS HAS BEEN ENTERED UW
  110. RDRNOE15 EQU X'02' E15 IS NOT TO BE CALLED UW
  111. RDREND EQU X'01' END OF READER UW
  112. SPACE
  113. FLAG04 DS X
  114. WTRCLOSE EQU X'80' CLOSE WRITER UW
  115. DDSORT EQU X'40' DDNAME=SORT AND E35 PRESENT (?) UW
  116. VARINP EQU X'20' VARIABLE LENGTH INPUT UW
  117. WTRNOE35 EQU X'10' E35 IS NOT TO BE CALLED UW
  118. WTRLSTIN EQU X'08' LAST RECORD INSERTED UW
  119. WTRWK01 EQU X'04' USED SORTWK01 UW
  120. RCDTYPE EQU X'02' TYPE= FOUND UW
  121. RCDLENG EQU X'01' LENGTH= FOUND UW
  122. SPACE
  123. DEBLIBR DS F STARTING ADDRESS OF FREE MEMORY
  124. TAILLE DS F FREE MEMORY SIZE
  125. SEQCOMP DS F ADDRESS OF COMPARE SEQUENCY
  126. SEQMVC DS F ADDRESS OF MVC SEQUENCY
  127. BUFFER DS F ADDRESS OF BUFFER
  128. ADTABLE DS F STARTING ADDRESS OF THE TABLE
  129. ADARBRE DS F STARTING ADDRESS OF THE TREE
  130. ADPROCH DS F NEXT FREE ELEMENT ADDRESS IN TREE
  131. CHPTRI DS F ADDRESS OF SORTING FIELD
  132. FINLIBR DS F ENDING ADDRESS OF FREE MEMORY
  133. CORE DS F MEMORY SIZE WANTED
  134. SKIP DS F NUMBER OF RECORDS TO BE SKIP
  135. RCDNBR DS F TOTAL NUMBER OF INPUT RECORDS
  136. DDNAME DS CL4 OPTIONAL DDNAME
  137. STRTCARD DS F SORTFIELDS CARD ADDRESS
  138. ENDCARD DS F
  139. RCDCARD DS F RECORD CARD ADDRESS
  140. ERCDCARD DS F
  141. E15AD DS F E15 EXIT ROUTINE ADDRESS
  142. E35AD DS F E35 EXIT ROUTINE ADDRESS
  143. RCDIN DS F INPUT RECORDS COUNTER
  144. RCDOUT DS F IOUTPUT RECORDS COUNTER
  145. INSERT DS F INSERTED RECORDS COUNTER
  146. DELETE DS F DELEYED RECORDS COUNTER
  147. RCDAD DS F RECORD ADDRESS (USED BY E15 & E35)
  148. OUTAREA DS F
  149. DS 2X
  150. VARSW DS X VARIABLE LENGTH FILE SWITCHES UB
  151. VARIN EQU X'80' VARIABLE LENGTH SORTIN EXISTS |
  152. VARBUF EQU X'40' BUFFER POINTS BEYOND RDW AREA UB
  153. SCHKSWTH DS X
  154. BUFUTIL DS F ADDRESS OF USER'S BUFFER
  155. PLISTPTR DS F
  156. SIZE DS H LENGTH OF INPUT RECORD
  157. NNN DS H NUMBER OF RECORDS IN INPUT
  158. NUMENR DS H CURRENT RECORD NUMBER
  159. STRTCOL DS H STARTING CULUMN
  160. LNGTH DS H LENGTH OF THE FIELD
  161. PETITL DS H L
  162. LPL2 DS H L + 2
  163. LLL DS H L + 12
  164. DEBCH DS H STARTING FIELD
  165. NBARB DS H NUMBER OF TREE (B)
  166. ENDVAR DS 0X
  167. LONGVAR DS 0XL(ENDVAR-GENVAR) LENGTH OF THIS DSECT
  168. LOW EQU 0
  169. HIGH EQU 3
  170. BACK EQU 6
  171. DSTRINIT EQU 64
  172. DSCAN EQU 56
  173. MEND