User Tools

Site Tools


ibm:vm370-lib:macro:rdvtbl.macro_src

RDVTBL Source

References

Source Listing

RDVTBL.MACRO.txt
  1. MACRO 00001000
  2. RDVTBL &TYPE 00002000
  3. .* V0496000 - ASSEMBLER ERROR IGU057 (TABLE SIZE TO SMALL) 00003000
  4. GBLA &CHADDR,&CUADDR,&DVADDR 00004000
  5. GBLC &DVTBL0(256),&DVTBL1(256),&DVTBL2(256),&DVTBL3(256) 00005000
  6. GBLC &DVTBL4(256),&DVTBL5(256),&DVTBL6(256),&DVTBL7(256) 00006000
  7. GBLC &DVTBL8(256),&DVTBL9(256),&DVTBLA(256),&DVTBLB(256) 00007000
  8. GBLC &DVTBLC(256),&DVTBLD(256),&DVTBLE(256),&DVTBLF(256) 00008000
  9. GBLC &DVTBL(8),&NAME 00009000
  10. LCLA &COUNT,&INDEX 00010000
  11. LCLC &TEMP,&DUMMY 00011000
  12. &INDEX SETA &CUADDR*16+&DVADDR+1 00012000
  13. AIF ('&TYPE' EQ 'DEF').DEF 00013000
  14. AIF ('&TYPE' EQ 'GEN').GEN 00014000
  15. MNOTE 8,'INVALID RDVTBL MACRO CALL' 00015000
  16. MEXIT 00016000
  17. .* THIS MACRO DEFINES AN ENTRY IN A RCUDVTBL FOR EACH RDEVBLOK 00017000
  18. .DEF ANOP 00018000
  19. AIF (&CHADDR NE 0).DCH1 00019000
  20. &DUMMY SETC '&DVTBL0(&INDEX)' 00019300
  21. AIF ('&DVTBL0(&INDEX)' NE '').ERR1 00019600
  22. &DVTBL0(&INDEX) SETC '&NAME' 00020000
  23. MEXIT 00021000
  24. .DCH1 AIF (&CHADDR NE 1).DCH2 00022000
  25. &DUMMY SETC '&DVTBL1(&INDEX)' 00022300
  26. AIF ('&DVTBL1(&INDEX)' NE '').ERR1 00022600
  27. &DVTBL1(&INDEX) SETC '&NAME' 00023000
  28. MEXIT 00024000
  29. .DCH2 AIF (&CHADDR NE 2).DCH3 00025000
  30. &DUMMY SETC '&DVTBL2(&INDEX)' 00025300
  31. AIF ('&DVTBL2(&INDEX)' NE '').ERR1 00025600
  32. &DVTBL2(&INDEX) SETC '&NAME' 00026000
  33. MEXIT 00027000
  34. .DCH3 AIF (&CHADDR NE 3).DCH4 00028000
  35. &DUMMY SETC '&DVTBL3(&INDEX)' 00028300
  36. AIF ('&DVTBL3(&INDEX)' NE '').ERR1 00028600
  37. &DVTBL3(&INDEX) SETC '&NAME' 00029000
  38. MEXIT 00030000
  39. .DCH4 AIF (&CHADDR NE 4).DCH5 00031000
  40. &DUMMY SETC '&DVTBL4(&INDEX)' 00031300
  41. AIF ('&DVTBL4(&INDEX)' NE '').ERR1 00031600
  42. &DVTBL4(&INDEX) SETC '&NAME' 00032000
  43. MEXIT 00033000
  44. .DCH5 AIF (&CHADDR NE 5).DCH6 00034000
  45. &DUMMY SETC '&DVTBL5(&INDEX)' 00034300
  46. AIF ('&DVTBL5(&INDEX)' NE '').ERR1 00034600
  47. &DVTBL5(&INDEX) SETC '&NAME' 00035000
  48. MEXIT 00036000
  49. .DCH6 AIF (&CHADDR NE 6).DCH7 00037000
  50. &DUMMY SETC '&DVTBL6(&INDEX)' 00037300
  51. AIF ('&DVTBL6(&INDEX)' NE '').ERR1 00037600
  52. &DVTBL6(&INDEX) SETC '&NAME' 00038000
  53. MEXIT 00039000
  54. .DCH7 AIF (&CHADDR NE 7).DCH8 00040000
  55. &DUMMY SETC '&DVTBL7(&INDEX)' 00040300
  56. AIF ('&DVTBL7(&INDEX)' NE '').ERR1 00040600
  57. &DVTBL7(&INDEX) SETC '&NAME' 00041000
  58. MEXIT 00042000
  59. .DCH8 AIF (&CHADDR NE 8).DCH9 00043000
  60. &DUMMY SETC '&DVTBL8(&INDEX)' 00043300
  61. AIF ('&DVTBL8(&INDEX)' NE '').ERR1 00043600
  62. &DVTBL8(&INDEX) SETC '&NAME' 00044000
  63. MEXIT 00045000
  64. .DCH9 AIF (&CHADDR NE 9).DCHA 00046000
  65. &DUMMY SETC '&DVTBL9(&INDEX)' 00046300
  66. AIF ('&DVTBL9(&INDEX)' NE '').ERR1 00046600
  67. &DVTBL9(&INDEX) SETC '&NAME' 00047000
  68. MEXIT 00048000
  69. .DCHA AIF (&CHADDR NE 10).DCHB 00049000
  70. &DUMMY SETC '&DVTBLA(&INDEX)' 00049300
  71. AIF ('&DVTBLA(&INDEX)' NE '').ERR1 00049600
  72. &DVTBLA(&INDEX) SETC '&NAME' 00050000
  73. MEXIT 00051000
  74. .DCHB AIF (&CHADDR NE 11).DCHC 00052000
  75. &DUMMY SETC '&DVTBLB(&INDEX)' 00052300
  76. AIF ('&DVTBLB(&INDEX)' NE '').ERR1 00052600
  77. &DVTBLB(&INDEX) SETC '&NAME' 00053000
  78. MEXIT 00054000
  79. .DCHC AIF (&CHADDR NE 12).DCHD 00055000
  80. &DUMMY SETC '&DVTBLC(&INDEX)' 00055300
  81. AIF ('&DVTBLC(&INDEX)' NE '').ERR1 00055600
  82. &DVTBLC(&INDEX) SETC '&NAME' 00056000
  83. MEXIT 00057000
  84. .DCHD AIF (&CHADDR NE 13).DCHE 00058000
  85. &DUMMY SETC '&DVTBLD(&INDEX)' 00058300
  86. AIF ('&DVTBLD(&INDEX)' NE '').ERR1 00058600
  87. &DVTBLD(&INDEX) SETC '&NAME' 00059000
  88. MEXIT 00060000
  89. .DCHE AIF (&CHADDR NE 14).DCHF 00061000
  90. &DUMMY SETC '&DVTBLE(&INDEX)' 00061300
  91. AIF ('&DVTBLE(&INDEX)' NE '').ERR1 00061600
  92. &DVTBLE(&INDEX) SETC '&NAME' 00062000
  93. MEXIT 00063000
  94. .DCHF ANOP 00064000
  95. &DUMMY SETC '&DVTBLF(&INDEX)' 00064300
  96. AIF ('&DVTBLF(&INDEX)' NE '').ERR1 00064600
  97. &DVTBLF(&INDEX) SETC '&NAME' 00065000
  98. MEXIT 00066000
  99. .ERR1 MNOTE 8,'CONTROL UNIT TABLE FOR &NAME IN USE BY &DUMMY' 00066200
  100. MEXIT 00066400
  101. .* THIS MACRO GENERATES THE RCUDVTBL IN EACH RCUBLOK 00067000
  102. .GEN ANOP 00068000
  103. &COUNT SETA 1 00069000
  104. .GCH0 AIF (&CHADDR NE 0).GCH1 00070000
  105. &TEMP SETC '&DVTBL0(&INDEX)' 00071000
  106. AGO .CONT 00072000
  107. .GCH1 AIF (&CHADDR NE 1).GCH2 00073000
  108. &TEMP SETC '&DVTBL1(&INDEX)' 00074000
  109. AGO .CONT 00075000
  110. .GCH2 AIF (&CHADDR NE 2).GCH3 00076000
  111. &TEMP SETC '&DVTBL2(&INDEX)' 00077000
  112. AGO .CONT 00078000
  113. .GCH3 AIF (&CHADDR NE 3).GCH4 00079000
  114. &TEMP SETC '&DVTBL3(&INDEX)' 00080000
  115. AGO .CONT 00081000
  116. .GCH4 AIF (&CHADDR NE 4).GCH5 00082000
  117. &TEMP SETC '&DVTBL4(&INDEX)' 00083000
  118. AGO .CONT 00084000
  119. .GCH5 AIF (&CHADDR NE 5).GCH6 00085000
  120. &TEMP SETC '&DVTBL5(&INDEX)' 00086000
  121. AGO .CONT 00087000
  122. .GCH6 AIF (&CHADDR NE 6).GCH7 00088000
  123. &TEMP SETC '&DVTBL6(&INDEX)' 00089000
  124. AGO .CONT 00090000
  125. .GCH7 AIF (&CHADDR NE 7).GCH8 00091000
  126. &TEMP SETC '&DVTBL7(&INDEX)' 00092000
  127. AGO .CONT 00093000
  128. .GCH8 AIF (&CHADDR NE 8).GCH9 00094000
  129. &TEMP SETC '&DVTBL8(&INDEX)' 00095000
  130. AGO .CONT 00096000
  131. .GCH9 AIF (&CHADDR NE 9).GCHA 00097000
  132. &TEMP SETC '&DVTBL9(&INDEX)' 00098000
  133. AGO .CONT 00099000
  134. .GCHA AIF (&CHADDR NE 10).GCHB 00100000
  135. &TEMP SETC '&DVTBLA(&INDEX)' 00101000
  136. AGO .CONT 00102000
  137. .GCHB AIF (&CHADDR NE 11).GCHC 00103000
  138. &TEMP SETC '&DVTBLB(&INDEX)' 00104000
  139. AGO .CONT 00105000
  140. .GCHC AIF (&CHADDR NE 12).GCHD 00106000
  141. &TEMP SETC '&DVTBLC(&INDEX)' 00107000
  142. AGO .CONT 00108000
  143. .GCHD AIF (&CHADDR NE 13).GCHE 00109000
  144. &TEMP SETC '&DVTBLD(&INDEX)' 00110000
  145. AGO .CONT 00111000
  146. .GCHE AIF (&CHADDR NE 14).GCHF 00112000
  147. &TEMP SETC '&DVTBLE(&INDEX)' 00113000
  148. AGO .CONT 00114000
  149. .GCHF ANOP 00115000
  150. &TEMP SETC '&DVTBLF(&INDEX)' 00116000
  151. .CONT AIF ('&TEMP' EQ '').SKIP 00117000
  152. &DVTBL(&COUNT) SETC '&TEMP' 00118000
  153. .SKIP ANOP 00119000
  154. &COUNT SETA &COUNT+1 00120000
  155. &INDEX SETA &INDEX+1 00121000
  156. AIF (&COUNT LE 8).GCH0 00122000
  157. MEND 00123000
ibm/vm370-lib/macro/rdvtbl.macro_src.txt ยท Last modified: 2023/08/06 13:38 by Site Administrator