cdc:nos2.source:opl.opl871:deck:m86form
Deck M86FORM
0 Modifications
Source
Seq # *Modification Id* Act ----------------------------+ 00001 M01S00001.m86form +++|PROC RPCEJCT ((FETP),(LINES)); 00002 M01S00002.m86form +++|# TITLE RPCEJCT - CONDITIONALLY ISSUES A PAGE EJECT. # 00003 M01S00003.m86form +++| BEGIN # RPCEJCT # 00004 M01S00004.m86form +++| 00005 M01S00005.m86form +++|# 00006 M01S00006.m86form +++|** RPCEJCT - CONDITIONALLY ISSUES A PAGE EJECT. 00007 M01S00007.m86form +++|* 00008 M01S00008.m86form +++|* *RPCEJCT* ISSUES A PAGE EJECT IF THE NUMBER OF 00009 M01S00009.m86form +++|* LINES REMAINING ON THE PAGE IS LESS THAN THE NUMBER 00010 M01S00010.m86form +++|* OF LINES TO BE CHECKED. 00011 M01S00011.m86form +++|* 00012 M01S00012.m86form +++|* PROC RPCEJCT((FETP),(LINES)) 00013 M01S00013.m86form +++|* 00014 M01S00014.m86form +++|* ENTRY (FETP) = FWA OF *FET*. 00015 M01S00015.m86form +++|* (LINES) = NUMBER OF LINES TO BE CHECKED. 00016 M01S00016.m86form +++|# 00017 M01S00017.m86form +++| 00018 M01S00018.m86form +++| ITEM FETP I; # *FET* LOCATION # 00019 M01S00019.m86form +++| ITEM LINES I; # NUMBER OF LINES TO BE CHECKED # 00020 M01S00020.m86form +++| 00021 M01S00021.m86form +++|# 00022 M01S00022.m86form +++|**** PROC RPCEJCT - XREF LIST BEGIN. 00023 M01S00023.m86form +++|# 00024 M01S00024.m86form +++| 00025 M01S00025.m86form +++| XREF 00026 M01S00026.m86form +++| BEGIN 00027 M01S00027.m86form +++| PROC RPEJECT; # ISSUES PAGE EJECT # 00028 M01S00028.m86form +++| PROC RPSRCH; # SEARCHES PRINT TABLE # 00029 M01S00029.m86form +++| END 00030 M01S00030.m86form +++| 00031 M01S00031.m86form +++|# 00032 M01S00032.m86form +++|**** PROC RPCEJCT - XREF LIST END. 00033 M01S00033.m86form +++|# 00034 M01S00034.m86form +++| 00035 M01S00035.m86form +++| DEF LISTCON #0#; # TURN COMDECK LISTING OFF # 00036 M01S00036.m86form +++|*CALL COMBFAS 00037 M01S00037.m86form +++|*CALL COMTFMT 00038 M01S00038.m86form +++|*CALL COMTOUT 00039 M01S00039.m86form +++| 00040 M01S00040.m86form +++| CONTROL EJECT; 00041 M01S00041.m86form +++| 00042 M01S00042.m86form +++|# 00043 M01S00043.m86form +++|* NO PROCESSING IS DONE IF A NULL REPORT FILE IS INDICATED. 00044 M01S00044.m86form +++|# 00045 M01S00045.m86form +++| 00046 M01S00046.m86form +++| IF FETP EQ NULLFILE 00047 M01S00047.m86form +++| THEN 00048 M01S00048.m86form +++| BEGIN 00049 M01S00049.m86form +++| RETURN; 00050 M01S00050.m86form +++| END 00051 M01S00051.m86form +++| 00052 M01S00052.m86form +++| RPSRCH(FETP); # SEARCH PRINT TABLE # 00053 M01S00053.m86form +++| 00054 M01S00054.m86form +++|# 00055 M01S00055.m86form +++|* IF THE NUMBER OF LINES REMAINING ON THE PAGE IS 00056 M01S00056.m86form +++|* LESS THAN THE NUMBER OF LINES TO BE CHECKED, ISSUE 00057 M01S00057.m86form +++|* A PAGE EJECT. 00058 M01S00058.m86form +++|# 00059 M01S00059.m86form +++| 00060 M01S00060.m86form +++| IF (PRTLINELIM[ORD] - PRTLINE[ORD] + 1) GQ LINES 00061 M01S00061.m86form +++| THEN 00062 M01S00062.m86form +++| BEGIN 00063 M01S00063.m86form +++| RETURN; 00064 M01S00064.m86form +++| END 00065 M01S00065.m86form +++| 00066 M01S00066.m86form +++| RPEJECT(FETP); 00067 M01S00067.m86form +++| RETURN; 00068 M01S00068.m86form +++| END # RPCEJCT # 00069 M01S00069.m86form +++| 00070 M01S00070.m86form +++| TERM 00071 M01S00071.m86form +++|PROC RPCLOSE((FETP)); 00072 M01S00072.m86form +++|# TITLE RPCLOSE - CLOSES A REPORT FILE. # 00073 M01S00073.m86form +++| 00074 M01S00074.m86form +++| BEGIN # RPCLOSE # 00075 M01S00075.m86form +++| 00076 M01S00076.m86form +++|# 00077 M01S00077.m86form +++|** RPCLOSE - CLOSES A REPORT FILE. 00078 M01S00078.m86form +++|* 00079 M01S00079.m86form +++|* THIS PROCEDURE WRITES THE MESSAGE *REPORT 00080 M01S00080.m86form +++|* COMPLETE* ON THE REPORT FILE, CLEARS THE 00081 M01S00081.m86form +++|* *FET* ADDRESS IN THE PRINT TABLE ENTRY, AND 00082 M01S00082.m86form +++|* CALLS *WRITER* TO CLOSE THE REPORT FILE. 00083 M01S00083.m86form +++|* 00084 M01S00084.m86form +++|* PROC RPCLOSE((FETP)). 00085 M01S00085.m86form +++|* 00086 M01S00086.m86form +++|* ENTRY (FETP) - ADDRESS OF REPORT FILE *FET*. 00087 M01S00087.m86form +++|* = *NULLFILE*, NO REPORT PROCESSING DONE. 00088 M01S00088.m86form +++|* (VALUE DEFINED IN *COMTOUT*) 00089 M01S00089.m86form +++|* = OTHER, ADDRESS OF *FET*. 00090 M01S00090.m86form +++|* 00091 M01S00091.m86form +++|* EXIT REPORT FILE IS CLOSED. A PAGE EJECT IS ISSUED AND 00092 M01S00092.m86form +++|* *REPORT COMPLETE* IS PRINTED. 00093 M01S00093.m86form +++|* 00094 M01S00094.m86form +++|* NOTES *RPCLOSE* CALLS *WRITER* TO WRITE AN 00095 M01S00095.m86form +++|* END-OF-RECORD ON THE REPORT FILE, AND 00096 M01S00096.m86form +++|* CLEARS THE VALUE OF *FETP* FROM THE PRINT 00097 M01S00097.m86form +++|* TABLE ENTRY TO INDICATE THAT THE ENTRY 00098 M01S00098.m86form +++|* IS NOW EMPTY. 00099 M01S00099.m86form +++|# 00100 M01S00100.m86form +++| 00101 M01S00101.m86form +++| ITEM FETP U; # ADDRESS OF REPORT FILE *FET* # 00102 M01S00102.m86form +++| 00103 M01S00103.m86form +++|# 00104 M01S00104.m86form +++|**** PROC RPCLOSE - XREF LIST BEGIN. 00105 M01S00105.m86form +++|# 00106 M01S00106.m86form +++| 00107 M01S00107.m86form +++| XREF 00108 M01S00108.m86form +++| BEGIN 00109 M01S00109.m86form +++| PROC RPLINEX; # PRINTS A REPORT LINE # 00110 M01S00110.m86form +++| PROC RPSRCH; # SEARCHES THE PRINT TABLE # 00111 M01S00111.m86form +++| PROC WRITER; # WRITES *EOR* ON REPORT FILE # 00112 M01S00112.m86form +++| END 00113 M01S00113.m86form +++| 00114 M01S00114.m86form +++|# 00115 M01S00115.m86form +++|**** PROC RPCLOSE - XREF LIST END. 00116 M01S00116.m86form +++|# 00117 M01S00117.m86form +++| 00118 M01S00118.m86form +++| DEF LISTCON #0#; # CONTROLS LISTING OF COMDECKS # 00119 M01S00119.m86form +++|*CALL COMBFAS 00120 M01S00120.m86form +++|*CALL COMTFMT 00121 M01S00121.m86form +++|*CALL COMTOUT 00122 M01S00122.m86form +++|CONTROL EJECT; 00123 M01S00123.m86form +++| 00124 M01S00124.m86form +++|# 00125 M01S00125.m86form +++|* NO PROCESSING IS DONE IF NO REPORT FILE IS INDICATED. 00126 M01S00126.m86form +++|# 00127 M01S00127.m86form +++| 00128 M01S00128.m86form +++| IF FETP EQ NULLFILE 00129 M01S00129.m86form +++| THEN 00130 M01S00130.m86form +++| BEGIN 00131 M01S00131.m86form +++| RETURN; 00132 M01S00132.m86form +++| END 00133 M01S00133.m86form +++| 00134 M01S00134.m86form +++|# 00135 M01S00135.m86form +++|* PRINT COMPLETION MESSAGE AND CLEAR THE PRINT TABLE. 00136 M01S00136.m86form +++|# 00137 M01S00137.m86form +++| 00138 M01S00138.m86form +++| RPSRCH(FETP); # SEARCH PRINT TABLE # 00139 M01S00139.m86form +++| RPLINEX(FETP,"1**REPORT COMPLETE**",0,20,0); 00140 M01S00140.m86form +++| P<RPFET> = FETP; 00141 M01S00141.m86form +++| WRITER(RPFET[0],RCL); # WRITE END-OF-RECORD # 00142 M01S00142.m86form +++| 00143 M01S00143.m86form +++| PRTFETP[ORD] = EMPTY; # CLEAR *FET* ADDRESS FROM TABLE # 00144 M01S00144.m86form +++| RETURN; 00145 M01S00145.m86form +++| END # RPCLOSE # 00146 M01S00146.m86form +++| 00147 M01S00147.m86form +++| TERM 00148 M01S00148.m86form +++|PROC RPEJECT((FETP)); 00149 M01S00149.m86form +++|# TITLE RPEJECT - STARTS A NEW REPORT PAGE. # 00150 M01S00150.m86form +++| 00151 M01S00151.m86form +++| BEGIN # RPEJECT # 00152 M01S00152.m86form +++| 00153 M01S00153.m86form +++|# 00154 M01S00154.m86form +++|** RPEJECT - STARTS NEW REPORT PAGE. 00155 M01S00155.m86form +++|* 00156 M01S00156.m86form +++|* THIS PROCEDURE ADVANCES THE REPORT FILE 00157 M01S00157.m86form +++|* TO A NEW PAGE, SETS THE CURRENT LINE NUMBER 00158 M01S00158.m86form +++|* EQUAL TO ONE, AND PRINTS THE PAGE HEADING. 00159 M01S00159.m86form +++|* 00160 M01S00160.m86form +++|* PROC RPEJECT((FETP)). 00161 M01S00161.m86form +++|* 00162 M01S00162.m86form +++|* ENTRY (FETP) - ADDRESS OF THE REPORT FILE *FET*. 00163 M01S00163.m86form +++|* = *NULLFILE*, NO REPORT PROCESSING DONE. 00164 M01S00164.m86form +++|* (VALUE DEFINED IN *COMTOUT*) 00165 M01S00165.m86form +++|* = OTHER, ADDRESS OF *FET*. 00166 M01S00166.m86form +++|* 00167 M01S00167.m86form +++|* EXIT NEW PAGE HEADING IS COMPLETED. 00168 M01S00168.m86form +++|* 00169 M01S00169.m86form +++|* NOTES *RPEJECT* SETS UP THE PAGE HEADER LINE 00170 M01S00170.m86form +++|* WITH DATE, TIME, PAGE NUMBER, AND 00171 M01S00171.m86form +++|* CARRIAGE CONTROL CHARACTER. AFTER 00172 M01S00172.m86form +++|* PRINTING THIS LINE, THE LINE BUFFER 00173 M01S00173.m86form +++|* IS BLANK-FILLED AND *XPRC* IS CALLED 00174 M01S00174.m86form +++|* TO EXECUTE THE HEADER PROCEDURE. THE 00175 M01S00175.m86form +++|* REPORT FILE MUST HAVE ALREADY BEEN OPENED 00176 M01S00176.m86form +++|* BY CALLING *RPOPEN*. 00177 M01S00177.m86form +++|# 00178 M01S00178.m86form +++| 00179 M01S00179.m86form +++| ITEM FETP U; # ADDRESS OF REPORT FILE *FET* # 00180 M01S00180.m86form +++| 00181 M01S00181.m86form +++|# 00182 M01S00182.m86form +++|**** PROC RPEJECT - XREF LIST BEGIN. 00183 M01S00183.m86form +++|# 00184 M01S00184.m86form +++| 00185 M01S00185.m86form +++| XREF 00186 M01S00186.m86form +++| BEGIN 00187 M01S00187.m86form +++| PROC RPSRCH; # SEARCHES THE PRINT TABLE # 00188 M01S00188.m86form +++| PROC WRITEH; # WRITES LINE ON REPORT FILE # 00189 M01S00189.m86form +++| FUNC XCDD C(10); # CONVERTS INTEGER TO DISPLAY # 00190 M01S00190.m86form +++| PROC XPRC; # EXECUTES A PROCEDURE # 00191 M01S00191.m86form +++| END 00192 M01S00192.m86form +++| 00193 M01S00193.m86form +++|# 00194 M01S00194.m86form +++|**** PROC RPEJECT - XREF LIST END. 00195 M01S00195.m86form +++|# 00196 M01S00196.m86form +++| 00197 M01S00197.m86form +++| DEF LISTCON #0#; # CONTROLS LISTING OF COMDECKS # 00198 M01S00198.m86form +++|*CALL COMBFAS 00199 M01S00199.m86form +++|*CALL COMTFMT 00200 M01S00200.m86form +++|*CALL COMTOUT 00201 M01S00201.m86form +++| ITEM PAGENUM C(10); # PAGE NUMBER IN DISPLAY CODE # 00202 M01S00202.m86form +++|CONTROL EJECT; 00203 M01S00203.m86form +++| 00204 M01S00204.m86form +++|# 00205 M01S00205.m86form +++|* NO PROCESSING IS DONE IF A NULL REPORT FILE IS INDICATED. 00206 M01S00206.m86form +++|# 00207 M01S00207.m86form +++| 00208 M01S00208.m86form +++| IF FETP EQ NULLFILE 00209 M01S00209.m86form +++| THEN 00210 M01S00210.m86form +++| BEGIN 00211 M01S00211.m86form +++| RETURN; 00212 M01S00212.m86form +++| END 00213 M01S00213.m86form +++| 00214 M01S00214.m86form +++| 00215 M01S00215.m86form +++|# 00216 M01S00216.m86form +++|* UPDATE PAGE AND LINE COUNTS. 00217 M01S00217.m86form +++|# 00218 M01S00218.m86form +++| 00219 M01S00219.m86form +++| RPSRCH(FETP); # SEARCH PRINT TABLE FOR *FETP* # 00220 M01S00220.m86form +++| 00221 M01S00221.m86form +++| PRTPAGE[ORD] = PRTPAGE[ORD] + 1; 00222 M01S00222.m86form +++| PRTLINE[ORD] = 1; 00223 M01S00223.m86form +++| PAGENUM = XCDD(PRTPAGE[ORD]); # PAGE NUMBER IN DISPLAY CODE # 00224 M01S00224.m86form +++| 00225 M01S00225.m86form +++|# 00226 M01S00226.m86form +++|* SET UP AND PRINT THE PAGE HEADER LINE. 00227 M01S00227.m86form +++|# 00228 M01S00228.m86form +++| 00229 M01S00229.m86form +++| LIN$CNTRL[ORD] = PRCEJ; # CAUSE PAGE EJECT # 00230 M01S00230.m86form +++| LIN$HEAD[ORD] = PRTHEADT[ORD]; # CURRENT MESSAGE # 00231 M01S00231.m86form +++| LIN$DATE[ORD] = PRTDATE[ORD]; # CURRENT DATE # 00232 M01S00232.m86form +++| LIN$TIME[ORD] = PRTTIME[ORD]; # CURRENT TIME # 00233 M01S00233.m86form +++| LIN$PAGE[ORD] = "PAGE"; 00234 M01S00234.m86form +++| LIN$PAGENM[ORD] = C<4,6>PAGENUM; # PAGE NUMBER # 00235 M01S00235.m86form +++| P<RPFET> = FETP; 00236 M01S00236.m86form +++| WRITEH(RPFET[0],LINEBUFF[ORD],LINELEN); # PRINT LINE # 00237 M01S00237.m86form +++| PRTLINE[ORD] = PRTLINE[ORD] + 1; # INCREMENT LINE COUNTER # 00238 M01S00238.m86form +++| 00239 M01S00239.m86form +++| LIN$BUF[ORD] = SPACES; # BLANK FILL *LINEBUFF* # 00240 M01S00240.m86form +++| 00241 M01S00241.m86form +++|# 00242 M01S00242.m86form +++|* EXECUTE SPECIFIED HEADER PROCEDURE. 00243 M01S00243.m86form +++|# 00244 M01S00244.m86form +++| 00245 M01S00245.m86form +++| XPRC(PRTHEADP[ORD],FETP,BLANK); 00246 M01S00246.m86form +++| RETURN; 00247 M01S00247.m86form +++| END # RPEJECT # 00248 M01S00248.m86form +++| 00249 M01S00249.m86form +++| TERM 00250 M01S00250.m86form +++|PROC RPHEAD((FETP),(MESG),(COL),(LEN)); 00251 M01S00251.m86form +++|# TITLE RPHEAD - SETS UP HEADER PRINT FIELD. # 00252 M01S00252.m86form +++| 00253 M01S00253.m86form +++| BEGIN # RPHEAD # 00254 M01S00254.m86form +++| 00255 M01S00255.m86form +++|# 00256 M01S00256.m86form +++|** RPHEAD - SETS UP HEADER PRINT FIELD. 00257 M01S00257.m86form +++|* 00258 M01S00258.m86form +++|* *RPHEAD* SETS UP AN OPTIONAL HEADER PRINT FIELD IN THE 00259 M01S00259.m86form +++|* FIRST THIRTY-SEVEN CHARACTERS OF THE HEADER PAGE LINE. 00260 M01S00260.m86form +++|* 00261 M01S00261.m86form +++|* PROC RPHEAD((FETP),(MESG),(COL),(LEN)) 00262 M01S00262.m86form +++|* 00263 M01S00263.m86form +++|* ENTRY (FETP) - ADDRESS OF *FET* FOR REPORT FILE. 00264 M01S00264.m86form +++|* (MESG) - HEADER MESSAGE. 00265 M01S00265.m86form +++|* (COL) - STARTING COLUMN. 00266 M01S00266.m86form +++|* (LEN) - CHARACTER LENGTH OF FIELD. 00267 M01S00267.m86form +++|* 00268 M01S00268.m86form +++|* EXIT HEADER PRINT FIELD IS SET UP. 00269 M01S00269.m86form +++|* 00270 M01S00270.m86form +++|* NOTES THE SPECIFIED MESSAGE WILL BE PRINTED ON EVERY 00271 M01S00271.m86form +++|* SUBSEQUENT PAGE HEADING UNTIL CHANGED OR CLEARED 00272 M01S00272.m86form +++|* BY ANOTHER CALL TO *RPHEAD*. THE MAXIMUM NUMBER 00273 M01S00273.m86form +++|* OF CHARACTERS ALLOWED FOR THE HEADER FIELD IS 00274 M01S00274.m86form +++|* THIRTY-SEVEN. 00275 M01S00275.m86form +++|# 00276 M01S00276.m86form +++| 00277 M01S00277.m86form +++| ITEM FETP U; # ADDRESS OF REPORT FILE FET # 00278 M01S00278.m86form +++| ITEM MESG C(37); # HEADER MESSAGE # 00279 M01S00279.m86form +++| ITEM COL U; # STARTING COLUMN FOR FIELD # 00280 M01S00280.m86form +++| ITEM LEN U; # LENGTH OF PRINT FIELD # 00281 M01S00281.m86form +++| 00282 M01S00282.m86form +++|# 00283 M01S00283.m86form +++|**** PROC RPHEAD - XREF LIST BEGIN. 00284 M01S00284.m86form +++|# 00285 M01S00285.m86form +++| 00286 M01S00286.m86form +++| XREF 00287 M01S00287.m86form +++| BEGIN 00288 M01S00288.m86form +++| PROC RPSRCH; # SEARCHES PRINT TABLE # 00289 M01S00289.m86form +++| END 00290 M01S00290.m86form +++| 00291 M01S00291.m86form +++|# 00292 M01S00292.m86form +++|**** PROC RPHEAD - XREF LIST END. 00293 M01S00293.m86form +++|# 00294 M01S00294.m86form +++| 00295 M01S00295.m86form +++| DEF LISTCON #0#; # TURN LISTING OFF # 00296 M01S00296.m86form +++|*CALL COMBFAS 00297 M01S00297.m86form +++|*CALL COMTFMT 00298 M01S00298.m86form +++|*CALL COMTOUT 00299 M01S00299.m86form +++| 00300 M01S00300.m86form +++| CONTROL EJECT; 00301 M01S00301.m86form +++| 00302 M01S00302.m86form +++|# 00303 M01S00303.m86form +++|* NO PROCESSING IS DONE IF A NULL REPORT FILE IS INDICATED. 00304 M01S00304.m86form +++|# 00305 M01S00305.m86form +++| 00306 M01S00306.m86form +++| IF FETP EQ NULLFILE 00307 M01S00307.m86form +++| THEN 00308 M01S00308.m86form +++| BEGIN 00309 M01S00309.m86form +++| RETURN; 00310 M01S00310.m86form +++| END 00311 M01S00311.m86form +++| 00312 M01S00312.m86form +++|# 00313 M01S00313.m86form +++|* SET UP PRINT FIELD. 00314 M01S00314.m86form +++|# 00315 M01S00315.m86form +++| 00316 M01S00316.m86form +++| RPSRCH(FETP); # FIND PRINT TABLE ENTRY # 00317 M01S00317.m86form +++| C<COL-1,LEN>PRTHEADT[ORD] = C<0,LEN>MESG; 00318 M01S00318.m86form +++| END # RPHEAD # 00319 M01S00319.m86form +++| 00320 M01S00320.m86form +++| TERM 00321 M01S00321.m86form +++|PROC RPLINE((FETP),FIELD,(COL),(LEN),(FLAG)); 00322 M01S00322.m86form +++| 00323 M01S00323.m86form +++|# TITLE RPLINE - CALLS *RPLINEX* TO PRINT A LINE. # 00324 M01S00324.m86form +++| 00325 M01S00325.m86form +++| BEGIN # RPLINE # 00326 M01S00326.m86form +++| 00327 M01S00327.m86form +++|# 00328 M01S00328.m86form +++|** RPLINE - CALLS *RPLINEX* TO PRINT A LINE. 00329 M01S00329.m86form +++|* 00330 M01S00330.m86form +++|* THIS PROCEDURE CHECKS THE CURRENT LINE NUMBER AND CALLS 00331 M01S00331.m86form +++|* *RPEJECT* IF THE LINE LIMIT IS EXCEEDED. IT THEN CALLS 00332 M01S00332.m86form +++|* *RPLINEX* TO SET UP PRINT FIELD *FIELD* IN THE LINE BUFFER. 00333 M01S00333.m86form +++|* THE LINE IS EITHER PRINTED OR SAVED, DEPENDING ON THE VALUE 00334 M01S00334.m86form +++|* OF *FLAG* SPECIFIED. 00335 M01S00335.m86form +++|* 00336 M01S00336.m86form +++|* PROC RPLINE((FETP),FIELD,(COL),(LEN),(FLAG)). 00337 M01S00337.m86form +++|* 00338 M01S00338.m86form +++|* ENTRY (FETP) - ADDRESS OF *FET* FOR REPORT FILE. 00339 M01S00339.m86form +++|* = *NULLFILE*, NO REPORT PROCESSING IS DONE. 00340 M01S00340.m86form +++|* (VALUE DEFINED IN *COMTOUT*) 00341 M01S00341.m86form +++|* = OTHER, ADDRESS OF *FET*. 00342 M01S00342.m86form +++|* (FIELD) - STRING TO BE PRINTED. 00343 M01S00343.m86form +++|* (COL) - STARTING COLUMN FOR *FIELD*. 00344 M01S00344.m86form +++|* (LEN) - CHARACTER LENGTH OF *FIELD*. 00345 M01S00345.m86form +++|* (FLAG) - INDICATES CONTINUATION OF LINE. 00346 M01S00346.m86form +++|* (VALUES DEFINED IN *COMTOUT*) 00347 M01S00347.m86form +++|* = *END$LN*, CONTENTS OF BUFFER ARE PRINTED. 00348 M01S00348.m86form +++|* = *CONT$LN*, CONTENTS OF BUFFER ARE SAVED. 00349 M01S00349.m86form +++|* 00350 M01S00350.m86form +++|* EXIT LINE IS PRINTED OR CONTENTS OF BUFFER ARE SAVED 00351 M01S00351.m86form +++|* UNTIL NEXT CALL TO *RPLINE*. THE MAXIMUM FIELD 00352 M01S00352.m86form +++|* SIZE IS 138 CHARACTERS. 00353 M01S00353.m86form +++|# 00354 M01S00354.m86form +++| 00355 M01S00355.m86form +++| ITEM FETP U; # ADDRESS OF REPORT FILE *FET* # 00356 M01S00356.m86form +++| 00357 M01S00357.m86form +++| ARRAY FIELD [0:0] S(14); # ARRAY CONTAINING PRINT FIELD # 00358 M01S00358.m86form +++| BEGIN 00359 M01S00359.m86form +++| ITEM FIELDPR C(00,00,138); # PRINT STRING # 00360 M01S00360.m86form +++| END 00361 M01S00361.m86form +++| 00362 M01S00362.m86form +++| ITEM COL U; # STARTING COLUMN OF FIELD # 00363 M01S00363.m86form +++| ITEM LEN U; # LENGTH OF PRINT FIELD # 00364 M01S00364.m86form +++| ITEM FLAG U; # INDICATES LINE CONTINUATION # 00365 M01S00365.m86form +++| 00366 M01S00366.m86form +++| 00367 M01S00367.m86form +++| 00368 M01S00368.m86form +++|# 00369 M01S00369.m86form +++|**** PROC RPLINE - XREF LIST BEGIN. 00370 M01S00370.m86form +++|# 00371 M01S00371.m86form +++| 00372 M01S00372.m86form +++| XREF 00373 M01S00373.m86form +++| BEGIN 00374 M01S00374.m86form +++| PROC RPEJECT; # STARTS NEW REPORT PAGE # 00375 M01S00375.m86form +++| PROC RPLINEX; # PRINTS LINE ON REPORT FILE # 00376 M01S00376.m86form +++| PROC RPSRCH; # SEARCHES PRINT TABLE # 00377 M01S00377.m86form +++| END 00378 M01S00378.m86form +++| 00379 M01S00379.m86form +++|# 00380 M01S00380.m86form +++|**** PROC RPLINE - XREF LIST END. 00381 M01S00381.m86form +++|# 00382 M01S00382.m86form +++| 00383 M01S00383.m86form +++| DEF LISTCON #0#; # CONTROLS LISTING OF COMDECKS # 00384 M01S00384.m86form +++| 00385 M01S00385.m86form +++|*CALL COMBFAS 00386 M01S00386.m86form +++|*CALL COMTFMT 00387 M01S00387.m86form +++|*CALL COMTOUT 00388 M01S00388.m86form +++|CONTROL EJECT; 00389 M01S00389.m86form +++| 00390 M01S00390.m86form +++| 00391 M01S00391.m86form +++|# 00392 M01S00392.m86form +++|* NO PROCESSING IS DONE IF A NULL REPORT FILE IS INDICATED. 00393 M01S00393.m86form +++|# 00394 M01S00394.m86form +++| 00395 M01S00395.m86form +++| IF FETP EQ NULLFILE 00396 M01S00396.m86form +++| THEN 00397 M01S00397.m86form +++| BEGIN 00398 M01S00398.m86form +++| RETURN; 00399 M01S00399.m86form +++| END 00400 M01S00400.m86form +++| 00401 M01S00401.m86form +++|# 00402 M01S00402.m86form +++|* CHECK LINE COUNT AND PRINT REPORT LINE. 00403 M01S00403.m86form +++|# 00404 M01S00404.m86form +++| 00405 M01S00405.m86form +++| RPSRCH(FETP); # SEARCH FOR MATCHING *FETP* # 00406 M01S00406.m86form +++| 00407 M01S00407.m86form +++| IF PRTLINE[ORD] GR PRTLINELIM[ORD] 00408 M01S00408.m86form +++| THEN # NEW PAGE NEEDED # 00409 M01S00409.m86form +++| BEGIN 00410 M01S00410.m86form +++| RPEJECT(FETP); 00411 M01S00411.m86form +++| END 00412 M01S00412.m86form +++| 00413 M01S00413.m86form +++| RPLINEX(FETP,FIELD,COL,LEN,FLAG); 00414 M01S00414.m86form +++| 00415 M01S00415.m86form +++| 00416 M01S00416.m86form +++| 00417 M01S00417.m86form +++| RETURN; 00418 M01S00418.m86form +++| END # RPLINE # 00419 M01S00419.m86form +++| 00420 M01S00420.m86form +++| TERM 00421 M01S00421.m86form +++|PROC RPLINEX((FETP),FIELD,(COL),(LEN),(FLAG)); 00422 M01S00422.m86form +++|# TITLE RPLINEX - PRINTS A REPORT LINE. # 00423 M01S00423.m86form +++| 00424 M01S00424.m86form +++| BEGIN # RPLINEX # 00425 M01S00425.m86form +++| 00426 M01S00426.m86form +++|# 00427 M01S00427.m86form +++|** RPLINEX - PRINTS A LINE ON THE REPORT FILE. 00428 M01S00428.m86form +++|* 00429 M01S00429.m86form +++|* *RPLINEX* SETS UP PRINT FIELD *FIELD* IN A LINE BUFFER. 00430 M01S00430.m86form +++|* THE CONTENTS OF THE BUFFER ARE EITHER PRINTED OR SAVED, DEPENDING 00431 M01S00431.m86form +++|* ON THE VALUE OF *FLAG*. MORE THAN ONE FIELD PER PRINT 00432 M01S00432.m86form +++|* LINE CAN BE SPECIFIED BY MAKING MORE THAN ONE CALL TO 00433 M01S00433.m86form +++|* *RPLINEX*. 00434 M01S00434.m86form +++|* 00435 M01S00435.m86form +++|* PROC RPLINEX((FETP),FIELD,(COL),(LEN),(FLAG)). 00436 M01S00436.m86form +++|* 00437 M01S00437.m86form +++|* ENTRY (FETP) - ADDRESS OF *FET* FOR REPORT FILE. 00438 M01S00438.m86form +++|* = *NULLFILE*, NO REPORT PROCESSING IS DONE. 00439 M01S00439.m86form +++|* (VALUE DEFINED IN *COMTOUT*) 00440 M01S00440.m86form +++|* = OTHER, ADDRESS OF *FET*. 00441 M01S00441.m86form +++|* (FIELD) - STRING TO BE PRINTED. 00442 M01S00442.m86form +++|* (COL) - STARTING COLUMN FOR *FIELD*. 00443 M01S00443.m86form +++|* (LEN) - CHARACTER LENGTH OF *FIELD*. 00444 M01S00444.m86form +++|* (FLAG) - INDICATES CONTINUATION OF LINE. 00445 M01S00445.m86form +++|* (VALUES DEFINED IN *COMTOUT*) 00446 M01S00446.m86form +++|* = *END$LN*, CONTENTS OF BUFFER ARE PRINTED. 00447 M01S00447.m86form +++|* = *CONT$LN*, CONTENTS OF BUFFER ARE SAVED. 00448 M01S00448.m86form +++|* 00449 M01S00449.m86form +++|* EXIT LINE IS PRINTED OR CONTENTS OF BUFFER ARE SAVED 00450 M01S00450.m86form +++|* UNTIL NEXT CALL TO *RPLINEX*. THE LINE COUNTER IS 00451 M01S00451.m86form +++|* INCREMENTED AS NEEDED. 00452 M01S00452.m86form +++|# 00453 M01S00453.m86form +++| 00454 M01S00454.m86form +++| ITEM FETP U; # ADDRESS OF REPORT FILE *FET* # 00455 M01S00455.m86form +++| 00456 M01S00456.m86form +++| 00457 M01S00457.m86form +++| ARRAY FIELD [0:0] S(14); # ARRAY CONTAINING PRINT FIELD # 00458 M01S00458.m86form +++| BEGIN 00459 M01S00459.m86form +++| ITEM FIELDPR C(00,00,138); # PRINT STRING # 00460 M01S00460.m86form +++| END 00461 M01S00461.m86form +++| 00462 M01S00462.m86form +++| ITEM COL U; # STARTING COLUMN OF FIELD # 00463 M01S00463.m86form +++| ITEM LEN U; # LENGTH OF PRINT FIELD # 00464 M01S00464.m86form +++| ITEM FLAG U; # INDICATES LINE CONTINUATION # 00465 M01S00465.m86form +++| 00466 M01S00466.m86form +++|# 00467 M01S00467.m86form +++|**** PROC RPLINEX - XREF LIST BEGIN. 00468 M01S00468.m86form +++|# 00469 M01S00469.m86form +++| 00470 M01S00470.m86form +++| XREF 00471 M01S00471.m86form +++| BEGIN 00472 M01S00472.m86form +++| PROC RPSRCH; # SEARCHES PRINT TABLE # 00473 M01S00473.m86form +++| PROC WRITEH; # WRITES LINE ON REPORT FILE # 00474 M01S00474.m86form +++| END 00475 M01S00475.m86form +++| 00476 M01S00476.m86form +++|# 00477 M01S00477.m86form +++|**** PROC RPLINEX - XREF LIST END. 00478 M01S00478.m86form +++|# 00479 M01S00479.m86form +++| 00480 M01S00480.m86form +++| DEF LISTCON #0#; # CONTROLS LISTING OF COMDECKS # 00481 M01S00481.m86form +++| 00482 M01S00482.m86form +++|*CALL COMBFAS 00483 M01S00483.m86form +++|*CALL COMTFMT 00484 M01S00484.m86form +++|*CALL COMTOUT 00485 M01S00485.m86form +++| 00486 M01S00486.m86form +++|CONTROL EJECT; 00487 M01S00487.m86form +++| 00488 M01S00488.m86form +++| 00489 M01S00489.m86form +++|# 00490 M01S00490.m86form +++|* NO PROCESSING IS DONE IF A NULL REPORT FILE IS INDICATED. 00491 M01S00491.m86form +++|# 00492 M01S00492.m86form +++| 00493 M01S00493.m86form +++| IF FETP EQ NULLFILE 00494 M01S00494.m86form +++| THEN 00495 M01S00495.m86form +++| BEGIN 00496 M01S00496.m86form +++| RETURN; 00497 M01S00497.m86form +++| END 00498 M01S00498.m86form +++| 00499 M01S00499.m86form +++| 00500 M01S00500.m86form +++|# 00501 M01S00501.m86form +++|* THE CHARACTER STRING *FIELD* IS PLACED IN THE 00502 M01S00502.m86form +++|* APPROPRIATE LOCATION IN *LINEBUFF*. IF THE VALUE 00503 M01S00503.m86form +++|* OF *FLAG* IS *CONT$LN*, THE CONTENTS OF *LINEBUFF* 00504 M01S00504.m86form +++|* ARE SAVED. OTHERWISE A LINE IS PRINTED. 00505 M01S00505.m86form +++|# 00506 M01S00506.m86form +++| 00507 M01S00507.m86form +++| RPSRCH(FETP); # FIND PRINT TABLE ENTRY # 00508 M01S00508.m86form +++| P<RPFET> = FETP; 00509 M01S00509.m86form +++| 00510 M01S00510.m86form +++| IF FIELDPR[0] NQ EMPTY # IF *FIELD* CONTAINS STRING # 00511 M01S00511.m86form +++| THEN 00512 M01S00512.m86form +++| BEGIN 00513 M01S00513.m86form +++| C<COL,LEN>LIN$BUF[ORD] = FIELDPR[0]; # SET UP PRINT FIELD # 00514 M01S00514.m86form +++| END 00515 M01S00515.m86form +++| 00516 M01S00516.m86form +++| IF FLAG EQ CONT$LN # IF LINE CONTINUED # 00517 M01S00517.m86form +++| THEN 00518 M01S00518.m86form +++| BEGIN 00519 M01S00519.m86form +++| RETURN; # SAVE CONTENTS OF *LINEBUFF* # 00520 M01S00520.m86form +++| END 00521 M01S00521.m86form +++| 00522 M01S00522.m86form +++|# 00523 M01S00523.m86form +++|* WRITE PRINT LINE. 00524 M01S00524.m86form +++|# 00525 M01S00525.m86form +++| 00526 M01S00526.m86form +++| WRITEH(RPFET[0],LINEBUFF[ORD],LINELEN); 00527 M01S00527.m86form +++| IF LIN$CNTRL[ORD] EQ PRDBL 00528 M01S00528.m86form +++| THEN # DOUBLE SPACE DONE # 00529 M01S00529.m86form +++| BEGIN 00530 M01S00530.m86form +++| PRTLINE[ORD] = PRTLINE[ORD] + 2; # INCREMENT LINE COUNT # 00531 M01S00531.m86form +++| END 00532 M01S00532.m86form +++| 00533 M01S00533.m86form +++| ELSE # SINGLE SPACE ASSUMED # 00534 M01S00534.m86form +++| BEGIN 00535 M01S00535.m86form +++| PRTLINE[ORD] = PRTLINE[ORD] + 1; # INCREMENT BY ONE # 00536 M01S00536.m86form +++| END 00537 M01S00537.m86form +++| 00538 M01S00538.m86form +++| LIN$BUF[ORD] = SPACES; # BLANK FILL *LINEBUFF* # 00539 M01S00539.m86form +++| RETURN; 00540 M01S00540.m86form +++| 00541 M01S00541.m86form +++| END # RPLINEX # 00542 M01S00542.m86form +++| 00543 M01S00543.m86form +++| TERM 00544 M01S00544.m86form +++|PROC RPOPEN((NAME),(FETP),HEADPROC); 00545 M01S00545.m86form +++|# TITLE RPOPEN - OPENS A REPORT FILE. # 00546 M01S00546.m86form +++| 00547 M01S00547.m86form +++| BEGIN # RPOPEN # 00548 M01S00548.m86form +++| 00549 M01S00549.m86form +++|# 00550 M01S00550.m86form +++|** RPOPEN - OPENS A REPORT FILE. 00551 M01S00551.m86form +++|* 00552 M01S00552.m86form +++|* THIS PROCEDURE SETS UP THE PRINT TABLE 00553 M01S00553.m86form +++|* FOR A REPORT FILE AND CALLS *RPEJECT* 00554 M01S00554.m86form +++|* TO START THE FIRST PAGE. 00555 M01S00555.m86form +++|* 00556 M01S00556.m86form +++|* PROC RPOPEN((NAME),(FETP),HEADPROC). 00557 M01S00557.m86form +++|* 00558 M01S00558.m86form +++|* ENTRY (NAME) - NAME OF REPORT FILE. 00559 M01S00559.m86form +++|* (FETP) - REPORT FILE *FET* OPTION. 00560 M01S00560.m86form +++|* = *NULLFILE*, NO REPORT PROCESSING IS DONE. 00561 M01S00561.m86form +++|* (VALUE DEFINED IN *COMTOUT*) 00562 M01S00562.m86form +++|* = OTHER, ADDRESS OF REPORT FILE *FET*. 00563 M01S00563.m86form +++|* (HEADPROC) - HEADER PROCEDURE OPTION. 00564 M01S00564.m86form +++|* = *DEFLT$HDR*, DEFAULT PAGE HEADER USED. 00565 M01S00565.m86form +++|* (VALUE DEFINED IN *COMTOUT*) 00566 M01S00566.m86form +++|* = NAME OF USER-SUPPLIED PROCEDURE TO 00567 M01S00567.m86form +++|* BE EXECUTED AFTER EACH PAGE EJECT. 00568 M01S00568.m86form +++|* 00569 M01S00569.m86form +++|* EXIT REPORT FILE OPENED OR PRINT TABLE FULL. 00570 M01S00570.m86form +++|* 00571 M01S00571.m86form +++|* NOTES *RPOPEN* INITIALIZES A PRINT TABLE ENTRY FOR 00572 M01S00572.m86form +++|* THE REPORT FILE SPECIFIED. UP TO *PRTABENT* REPORT 00573 M01S00573.m86form +++|* FILES MAY BE OPEN SIMULTANEOUSLY. AFTER EACH 00574 M01S00574.m86form +++|* PAGE EJECT, A LINE IS PRINTED CONTAINING THE 00575 M01S00575.m86form +++|* THE CURRENT DATE, TIME, AND PAGE NUMBER. 00576 M01S00576.m86form +++|* FOLLOWING THIS THE USER SUPPLIED HEADER PROCEDURE 00577 M01S00577.m86form +++|* IS EXECUTED. 00578 M01S00578.m86form +++|* TO AVOID RECURSIVE CALLS, THE HEADER PROCEDURE MUST 00579 M01S00579.m86form +++|* NOT CALL *RPLINE* OR *RPSPACE*. INSTEAD *RPLINEX* 00580 M01S00580.m86form +++|* SHOULD BE USED. TO PRINT A BLANK LINE, CALL: 00581 M01S00581.m86form +++|* RPLINEX(FETP,0,0,0,0). 00582 M01S00582.m86form +++|# 00583 M01S00583.m86form +++| 00584 M01S00584.m86form +++| ITEM NAME C(7); # NAME OF THE REPORT FILE # 00585 M01S00585.m86form +++| ITEM FETP U; # ADDRESS OF REPORT FILE *FET* # 00586 M01S00586.m86form +++| FPRC HEADPROC; # USER-SUPPLIED HEADER PROCEDURE # 00587 M01S00587.m86form +++| 00588 M01S00588.m86form +++|# 00589 M01S00589.m86form +++|**** PROC RPOPEN - XREF LIST BEGIN. 00590 M01S00590.m86form +++|# 00591 M01S00591.m86form +++| 00592 M01S00592.m86form +++| XREF 00593 M01S00593.m86form +++| BEGIN 00594 M01S00594.m86form +++| PROC CLOCK; # GETS CURRENT TIME # 00595 M01S00595.m86form +++| PROC DATE; # GETS CURRENT DATE # 00596 M01S00596.m86form +++| PROC RPEJECT; # STARTS NEW REPORT PAGE # 00597 M01S00597.m86form +++| PROC RPLINEX; # PRINTS A LINE # 00598 M01S00598.m86form +++| PROC RPSRCH; # SEARCHES THE PRINT TABLE # 00599 M01S00599.m86form +++| PROC ZSETFET; # INITIALIZES A *FET* # 00600 M01S00600.m86form +++| END 00601 M01S00601.m86form +++| 00602 M01S00602.m86form +++|# 00603 M01S00603.m86form +++|**** PROC RPOPEN - XREF LIST END. 00604 M01S00604.m86form +++|# 00605 M01S00605.m86form +++| 00606 M01S00606.m86form +++| DEF LISTCON #0#; # CONTROLS LISTING OF COMDECKS # 00607 M01S00607.m86form +++|*CALL COMBFAS 00608 M01S00608.m86form +++|*CALL COMTFMT 00609 M01S00609.m86form +++|*CALL COMTOUT 00610 M01S00610.m86form +++| 00611 M01S00611.m86form +++| 00612 M01S00612.m86form +++| 00613 M01S00613.m86form +++| ITEM DTEMP C(10); # TEMPORARY LOCATION FOR DATE # 00614 M01S00614.m86form +++| ITEM TTEMP C(10); # TEMPORARY LOCATION FOR TIME # 00615 M01S00615.m86form +++| ITEM PRBUFP U; # ADDRESS OF *CIO* BUFFER # 00616 M01S00616.m86form +++| 00617 M01S00617.m86form +++| BASED 00618 M01S00618.m86form +++| ARRAY HEADWORD [0:0] S(1); # USED TO TEST *HEADPROC* # 00619 M01S00619.m86form +++| BEGIN 00620 M01S00620.m86form +++| ITEM HEADNAME U(00,00,60); # NAME OF HEADER PROCEDURE # 00621 M01S00621.m86form +++| END 00622 M01S00622.m86form +++| 00623 M01S00623.m86form +++|CONTROL EJECT; 00624 M01S00624.m86form +++| 00625 M01S00625.m86form +++|# 00626 M01S00626.m86form +++|* NO PROCESSING IS DONE IF A NULL REPORT FILE IS INDICATED. 00627 M01S00627.m86form +++|# 00628 M01S00628.m86form +++| 00629 M01S00629.m86form +++| IF FETP EQ NULLFILE 00630 M01S00630.m86form +++| THEN 00631 M01S00631.m86form +++| BEGIN 00632 M01S00632.m86form +++| RETURN; 00633 M01S00633.m86form +++| END 00634 M01S00634.m86form +++| 00635 M01S00635.m86form +++| 00636 M01S00636.m86form +++|# 00637 M01S00637.m86form +++|* SEARCH FOR AN EMPTY ENTRY IN THE PRINT TABLE. 00638 M01S00638.m86form +++|# 00639 M01S00639.m86form +++| 00640 M01S00640.m86form +++| RPSRCH(EMPTY); # SEARCH TABLE FOR EMPTY ENTRY # 00641 M01S00641.m86form +++| 00642 M01S00642.m86form +++| DATE(DTEMP); # GET CURRENT DATE # 00643 M01S00643.m86form +++| CLOCK(TTEMP); # GET CURRENT TIME # 00644 M01S00644.m86form +++| 00645 M01S00645.m86form +++|# 00646 M01S00646.m86form +++|* INITIALIZE PRINT TABLE FIELDS. 00647 M01S00647.m86form +++|# 00648 M01S00648.m86form +++| 00649 M01S00649.m86form +++| PRBUFP = LOC(PRBUF[ORD]); # ADDRESS OF *CIO* BUFFER # 00650 M01S00650.m86form +++| PRTLFN[ORD] = NAME; 00651 M01S00651.m86form +++| PRTLINE[ORD] = MAXLINE; 00652 M01S00652.m86form +++| PRTHEADT[ORD] = " "; 00653 M01S00653.m86form +++| PRTFETP[ORD] = FETP; 00654 M01S00654.m86form +++| PRTPAGE[ORD] = 0; 00655 M01S00655.m86form +++| PRTLINELIM[ORD] = PRDEFLIM; 00656 M01S00656.m86form +++| PRTDATE[ORD] = DTEMP; 00657 M01S00657.m86form +++| PRTTIME[ORD] = TTEMP; 00658 M01S00658.m86form +++| 00659 M01S00659.m86form +++|# 00660 M01S00660.m86form +++|* SAVE ADDRESS OF THE HEADER PROCEDURE. 00661 M01S00661.m86form +++|# 00662 M01S00662.m86form +++| 00663 M01S00663.m86form +++| P<HEADWORD> = LOC(HEADPROC); 00664 M01S00664.m86form +++| IF HEADNAME[0] EQ DEFLT$HDR 00665 M01S00665.m86form +++| THEN # DEFAULT HEADER CHOSEN # 00666 M01S00666.m86form +++| BEGIN 00667 M01S00667.m86form +++| PRTHEADP[ORD] = LOC(RPLINEX); # GET ADDRESS OF *RPLINEX* # 00668 M01S00668.m86form +++| END 00669 M01S00669.m86form +++| 00670 M01S00670.m86form +++| ELSE # HEADER PROVIDED # 00671 M01S00671.m86form +++| BEGIN 00672 M01S00672.m86form +++| PRTHEADP[ORD] = LOC(HEADPROC); # GET HEADER ADDRESS # 00673 M01S00673.m86form +++| END 00674 M01S00674.m86form +++| 00675 M01S00675.m86form +++|# 00676 M01S00676.m86form +++|* INITIALIZE *FET* AND START FIRST PAGE. 00677 M01S00677.m86form +++|# 00678 M01S00678.m86form +++| 00679 M01S00679.m86form +++| ZSETFET(FETP,NAME,PRBUFP,PRBUFL,SFETL); 00680 M01S00680.m86form +++| 00681 M01S00681.m86form +++| LIN$BUF[ORD] = SPACES; # BLANK FILL *LINEBUFF* # 00682 M01S00682.m86form +++| RETURN; 00683 M01S00683.m86form +++| 00684 M01S00684.m86form +++| END # RPOPEN # 00685 M01S00685.m86form +++| 00686 M01S00686.m86form +++| TERM 00687 M01S00687.m86form +++|PROC RPSPACE((FETP),(SPTYP),(NUM)); 00688 M01S00688.m86form +++|# TITLE RPSPACE - DOES REPORT SPACING. # 00689 M01S00689.m86form +++| 00690 M01S00690.m86form +++| BEGIN # RPSPACE # 00691 M01S00691.m86form +++| 00692 M01S00692.m86form +++|# 00693 M01S00693.m86form +++|** RPSPACE - DOES REPORT SPACING. 00694 M01S00694.m86form +++|* 00695 M01S00695.m86form +++|* THIS PROCEDURE DOES VARIOUS TYPES OF REPORT 00696 M01S00696.m86form +++|* PROCESSING, DEPENDING ON THE VALUE OF *SPTYP* 00697 M01S00697.m86form +++|* SPECIFIED. 00698 M01S00698.m86form +++|* 00699 M01S00699.m86form +++|* PROC RPSPACE((FETP),(SPTYP),(NUM)). 00700 M01S00700.m86form +++|* 00701 M01S00701.m86form +++|* ENTRY (FETP) - ADDRESS OF REPORT FILE *FET*. 00702 M01S00702.m86form +++|* (SPTYP) - STATUS ITEM INDICATING PROCESSING. 00703 M01S00703.m86form +++|* (VALUES DEFINED IN *COMTOUT*) 00704 M01S00704.m86form +++|* = *LIMIT*, CHANGE PAGE LINE LIMIT TO *NUM*. 00705 M01S00705.m86form +++|* = *LINE*, ADVANCE TO LINE *NUM*. 00706 M01S00706.m86form +++|* = *SPACE*, PRINT *NUM* BLANK LINES. 00707 M01S00707.m86form +++|* (NUM) - NUMBER USED IN ACCORDANCE WITH THE 00708 M01S00708.m86form +++|* VALUE OF *SPTYP*. 00709 M01S00709.m86form +++|* 00710 M01S00710.m86form +++|* EXIT REPORT SPACING IS COMPLETE. 00711 M01S00711.m86form +++|* 00712 M01S00712.m86form +++|* ERRORS LINE LIMIT EXCEEDS MAXIMUM. 00713 M01S00713.m86form +++|* 00714 M01S00714.m86form +++|* MESSAGES * MAXIMUM LINE COUNT TAKEN AS LIMIT.*. 00715 M01S00715.m86form +++|# 00716 M01S00716.m86form +++| 00717 M01S00717.m86form +++| ITEM FETP U; # ADDRESS OF *FET* # 00718 M01S00718.m86form +++| ITEM NUM I; # NUMBER OF SPACES, LINE NUMBER, 00719 M01S00719.m86form +++| OR NEW LINE LIMIT # 00720 M01S00720.m86form +++| 00721 M01S00721.m86form +++|# 00722 M01S00722.m86form +++|**** PROC RPSPACE - XREF LIST BEGIN. 00723 M01S00723.m86form +++|# 00724 M01S00724.m86form +++| 00725 M01S00725.m86form +++| XREF 00726 M01S00726.m86form +++| BEGIN 00727 M01S00727.m86form +++| PROC MESSAGE; # DISPLAYS DAYFILE MESSAGE # 00728 M01S00728.m86form +++| PROC RPSRCH; # SEARCHES THE PRINT TABLE # 00729 M01S00729.m86form +++| PROC RPLINEX; # PRINTS A LINE ON REPORT FILE # 00730 M01S00730.m86form +++| PROC RPEJECT; # STARTS NEW REPORT PAGE # 00731 M01S00731.m86form +++| END 00732 M01S00732.m86form +++| 00733 M01S00733.m86form +++|# 00734 M01S00734.m86form +++|**** PROC RPSPACE - XREF LIST END. 00735 M01S00735.m86form +++|# 00736 M01S00736.m86form +++| 00737 M01S00737.m86form +++| DEF LISTCON #0#; # CONTROLS LISTING OF COMDECKS # 00738 M01S00738.m86form +++|*CALL COMBFAS 00739 M01S00739.m86form +++|*CALL COMTFMT 00740 M01S00740.m86form +++|*CALL COMTOUT 00741 M01S00741.m86form +++| ITEM I I; # INDUCTION VARIABLE # 00742 M01S00742.m86form +++| ITEM LINESLEFT U; # LINES LEFT ON PAGE # 00743 M01S00743.m86form +++| ITEM SPTYP S:SP; # TYPE OF SPACING SPECIFIED # 00744 M01S00744.m86form +++| 00745 M01S00745.m86form +++| SWITCH LABTYP:SP # SWITCH CONTROLLING PROCESSING # 00746 M01S00746.m86form +++| LIMITYP:LIMIT, # CHANGE PAGE LINE LIMIT # 00747 M01S00747.m86form +++| LINETYP:LINE, # ADVANCE TO ABSOLUTE LINE # 00748 M01S00748.m86form +++| SPACETYP:SPACE; # PRINT BLANK LINES # 00749 M01S00749.m86form +++| 00750 M01S00750.m86form +++|CONTROL EJECT; 00751 M01S00751.m86form +++| 00752 M01S00752.m86form +++| 00753 M01S00753.m86form +++| 00754 M01S00754.m86form +++|# 00755 M01S00755.m86form +++|* NO PROCESSING IS DONE IF A NULL REPORT FILE IS INDICATED. 00756 M01S00756.m86form +++|# 00757 M01S00757.m86form +++| 00758 M01S00758.m86form +++| IF FETP EQ NULLFILE 00759 M01S00759.m86form +++| THEN 00760 M01S00760.m86form +++| BEGIN 00761 M01S00761.m86form +++| RETURN; 00762 M01S00762.m86form +++| END 00763 M01S00763.m86form +++| 00764 M01S00764.m86form +++| 00765 M01S00765.m86form +++|# 00766 M01S00766.m86form +++|* FIND PRINT TABLE ENTRY AND PROCESS REQUEST. 00767 M01S00767.m86form +++|# 00768 M01S00768.m86form +++| 00769 M01S00769.m86form +++| RPSRCH(FETP); 00770 M01S00770.m86form +++| GOTO LABTYP[SPTYP]; # DO APPROPRIATE PROCESSING # 00771 M01S00771.m86form +++| 00772 M01S00772.m86form +++|LIMITYP: # CHANGE LINE LIMIT TO *NUM* # 00773 M01S00773.m86form +++| IF NUM LS MAXLC 00774 M01S00774.m86form +++| THEN # LIMIT REQUESTED IS PERMISSABLE # 00775 M01S00775.m86form +++| BEGIN 00776 M01S00776.m86form +++| PRTLINELIM[ORD] = NUM; 00777 M01S00777.m86form +++| END 00778 M01S00778.m86form +++| 00779 M01S00779.m86form +++| ELSE # EXCESSIVE LIMIT REQUESTED # 00780 M01S00780.m86form +++| BEGIN 00781 M01S00781.m86form +++| PRTLINELIM[ORD] = MAXLC; # MAXIMUM LINE LIMIT USED # 00782 M01S00782.m86form +++| MSGITEM[0] = " MAXIMUM LINE COUNT TAKEN AS LIMIT." ; 00783 M01S00783.m86form +++| MESSAGE(MSGITEM[0],UDFL1); 00784 M01S00784.m86form +++| END 00785 M01S00785.m86form +++| 00786 M01S00786.m86form +++| RETURN; 00787 M01S00787.m86form +++| 00788 M01S00788.m86form +++|LINETYP: # SKIP TO LINE NUMBER # 00789 M01S00789.m86form +++| IF NUM LQ PRTLINE[ORD] 00790 M01S00790.m86form +++| THEN # LINE IS ON NEXT PAGE # 00791 M01S00791.m86form +++| BEGIN 00792 M01S00792.m86form +++| RPEJECT(FETP); # EJECT TO NEW PAGE # 00793 M01S00793.m86form +++| END 00794 M01S00794.m86form +++| 00795 M01S00795.m86form +++| NUM = NUM - PRTLINE[ORD]; 00796 M01S00796.m86form +++| SLOWFOR I = 1 STEP 1 UNTIL NUM 00797 M01S00797.m86form +++| DO 00798 M01S00798.m86form +++| BEGIN 00799 M01S00799.m86form +++| RPLINEX(FETP,BLANK); # PRINT BLANK LINE # 00800 M01S00800.m86form +++| END 00801 M01S00801.m86form +++| 00802 M01S00802.m86form +++| RETURN; 00803 M01S00803.m86form +++| 00804 M01S00804.m86form +++|SPACETYP: # SKIP SPECIFIED NUMBER OF LINES # 00805 M01S00805.m86form +++| IF PRTLINE[ORD] GR PRTLINELIM[ORD] 00806 M01S00806.m86form +++| THEN 00807 M01S00807.m86form +++| BEGIN 00808 M01S00808.m86form +++| RPEJECT(FETP); # EJECT TO NEW PAGE # 00809 M01S00809.m86form +++| END 00810 M01S00810.m86form +++| 00811 M01S00811.m86form +++| LINESLEFT = (PRTLINELIM[ORD] - PRTLINE[ORD]) + 1; 00812 M01S00812.m86form +++| IF NUM GQ LINESLEFT 00813 M01S00813.m86form +++| THEN # PAGE EJECT NECESSARY # 00814 M01S00814.m86form +++| BEGIN 00815 M01S00815.m86form +++| NUM = NUM - LINESLEFT; 00816 M01S00816.m86form +++| RPEJECT(FETP); 00817 M01S00817.m86form +++| END 00818 M01S00818.m86form +++| 00819 M01S00819.m86form +++| SLOWFOR I = 1 STEP 1 UNTIL NUM 00820 M01S00820.m86form +++| DO # PRINT *NUM* BLANK LINES # 00821 M01S00821.m86form +++| BEGIN 00822 M01S00822.m86form +++| RPLINEX(FETP,BLANK); # PRINT *NUM* BLANK LINES # 00823 M01S00823.m86form +++| END 00824 M01S00824.m86form +++| 00825 M01S00825.m86form +++| 00826 M01S00826.m86form +++| RETURN; 00827 M01S00827.m86form +++| END # RPSPACE # 00828 M01S00828.m86form +++| 00829 M01S00829.m86form +++| TERM 00830 M01S00830.m86form +++|PROC RPSRCH((FETP)); 00831 M01S00831.m86form +++| 00832 M01S00832.m86form +++|# TITLE RPSRCH - SEARCHES THE PRINT TABLE. # 00833 M01S00833.m86form +++| 00834 M01S00834.m86form +++| BEGIN # RPSRCH # 00835 M01S00835.m86form +++| 00836 M01S00836.m86form +++|# 00837 M01S00837.m86form +++|** RPSRCH - SEARCHES THE PRINT TABLE FOR AN ENTRY WITH A 00838 M01S00838.m86form +++|* MATCHING *FETP*. 00839 M01S00839.m86form +++|* 00840 M01S00840.m86form +++|* *RPSRCH* SEARCHES THE PRINT TABLE FOR EITHER AN EMPTY 00841 M01S00841.m86form +++|* ENTRY, OR THE ENTRY FOR A FILE ALREADY OPENED BY 00842 M01S00842.m86form +++|* *RPOPEN*. 00843 M01S00843.m86form +++|* 00844 M01S00844.m86form +++|* PROC RPSRCH((FETP)). 00845 M01S00845.m86form +++|* 00846 M01S00846.m86form +++|* ENTRY (FETP) - THE *FET* ADDRESS FOR REPORT FILE. 00847 M01S00847.m86form +++|* = *EMPTY*, SEARCH FOR EMPTY ENTRY. 00848 M01S00848.m86form +++|* (VALUE DEFINED IN *COMTFMT*) 00849 M01S00849.m86form +++|* = OTHER, ADDRESS OF *FET*. 00850 M01S00850.m86form +++|* 00851 M01S00851.m86form +++|* EXIT (ORD) - ITEM IN COMMON CONTAINING THE ORDINAL 00852 M01S00852.m86form +++|* OF THE PRINT TABLE ENTRY FOUND. 00853 M01S00853.m86form +++|* IF THE PRINT TABLE IS FULL, OR A MATCHING 00854 M01S00854.m86form +++|* ENTRY IS NOT FOUND, PROCESSING IS ABORTED. 00855 M01S00855.m86form +++|* 00856 M01S00856.m86form +++|* MESSAGES * PRINT TABLE ENTRY NOT FOUND.* 00857 M01S00857.m86form +++|* * PRINT TABLE FULL.* 00858 M01S00858.m86form +++|# 00859 M01S00859.m86form +++| 00860 M01S00860.m86form +++| 00861 M01S00861.m86form +++| ITEM FETP U; # ADDRESS OF REPORT FILE *FET* # 00862 M01S00862.m86form +++| 00863 M01S00863.m86form +++| 00864 M01S00864.m86form +++|# 00865 M01S00865.m86form +++|**** PROC RPSRCH - XREF LIST BEGIN. 00866 M01S00866.m86form +++|# 00867 M01S00867.m86form +++| 00868 M01S00868.m86form +++| XREF 00869 M01S00869.m86form +++| BEGIN 00870 M01S00870.m86form +++| PROC ABORT; # ABORTS PROCESSING # 00871 M01S00871.m86form +++| PROC MESSAGE; # DISPLAYS DAYFILE MESSAGE # 00872 M01S00872.m86form +++| END 00873 M01S00873.m86form +++| 00874 M01S00874.m86form +++|# 00875 M01S00875.m86form +++|**** PROC RPSRCH - XREF LIST END. 00876 M01S00876.m86form +++|# 00877 M01S00877.m86form +++| 00878 M01S00878.m86form +++| DEF LISTCON #0#; # CONTROLS LISTING OF COMDECKS # 00879 M01S00879.m86form +++| 00880 M01S00880.m86form +++|*CALL COMBFAS 00881 M01S00881.m86form +++|*CALL COMTFMT 00882 M01S00882.m86form +++|*CALL COMTOUT 00883 M01S00883.m86form +++| 00884 M01S00884.m86form +++| 00885 M01S00885.m86form +++|CONTROL EJECT; 00886 M01S00886.m86form +++| 00887 M01S00887.m86form +++|# 00888 M01S00888.m86form +++|* FIND PRINT TABLE ENTRY WITH AN EMPTY OR MATCHING *FETP*. 00889 M01S00889.m86form +++|# 00890 M01S00890.m86form +++| 00891 M01S00891.m86form +++| ORD = 1; 00892 M01S00892.m86form +++| REPEAT WHILE PRTFETP[ORD] NQ FETP AND ORD LQ PRTABENT 00893 M01S00893.m86form +++| DO 00894 M01S00894.m86form +++| BEGIN 00895 M01S00895.m86form +++| ORD = ORD + 1; 00896 M01S00896.m86form +++| END 00897 M01S00897.m86form +++| 00898 M01S00898.m86form +++| IF ORD GR PRTABENT # MATCHING ENTRY NOT FOUND # 00899 M01S00899.m86form +++| THEN 00900 M01S00900.m86form +++| BEGIN 00901 M01S00901.m86form +++| IF FETP EQ EMPTY # CALLED BY *RPOPEN* # 00902 M01S00902.m86form +++| THEN 00903 M01S00903.m86form +++| BEGIN 00904 M01S00904.m86form +++| MSGITEM[0] = " PRINT TABLE FULL." ; 00905 M01S00905.m86form +++| END 00906 M01S00906.m86form +++| 00907 M01S00907.m86form +++| ELSE 00908 M01S00908.m86form +++| BEGIN 00909 M01S00909.m86form +++| MSGITEM[0] = " PRINT TABLE ENTRY NOT FOUND." ; 00910 M01S00910.m86form +++| END 00911 M01S00911.m86form +++| 00912 M01S00912.m86form +++| MESSAGE(MSGITEM[0],UDFL1); 00913 M01S00913.m86form +++| ABORT; # ISSUE MESSAGE AND ABORT # 00914 M01S00914.m86form +++| END 00915 M01S00915.m86form +++| 00916 M01S00916.m86form +++| RETURN; 00917 M01S00917.m86form +++| END # RPSRCH # 00918 M01S00918.m86form +++| 00919 M01S00919.m86form +++| TERM
cdc/nos2.source/opl.opl871/deck/m86form.txt · Last modified: by 127.0.0.1