cdc:nos2.source:opl.opl871:deck:rform
Deck RFORM
Library Member Format: MODIFY
Source
Seq # *Modification Id* Act ----------------------------+ 00001 M00S00001.rform +++|PROC RPCEJCT ((FETP),(LINES)); 00002 M00S00002.rform +++|# TITLE RPCEJCT - CONDITIONALLY ISSUES A PAGE EJECT. # 00003 M00S00003.rform +++| BEGIN # RPCEJCT # 00004 M00S00004.rform +++| 00005 M00S00005.rform +++|# 00006 M00S00006.rform +++|** RPCEJCT - CONDITIONALLY ISSUES A PAGE EJECT.
Line S00001 Modification History | |
---|---|
M01 (Added by) | 281l803 |
Seq # *Modification Id* Act ----------------------------+ 00007 M01S00001.281l803 +++|* 00008 M01S00002.281l803 +++|* COPYRIGHT CONTROL DATA SYSTEMS INC. 1992. 00009 M00S00007.rform +++|* 00010 M00S00008.rform +++|* *RPCEJCT* ISSUES A PAGE EJECT IF THE NUMBER OF 00011 M00S00009.rform +++|* LINES REMAINING ON THE PAGE IS LESS THAN THE NUMBER 00012 M00S00010.rform +++|* OF LINES TO BE CHECKED. 00013 M00S00011.rform +++|* 00014 M00S00012.rform +++|* PROC RPCEJCT((FETP),(LINES)) 00015 M00S00013.rform +++|* 00016 M00S00014.rform +++|* ENTRY (FETP) = FWA OF *FET*. 00017 M00S00015.rform +++|* (LINES) = NUMBER OF LINES TO BE CHECKED. 00018 M00S00016.rform +++|# 00019 M00S00017.rform +++| 00020 M00S00018.rform +++| ITEM FETP I; # *FET* LOCATION # 00021 M00S00019.rform +++| ITEM LINES I; # NUMBER OF LINES TO BE CHECKED # 00022 M00S00020.rform +++| 00023 M00S00021.rform +++|# 00024 M00S00022.rform +++|**** PROC RPCEJCT - XREF LIST BEGIN. 00025 M00S00023.rform +++|# 00026 M00S00024.rform +++| 00027 M00S00025.rform +++| XREF 00028 M00S00026.rform +++| BEGIN 00029 M00S00027.rform +++| PROC RPEJECT; # ISSUES PAGE EJECT # 00030 M00S00028.rform +++| PROC RPSRCH; # SEARCHES PRINT TABLE # 00031 M00S00029.rform +++| END 00032 M00S00030.rform +++| 00033 M00S00031.rform +++|# 00034 M00S00032.rform +++|**** PROC RPCEJCT - XREF LIST END. 00035 M00S00033.rform +++|# 00036 M00S00034.rform +++| 00037 M00S00035.rform +++| DEF LISTCON #0#; # TURN COMDECK LISTING OFF # 00038 M00S00036.rform +++|*CALL COMAMSS 00039 M00S00037.rform +++|*CALL COMUFMT 00040 M00S00038.rform +++|*CALL COMUOUT 00041 M00S00039.rform +++| 00042 M00S00040.rform +++| CONTROL EJECT; 00043 M00S00041.rform +++| 00044 M00S00042.rform +++|# 00045 M00S00043.rform +++|* NO PROCESSING IS DONE IF A NULL REPORT FILE IS INDICATED. 00046 M00S00044.rform +++|# 00047 M00S00045.rform +++| 00048 M00S00046.rform +++| IF FETP EQ NULLFILE 00049 M00S00047.rform +++| THEN 00050 M00S00048.rform +++| BEGIN 00051 M00S00049.rform +++| RETURN; 00052 M00S00050.rform +++| END 00053 M00S00051.rform +++| 00054 M00S00052.rform +++| RPSRCH(FETP); # SEARCH PRINT TABLE # 00055 M00S00053.rform +++| 00056 M00S00054.rform +++|# 00057 M00S00055.rform +++|* IF THE NUMBER OF LINES REMAINING ON THE PAGE IS 00058 M00S00056.rform +++|* LESS THAN THE NUMBER OF LINES TO BE CHECKED, ISSUE 00059 M00S00057.rform +++|* A PAGE EJECT. 00060 M00S00058.rform +++|# 00061 M00S00059.rform +++| 00062 M00S00060.rform +++| IF (PRTLINELIM[ORD] - PRTLINE[ORD] + 1) GQ LINES 00063 M00S00061.rform +++| THEN 00064 M00S00062.rform +++| BEGIN 00065 M00S00063.rform +++| RETURN; 00066 M00S00064.rform +++| END 00067 M00S00065.rform +++| 00068 M00S00066.rform +++| RPEJECT(FETP); 00069 M00S00067.rform +++| RETURN; 00070 M00S00068.rform +++| END # RPCEJCT # 00071 M00S00069.rform +++| 00072 M00S00070.rform +++| TERM 00073 M00S00071.rform +++|PROC RPCLOSE((FETP)); 00074 M00S00072.rform +++|# TITLE RPCLOSE - CLOSES A REPORT FILE. # 00075 M00S00073.rform +++| 00076 M00S00074.rform +++| BEGIN # RPCLOSE # 00077 M00S00075.rform +++| 00078 M00S00076.rform +++|# 00079 M00S00077.rform +++|** RPCLOSE - CLOSES A REPORT FILE. 00080 M00S00078.rform +++|* 00081 M00S00079.rform +++|* THIS PROCEDURE WRITES THE MESSAGE *REPORT 00082 M00S00080.rform +++|* COMPLETE* ON THE REPORT FILE, CLEARS THE 00083 M00S00081.rform +++|* *FET* ADDRESS IN THE PRINT TABLE ENTRY, AND 00084 M00S00082.rform +++|* CALLS *WRITER* TO CLOSE THE REPORT FILE. 00085 M00S00083.rform +++|* 00086 M00S00084.rform +++|* PROC RPCLOSE((FETP)). 00087 M00S00085.rform +++|* 00088 M00S00086.rform +++|* ENTRY (FETP) - ADDRESS OF REPORT FILE *FET*. 00089 M00S00087.rform +++|* = *NULLFILE*, NO REPORT PROCESSING DONE. 00090 M00S00088.rform +++|* (VALUE DEFINED IN *COMUOUT*) 00091 M00S00089.rform +++|* = OTHER, ADDRESS OF *FET*. 00092 M00S00090.rform +++|* 00093 M00S00091.rform +++|* EXIT REPORT FILE IS CLOSED. A PAGE EJECT IS ISSUED AND 00094 M00S00092.rform +++|* *REPORT COMPLETE* IS PRINTED. 00095 M00S00093.rform +++|* 00096 M00S00094.rform +++|* NOTES *RPCLOSE* CALLS *WRITER* TO WRITE AN 00097 M00S00095.rform +++|* END-OF-RECORD ON THE REPORT FILE, AND 00098 M00S00096.rform +++|* CLEARS THE VALUE OF *FETP* FROM THE PRINT 00099 M00S00097.rform +++|* TABLE ENTRY TO INDICATE THAT THE ENTRY 00100 M00S00098.rform +++|* IS NOW EMPTY. 00101 M00S00099.rform +++|# 00102 M00S00100.rform +++| 00103 M00S00101.rform +++| ITEM FETP U; # ADDRESS OF REPORT FILE *FET* # 00104 M00S00102.rform +++| 00105 M00S00103.rform +++|# 00106 M00S00104.rform +++|**** PROC RPCLOSE - XREF LIST BEGIN. 00107 M00S00105.rform +++|# 00108 M00S00106.rform +++| 00109 M00S00107.rform +++| XREF 00110 M00S00108.rform +++| BEGIN 00111 M00S00109.rform +++| PROC RPLINEX; # PRINTS A REPORT LINE # 00112 M00S00110.rform +++| PROC RPSRCH; # SEARCHES THE PRINT TABLE # 00113 M00S00111.rform +++| PROC WRITER; # WRITES *EOR* ON REPORT FILE # 00114 M00S00112.rform +++| END 00115 M00S00113.rform +++| 00116 M00S00114.rform +++|# 00117 M00S00115.rform +++|**** PROC RPCLOSE - XREF LIST END. 00118 M00S00116.rform +++|# 00119 M00S00117.rform +++| 00120 M00S00118.rform +++| DEF LISTCON #0#; # CONTROLS LISTING OF COMDECKS # 00121 M00S00119.rform +++|*CALL COMAMSS 00122 M00S00120.rform +++|*CALL COMUFMT 00123 M00S00121.rform +++|*CALL COMUOUT 00124 M00S00122.rform +++|CONTROL EJECT; 00125 M00S00123.rform +++| 00126 M00S00124.rform +++|# 00127 M00S00125.rform +++|* NO PROCESSING IS DONE IF NO REPORT FILE IS INDICATED. 00128 M00S00126.rform +++|# 00129 M00S00127.rform +++| 00130 M00S00128.rform +++| IF FETP EQ NULLFILE 00131 M00S00129.rform +++| THEN 00132 M00S00130.rform +++| BEGIN 00133 M00S00131.rform +++| RETURN; 00134 M00S00132.rform +++| END 00135 M00S00133.rform +++| 00136 M00S00134.rform +++|# 00137 M00S00135.rform +++|* PRINT COMPLETION MESSAGE AND CLEAR THE PRINT TABLE. 00138 M00S00136.rform +++|# 00139 M00S00137.rform +++| 00140 M00S00138.rform +++| RPSRCH(FETP); # SEARCH PRINT TABLE # 00141 M00S00139.rform +++| RPLINEX(FETP,"1**REPORT COMPLETE**",0,20,0); 00142 M00S00140.rform +++| P<RPFET> = FETP; 00143 M00S00141.rform +++| WRITER(RPFET[0],RCL); # WRITE END-OF-RECORD # 00144 M00S00142.rform +++| 00145 M00S00143.rform +++| PRTFETP[ORD] = EMPTY; # CLEAR *FET* ADDRESS FROM TABLE # 00146 M00S00144.rform +++| RETURN; 00147 M00S00145.rform +++| END # RPCLOSE # 00148 M00S00146.rform +++| 00149 M00S00147.rform +++| TERM 00150 M00S00148.rform +++|PROC RPEJECT((FETP)); 00151 M00S00149.rform +++|# TITLE RPEJECT - STARTS A NEW REPORT PAGE. # 00152 M00S00150.rform +++| 00153 M00S00151.rform +++| BEGIN # RPEJECT # 00154 M00S00152.rform +++| 00155 M00S00153.rform +++|# 00156 M00S00154.rform +++|** RPEJECT - STARTS NEW REPORT PAGE. 00157 M00S00155.rform +++|* 00158 M00S00156.rform +++|* THIS PROCEDURE ADVANCES THE REPORT FILE 00159 M00S00157.rform +++|* TO A NEW PAGE, SETS THE CURRENT LINE NUMBER 00160 M00S00158.rform +++|* EQUAL TO ONE, AND PRINTS THE PAGE HEADING. 00161 M00S00159.rform +++|* 00162 M00S00160.rform +++|* PROC RPEJECT((FETP)). 00163 M00S00161.rform +++|* 00164 M00S00162.rform +++|* ENTRY (FETP) - ADDRESS OF THE REPORT FILE *FET*. 00165 M00S00163.rform +++|* = *NULLFILE*, NO REPORT PROCESSING DONE. 00166 M00S00164.rform +++|* (VALUE DEFINED IN *COMUOUT*) 00167 M00S00165.rform +++|* = OTHER, ADDRESS OF *FET*. 00168 M00S00166.rform +++|* 00169 M00S00167.rform +++|* EXIT NEW PAGE HEADING IS COMPLETED. 00170 M00S00168.rform +++|* 00171 M00S00169.rform +++|* NOTES *RPEJECT* SETS UP THE PAGE HEADER LINE 00172 M00S00170.rform +++|* WITH DATE, TIME, PAGE NUMBER, AND 00173 M00S00171.rform +++|* CARRIAGE CONTROL CHARACTER. AFTER 00174 M00S00172.rform +++|* PRINTING THIS LINE, THE LINE BUFFER 00175 M00S00173.rform +++|* IS BLANK-FILLED AND *XPRC* IS CALLED 00176 M00S00174.rform +++|* TO EXECUTE THE HEADER PROCEDURE. THE 00177 M00S00175.rform +++|* REPORT FILE MUST HAVE ALREADY BEEN OPENED 00178 M00S00176.rform +++|* BY CALLING *RPOPEN*. 00179 M00S00177.rform +++|# 00180 M00S00178.rform +++| 00181 M00S00179.rform +++| ITEM FETP U; # ADDRESS OF REPORT FILE *FET* # 00182 M00S00180.rform +++| 00183 M00S00181.rform +++|# 00184 M00S00182.rform +++|**** PROC RPEJECT - XREF LIST BEGIN. 00185 M00S00183.rform +++|# 00186 M00S00184.rform +++| 00187 M00S00185.rform +++| XREF 00188 M00S00186.rform +++| BEGIN 00189 M00S00187.rform +++| PROC RPSRCH; # SEARCHES THE PRINT TABLE # 00190 M00S00188.rform +++| PROC WRITEH; # WRITES LINE ON REPORT FILE # 00191 M00S00189.rform +++| FUNC XCDD C(10); # CONVERTS INTEGER TO DISPLAY # 00192 M00S00190.rform +++| PROC XPRC; # EXECUTES A PROCEDURE # 00193 M00S00191.rform +++| END 00194 M00S00192.rform +++| 00195 M00S00193.rform +++|# 00196 M00S00194.rform +++|**** PROC RPEJECT - XREF LIST END. 00197 M00S00195.rform +++|# 00198 M00S00196.rform +++| 00199 M00S00197.rform +++| DEF LISTCON #0#; # CONTROLS LISTING OF COMDECKS # 00200 M00S00198.rform +++|*CALL COMAMSS 00201 M00S00199.rform +++|*CALL COMUFMT 00202 M00S00200.rform +++|*CALL COMUOUT 00203 M00S00201.rform +++| ITEM PAGENUM C(10); # PAGE NUMBER IN DISPLAY CODE # 00204 M00S00202.rform +++|CONTROL EJECT; 00205 M00S00203.rform +++| 00206 M00S00204.rform +++|# 00207 M00S00205.rform +++|* NO PROCESSING IS DONE IF A NULL REPORT FILE IS INDICATED. 00208 M00S00206.rform +++|# 00209 M00S00207.rform +++| 00210 M00S00208.rform +++| IF FETP EQ NULLFILE 00211 M00S00209.rform +++| THEN 00212 M00S00210.rform +++| BEGIN 00213 M00S00211.rform +++| RETURN; 00214 M00S00212.rform +++| END 00215 M00S00213.rform +++| 00216 M00S00214.rform +++| 00217 M00S00215.rform +++|# 00218 M00S00216.rform +++|* UPDATE PAGE AND LINE COUNTS. 00219 M00S00217.rform +++|# 00220 M00S00218.rform +++| 00221 M00S00219.rform +++| RPSRCH(FETP); # SEARCH PRINT TABLE FOR *FETP* # 00222 M00S00220.rform +++| 00223 M00S00221.rform +++| PRTPAGE[ORD] = PRTPAGE[ORD] + 1; 00224 M00S00222.rform +++| PRTLINE[ORD] = 1; 00225 M00S00223.rform +++| PAGENUM = XCDD(PRTPAGE[ORD]); # PAGE NUMBER IN DISPLAY CODE # 00226 M00S00224.rform +++| 00227 M00S00225.rform +++|# 00228 M00S00226.rform +++|* SET UP AND PRINT THE PAGE HEADER LINE. 00229 M00S00227.rform +++|# 00230 M00S00228.rform +++| 00231 M00S00229.rform +++| LIN$CNTRL[ORD] = PRCEJ; # CAUSE PAGE EJECT # 00232 M00S00230.rform +++| LIN$HEAD[ORD] = PRTHEADT[ORD]; # CURRENT MESSAGE # 00233 M00S00231.rform +++| LIN$DATE[ORD] = PRTDATE[ORD]; # CURRENT DATE # 00234 M00S00232.rform +++| LIN$TIME[ORD] = PRTTIME[ORD]; # CURRENT TIME # 00235 M00S00233.rform +++| LIN$PAGE[ORD] = "PAGE"; 00236 M00S00234.rform +++| LIN$PAGENM[ORD] = C<4,6>PAGENUM; # PAGE NUMBER # 00237 M00S00235.rform +++| P<RPFET> = FETP; 00238 M00S00236.rform +++| WRITEH(RPFET[0],LINEBUFF[ORD],LINELEN); # PRINT LINE # 00239 M00S00237.rform +++| PRTLINE[ORD] = PRTLINE[ORD] + 1; # INCREMENT LINE COUNTER # 00240 M00S00238.rform +++| 00241 M00S00239.rform +++| LIN$BUF[ORD] = SPACES; # BLANK FILL *LINEBUFF* # 00242 M00S00240.rform +++| 00243 M00S00241.rform +++|# 00244 M00S00242.rform +++|* EXECUTE SPECIFIED HEADER PROCEDURE. 00245 M00S00243.rform +++|# 00246 M00S00244.rform +++| 00247 M00S00245.rform +++| XPRC(PRTHEADP[ORD],FETP,BLANK); 00248 M00S00246.rform +++| RETURN; 00249 M00S00247.rform +++| END # RPEJECT # 00250 M00S00248.rform +++| 00251 M00S00249.rform +++| TERM 00252 M00S00250.rform +++|PROC RPHEAD((FETP),(MESG),(COL),(LEN)); 00253 M00S00251.rform +++|# TITLE RPHEAD - SETS UP HEADER PRINT FIELD. # 00254 M00S00252.rform +++| 00255 M00S00253.rform +++| BEGIN # RPHEAD # 00256 M00S00254.rform +++| 00257 M00S00255.rform +++|# 00258 M00S00256.rform +++|** RPHEAD - SETS UP HEADER PRINT FIELD. 00259 M00S00257.rform +++|* 00260 M00S00258.rform +++|* *RPHEAD* SETS UP AN OPTIONAL HEADER PRINT FIELD IN THE
Line S00259 Modification History | |
---|---|
M01 (Removed by) | ns22000 |
Seq # *Modification Id* Act ----------------------------+ 00261 M01S00259.ns22000 ---|* FIRST THIRTY-SEVEN CHARACTERS OF THE HEADER PAGE LINE.
Line S00001 Modification History | |
---|---|
M01 (Added by) | ns22000 |
Seq # *Modification Id* Act ----------------------------+ 00262 M01S00001.ns22000 +++|* FIRST ONE HUNDRED CHARACTERS OF THE HEADER PAGE LINE. 00263 M00S00260.rform +++|* 00264 M00S00261.rform +++|* PROC RPHEAD((FETP),(MESG),(COL),(LEN)) 00265 M00S00262.rform +++|* 00266 M00S00263.rform +++|* ENTRY (FETP) - ADDRESS OF *FET* FOR REPORT FILE. 00267 M00S00264.rform +++|* (MESG) - HEADER MESSAGE. 00268 M00S00265.rform +++|* (COL) - STARTING COLUMN. 00269 M00S00266.rform +++|* (LEN) - CHARACTER LENGTH OF FIELD. 00270 M00S00267.rform +++|* 00271 M00S00268.rform +++|* EXIT HEADER PRINT FIELD IS SET UP. 00272 M00S00269.rform +++|* 00273 M00S00270.rform +++|* NOTES THE SPECIFIED MESSAGE WILL BE PRINTED ON EVERY 00274 M00S00271.rform +++|* SUBSEQUENT PAGE HEADING UNTIL CHANGED OR CLEARED 00275 M00S00272.rform +++|* BY ANOTHER CALL TO *RPHEAD*. THE MAXIMUM NUMBER 00276 M00S00273.rform +++|* OF CHARACTERS ALLOWED FOR THE HEADER FIELD IS
Line S00274 Modification History | |
---|---|
M01 (Removed by) | ns22000 |
Seq # *Modification Id* Act ----------------------------+ 00277 M01S00274.ns22000 ---|* THIRTY-SEVEN.
Line S00002 Modification History | |
---|---|
M01 (Added by) | ns22000 |
Seq # *Modification Id* Act ----------------------------+ 00278 M01S00002.ns22000 +++|* ONE HUNDRED. 00279 M01S00003.ns22000 +++|* (*COL* + *LEN* -1) MUST BE LESS THAN OR EQUAL 00280 M01S00004.ns22000 +++|* TO ONE HUNDRED. 00281 M00S00275.rform +++|# 00282 M00S00276.rform +++| 00283 M00S00277.rform +++| ITEM FETP U; # ADDRESS OF REPORT FILE FET #
Line S00278 Modification History | |
---|---|
M01 (Removed by) | ns22000 |
Seq # *Modification Id* Act ----------------------------+ 00284 M01S00278.ns22000 ---| ITEM MESG C(37); # HEADER MESSAGE #
Line S00005 Modification History | |
---|---|
M01 (Added by) | ns22000 |
Seq # *Modification Id* Act ----------------------------+ 00285 M01S00005.ns22000 +++| ITEM MESG C(100); # HEADER MESSAGE # 00286 M00S00279.rform +++| ITEM COL U; # STARTING COLUMN FOR FIELD # 00287 M00S00280.rform +++| ITEM LEN U; # LENGTH OF PRINT FIELD # 00288 M00S00281.rform +++| 00289 M00S00282.rform +++|# 00290 M00S00283.rform +++|**** PROC RPHEAD - XREF LIST BEGIN. 00291 M00S00284.rform +++|# 00292 M00S00285.rform +++| 00293 M00S00286.rform +++| XREF 00294 M00S00287.rform +++| BEGIN 00295 M00S00288.rform +++| PROC RPSRCH; # SEARCHES PRINT TABLE # 00296 M00S00289.rform +++| END 00297 M00S00290.rform +++| 00298 M00S00291.rform +++|# 00299 M00S00292.rform +++|**** PROC RPHEAD - XREF LIST END. 00300 M00S00293.rform +++|# 00301 M00S00294.rform +++| 00302 M00S00295.rform +++| DEF LISTCON #0#; # TURN LISTING OFF # 00303 M00S00296.rform +++|*CALL COMAMSS 00304 M00S00297.rform +++|*CALL COMUFMT 00305 M00S00298.rform +++|*CALL COMUOUT 00306 M00S00299.rform +++| 00307 M00S00300.rform +++| CONTROL EJECT; 00308 M00S00301.rform +++| 00309 M00S00302.rform +++|# 00310 M00S00303.rform +++|* NO PROCESSING IS DONE IF A NULL REPORT FILE IS INDICATED. 00311 M00S00304.rform +++|# 00312 M00S00305.rform +++| 00313 M00S00306.rform +++| IF FETP EQ NULLFILE 00314 M00S00307.rform +++| THEN 00315 M00S00308.rform +++| BEGIN 00316 M00S00309.rform +++| RETURN; 00317 M00S00310.rform +++| END 00318 M00S00311.rform +++| 00319 M00S00312.rform +++|# 00320 M00S00313.rform +++|* SET UP PRINT FIELD. 00321 M00S00314.rform +++|# 00322 M00S00315.rform +++| 00323 M00S00316.rform +++| RPSRCH(FETP); # FIND PRINT TABLE ENTRY # 00324 M00S00317.rform +++| C<COL-1,LEN>PRTHEADT[ORD] = C<0,LEN>MESG; 00325 M00S00318.rform +++| END # RPHEAD # 00326 M00S00319.rform +++| 00327 M00S00320.rform +++| TERM 00328 M00S00321.rform +++|PROC RPLINE((FETP),FIELD,(COL),(LEN),(FLAG)); 00329 M00S00322.rform +++| 00330 M00S00323.rform +++|# TITLE RPLINE - CALLS *RPLINEX* TO PRINT A LINE. # 00331 M00S00324.rform +++| 00332 M00S00325.rform +++| BEGIN # RPLINE # 00333 M00S00326.rform +++| 00334 M00S00327.rform +++|# 00335 M00S00328.rform +++|** RPLINE - CALLS *RPLINEX* TO PRINT A LINE. 00336 M00S00329.rform +++|* 00337 M00S00330.rform +++|* THIS PROCEDURE CHECKS THE CURRENT LINE NUMBER AND CALLS 00338 M00S00331.rform +++|* *RPEJECT* IF THE LINE LIMIT IS EXCEEDED. IT THEN CALLS 00339 M00S00332.rform +++|* *RPLINEX* TO SET UP PRINT FIELD *FIELD* IN THE LINE BUFFER. 00340 M00S00333.rform +++|* THE LINE IS EITHER PRINTED OR SAVED, DEPENDING ON THE VALUE 00341 M00S00334.rform +++|* OF *FLAG* SPECIFIED. 00342 M00S00335.rform +++|* 00343 M00S00336.rform +++|* PROC RPLINE((FETP),FIELD,(COL),(LEN),(FLAG)). 00344 M00S00337.rform +++|* 00345 M00S00338.rform +++|* ENTRY (FETP) - ADDRESS OF *FET* FOR REPORT FILE. 00346 M00S00339.rform +++|* = *NULLFILE*, NO REPORT PROCESSING IS DONE. 00347 M00S00340.rform +++|* (VALUE DEFINED IN *COMUOUT*) 00348 M00S00341.rform +++|* = OTHER, ADDRESS OF *FET*. 00349 M00S00342.rform +++|* (FIELD) - STRING TO BE PRINTED. 00350 M00S00343.rform +++|* (COL) - STARTING COLUMN FOR *FIELD*. 00351 M00S00344.rform +++|* (LEN) - CHARACTER LENGTH OF *FIELD*. 00352 M00S00345.rform +++|* (FLAG) - INDICATES CONTINUATION OF LINE. 00353 M00S00346.rform +++|* (VALUES DEFINED IN *COMUOUT*) 00354 M00S00347.rform +++|* = *END$LN*, CONTENTS OF BUFFER ARE PRINTED. 00355 M00S00348.rform +++|* = *CONT$LN*, CONTENTS OF BUFFER ARE SAVED. 00356 M00S00349.rform +++|* 00357 M00S00350.rform +++|* EXIT LINE IS PRINTED OR CONTENTS OF BUFFER ARE SAVED 00358 M00S00351.rform +++|* UNTIL NEXT CALL TO *RPLINE*. THE MAXIMUM FIELD 00359 M00S00352.rform +++|* SIZE IS 138 CHARACTERS. 00360 M00S00353.rform +++|# 00361 M00S00354.rform +++| 00362 M00S00355.rform +++| ITEM FETP U; # ADDRESS OF REPORT FILE *FET* # 00363 M00S00356.rform +++| 00364 M00S00357.rform +++| ARRAY FIELD [0:0] S(14); # ARRAY CONTAINING PRINT FIELD # 00365 M00S00358.rform +++| BEGIN 00366 M00S00359.rform +++| ITEM FIELDPR C(00,00,138); # PRINT STRING # 00367 M00S00360.rform +++| END 00368 M00S00361.rform +++| 00369 M00S00362.rform +++| ITEM COL U; # STARTING COLUMN OF FIELD # 00370 M00S00363.rform +++| ITEM LEN U; # LENGTH OF PRINT FIELD # 00371 M00S00364.rform +++| ITEM FLAG U; # INDICATES LINE CONTINUATION # 00372 M00S00365.rform +++| 00373 M00S00366.rform +++| 00374 M00S00367.rform +++| 00375 M00S00368.rform +++|# 00376 M00S00369.rform +++|**** PROC RPLINE - XREF LIST BEGIN. 00377 M00S00370.rform +++|# 00378 M00S00371.rform +++| 00379 M00S00372.rform +++| XREF 00380 M00S00373.rform +++| BEGIN 00381 M00S00374.rform +++| PROC RPEJECT; # STARTS NEW REPORT PAGE # 00382 M00S00375.rform +++| PROC RPLINEX; # PRINTS LINE ON REPORT FILE # 00383 M00S00376.rform +++| PROC RPSRCH; # SEARCHES PRINT TABLE # 00384 M00S00377.rform +++| END 00385 M00S00378.rform +++| 00386 M00S00379.rform +++|# 00387 M00S00380.rform +++|**** PROC RPLINE - XREF LIST END. 00388 M00S00381.rform +++|# 00389 M00S00382.rform +++| 00390 M00S00383.rform +++| DEF LISTCON #0#; # CONTROLS LISTING OF COMDECKS # 00391 M00S00384.rform +++| 00392 M00S00385.rform +++|*CALL COMAMSS 00393 M00S00386.rform +++|*CALL COMUFMT 00394 M00S00387.rform +++|*CALL COMUOUT 00395 M00S00388.rform +++|CONTROL EJECT; 00396 M00S00389.rform +++| 00397 M00S00390.rform +++| 00398 M00S00391.rform +++|# 00399 M00S00392.rform +++|* NO PROCESSING IS DONE IF A NULL REPORT FILE IS INDICATED. 00400 M00S00393.rform +++|# 00401 M00S00394.rform +++| 00402 M00S00395.rform +++| IF FETP EQ NULLFILE 00403 M00S00396.rform +++| THEN 00404 M00S00397.rform +++| BEGIN 00405 M00S00398.rform +++| RETURN; 00406 M00S00399.rform +++| END 00407 M00S00400.rform +++| 00408 M00S00401.rform +++|# 00409 M00S00402.rform +++|* CHECK LINE COUNT AND PRINT REPORT LINE. 00410 M00S00403.rform +++|# 00411 M00S00404.rform +++| 00412 M00S00405.rform +++| RPSRCH(FETP); # SEARCH FOR MATCHING *FETP* # 00413 M00S00406.rform +++| 00414 M00S00407.rform +++| IF PRTLINE[ORD] GR PRTLINELIM[ORD] 00415 M00S00408.rform +++| THEN # NEW PAGE NEEDED # 00416 M00S00409.rform +++| BEGIN 00417 M00S00410.rform +++| RPEJECT(FETP); 00418 M00S00411.rform +++| END 00419 M00S00412.rform +++| 00420 M00S00413.rform +++| RPLINEX(FETP,FIELD,COL,LEN,FLAG); 00421 M00S00414.rform +++| 00422 M00S00415.rform +++| 00423 M00S00416.rform +++| 00424 M00S00417.rform +++| RETURN; 00425 M00S00418.rform +++| END # RPLINE # 00426 M00S00419.rform +++| 00427 M00S00420.rform +++| TERM 00428 M00S00421.rform +++|PROC RPLINEX((FETP),FIELD,(COL),(LEN),(FLAG)); 00429 M00S00422.rform +++|# TITLE RPLINEX - PRINTS A REPORT LINE. # 00430 M00S00423.rform +++| 00431 M00S00424.rform +++| BEGIN # RPLINEX # 00432 M00S00425.rform +++| 00433 M00S00426.rform +++|# 00434 M00S00427.rform +++|** RPLINEX - PRINTS A LINE ON THE REPORT FILE. 00435 M00S00428.rform +++|* 00436 M00S00429.rform +++|* *RPLINEX* SETS UP PRINT FIELD *FIELD* IN A LINE BUFFER. 00437 M00S00430.rform +++|* THE CONTENTS OF THE BUFFER ARE EITHER PRINTED OR SAVED, DEPENDING 00438 M00S00431.rform +++|* ON THE VALUE OF *FLAG*. MORE THAN ONE FIELD PER PRINT 00439 M00S00432.rform +++|* LINE CAN BE SPECIFIED BY MAKING MORE THAN ONE CALL TO 00440 M00S00433.rform +++|* *RPLINEX*. 00441 M00S00434.rform +++|* 00442 M00S00435.rform +++|* PROC RPLINEX((FETP),FIELD,(COL),(LEN),(FLAG)). 00443 M00S00436.rform +++|* 00444 M00S00437.rform +++|* ENTRY (FETP) - ADDRESS OF *FET* FOR REPORT FILE. 00445 M00S00438.rform +++|* = *NULLFILE*, NO REPORT PROCESSING IS DONE. 00446 M00S00439.rform +++|* (VALUE DEFINED IN *COMUOUT*) 00447 M00S00440.rform +++|* = OTHER, ADDRESS OF *FET*. 00448 M00S00441.rform +++|* (FIELD) - STRING TO BE PRINTED. 00449 M00S00442.rform +++|* (COL) - STARTING COLUMN FOR *FIELD*. 00450 M00S00443.rform +++|* (LEN) - CHARACTER LENGTH OF *FIELD*. 00451 M00S00444.rform +++|* (FLAG) - INDICATES CONTINUATION OF LINE. 00452 M00S00445.rform +++|* (VALUES DEFINED IN *COMUOUT*) 00453 M00S00446.rform +++|* = *END$LN*, CONTENTS OF BUFFER ARE PRINTED. 00454 M00S00447.rform +++|* = *CONT$LN*, CONTENTS OF BUFFER ARE SAVED. 00455 M00S00448.rform +++|* 00456 M00S00449.rform +++|* EXIT LINE IS PRINTED OR CONTENTS OF BUFFER ARE SAVED 00457 M00S00450.rform +++|* UNTIL NEXT CALL TO *RPLINEX*. THE LINE COUNTER IS 00458 M00S00451.rform +++|* INCREMENTED AS NEEDED. 00459 M00S00452.rform +++|# 00460 M00S00453.rform +++| 00461 M00S00454.rform +++| ITEM FETP U; # ADDRESS OF REPORT FILE *FET* # 00462 M00S00455.rform +++| 00463 M00S00456.rform +++| 00464 M00S00457.rform +++| ARRAY FIELD [0:0] S(14); # ARRAY CONTAINING PRINT FIELD # 00465 M00S00458.rform +++| BEGIN 00466 M00S00459.rform +++| ITEM FIELDPR C(00,00,138); # PRINT STRING # 00467 M00S00460.rform +++| END 00468 M00S00461.rform +++| 00469 M00S00462.rform +++| ITEM COL U; # STARTING COLUMN OF FIELD # 00470 M00S00463.rform +++| ITEM LEN U; # LENGTH OF PRINT FIELD # 00471 M00S00464.rform +++| ITEM FLAG U; # INDICATES LINE CONTINUATION # 00472 M00S00465.rform +++| 00473 M00S00466.rform +++|# 00474 M00S00467.rform +++|**** PROC RPLINEX - XREF LIST BEGIN. 00475 M00S00468.rform +++|# 00476 M00S00469.rform +++| 00477 M00S00470.rform +++| XREF 00478 M00S00471.rform +++| BEGIN 00479 M00S00472.rform +++| PROC RPSRCH; # SEARCHES PRINT TABLE # 00480 M00S00473.rform +++| PROC WRITEH; # WRITES LINE ON REPORT FILE # 00481 M00S00474.rform +++| END 00482 M00S00475.rform +++| 00483 M00S00476.rform +++|# 00484 M00S00477.rform +++|**** PROC RPLINEX - XREF LIST END. 00485 M00S00478.rform +++|# 00486 M00S00479.rform +++| 00487 M00S00480.rform +++| DEF LISTCON #0#; # CONTROLS LISTING OF COMDECKS # 00488 M00S00481.rform +++| 00489 M00S00482.rform +++|*CALL COMAMSS 00490 M00S00483.rform +++|*CALL COMUFMT 00491 M00S00484.rform +++|*CALL COMUOUT 00492 M00S00485.rform +++| 00493 M00S00486.rform +++|CONTROL EJECT; 00494 M00S00487.rform +++| 00495 M00S00488.rform +++| 00496 M00S00489.rform +++|# 00497 M00S00490.rform +++|* NO PROCESSING IS DONE IF A NULL REPORT FILE IS INDICATED. 00498 M00S00491.rform +++|# 00499 M00S00492.rform +++| 00500 M00S00493.rform +++| IF FETP EQ NULLFILE 00501 M00S00494.rform +++| THEN 00502 M00S00495.rform +++| BEGIN 00503 M00S00496.rform +++| RETURN; 00504 M00S00497.rform +++| END 00505 M00S00498.rform +++| 00506 M00S00499.rform +++| 00507 M00S00500.rform +++|# 00508 M00S00501.rform +++|* THE CHARACTER STRING *FIELD* IS PLACED IN THE 00509 M00S00502.rform +++|* APPROPRIATE LOCATION IN *LINEBUFF*. IF THE VALUE 00510 M00S00503.rform +++|* OF *FLAG* IS *CONT$LN*, THE CONTENTS OF *LINEBUFF* 00511 M00S00504.rform +++|* ARE SAVED. OTHERWISE A LINE IS PRINTED. 00512 M00S00505.rform +++|# 00513 M00S00506.rform +++| 00514 M00S00507.rform +++| RPSRCH(FETP); # FIND PRINT TABLE ENTRY # 00515 M00S00508.rform +++| P<RPFET> = FETP; 00516 M00S00509.rform +++| 00517 M00S00510.rform +++| IF FIELDPR[0] NQ EMPTY # IF *FIELD* CONTAINS STRING # 00518 M00S00511.rform +++| THEN 00519 M00S00512.rform +++| BEGIN 00520 M00S00513.rform +++| C<COL,LEN>LIN$BUF[ORD] = FIELDPR[0]; # SET UP PRINT FIELD # 00521 M00S00514.rform +++| END 00522 M00S00515.rform +++| 00523 M00S00516.rform +++| IF FLAG EQ CONT$LN # IF LINE CONTINUED # 00524 M00S00517.rform +++| THEN 00525 M00S00518.rform +++| BEGIN 00526 M00S00519.rform +++| RETURN; # SAVE CONTENTS OF *LINEBUFF* # 00527 M00S00520.rform +++| END 00528 M00S00521.rform +++| 00529 M00S00522.rform +++|# 00530 M00S00523.rform +++|* WRITE PRINT LINE. 00531 M00S00524.rform +++|# 00532 M00S00525.rform +++| 00533 M00S00526.rform +++| WRITEH(RPFET[0],LINEBUFF[ORD],LINELEN); 00534 M00S00527.rform +++| IF LIN$CNTRL[ORD] EQ PRDBL 00535 M00S00528.rform +++| THEN # DOUBLE SPACE DONE # 00536 M00S00529.rform +++| BEGIN 00537 M00S00530.rform +++| PRTLINE[ORD] = PRTLINE[ORD] + 2; # INCREMENT LINE COUNT # 00538 M00S00531.rform +++| END 00539 M00S00532.rform +++| 00540 M00S00533.rform +++| ELSE # SINGLE SPACE ASSUMED # 00541 M00S00534.rform +++| BEGIN 00542 M00S00535.rform +++| PRTLINE[ORD] = PRTLINE[ORD] + 1; # INCREMENT BY ONE # 00543 M00S00536.rform +++| END 00544 M00S00537.rform +++| 00545 M00S00538.rform +++| LIN$BUF[ORD] = SPACES; # BLANK FILL *LINEBUFF* # 00546 M00S00539.rform +++| RETURN; 00547 M00S00540.rform +++| 00548 M00S00541.rform +++| END # RPLINEX # 00549 M00S00542.rform +++| 00550 M00S00543.rform +++| TERM 00551 M00S00544.rform +++|PROC RPOPEN((NAME),(FETP),HEADPROC); 00552 M00S00545.rform +++|# TITLE RPOPEN - OPENS A REPORT FILE. # 00553 M00S00546.rform +++| 00554 M00S00547.rform +++| BEGIN # RPOPEN # 00555 M00S00548.rform +++| 00556 M00S00549.rform +++|# 00557 M00S00550.rform +++|** RPOPEN - OPENS A REPORT FILE. 00558 M00S00551.rform +++|* 00559 M00S00552.rform +++|* THIS PROCEDURE SETS UP THE PRINT TABLE 00560 M00S00553.rform +++|* FOR A REPORT FILE AND CALLS *RPEJECT* 00561 M00S00554.rform +++|* TO START THE FIRST PAGE. 00562 M00S00555.rform +++|* 00563 M00S00556.rform +++|* PROC RPOPEN((NAME),(FETP),HEADPROC). 00564 M00S00557.rform +++|* 00565 M00S00558.rform +++|* ENTRY (NAME) - NAME OF REPORT FILE. 00566 M00S00559.rform +++|* (FETP) - REPORT FILE *FET* OPTION. 00567 M00S00560.rform +++|* = *NULLFILE*, NO REPORT PROCESSING IS DONE. 00568 M00S00561.rform +++|* (VALUE DEFINED IN *COMUOUT*) 00569 M00S00562.rform +++|* = OTHER, ADDRESS OF REPORT FILE *FET*. 00570 M00S00563.rform +++|* (HEADPROC) - HEADER PROCEDURE OPTION. 00571 M00S00564.rform +++|* = *DEFLT$HDR*, DEFAULT PAGE HEADER USED. 00572 M00S00565.rform +++|* (VALUE DEFINED IN *COMUOUT*) 00573 M00S00566.rform +++|* = NAME OF USER-SUPPLIED PROCEDURE TO 00574 M00S00567.rform +++|* BE EXECUTED AFTER EACH PAGE EJECT. 00575 M00S00568.rform +++|* 00576 M00S00569.rform +++|* EXIT REPORT FILE OPENED OR PRINT TABLE FULL. 00577 M00S00570.rform +++|* 00578 M00S00571.rform +++|* NOTES *RPOPEN* INITIALIZES A PRINT TABLE ENTRY FOR 00579 M00S00572.rform +++|* THE REPORT FILE SPECIFIED. UP TO *PRTABENT* REPORT 00580 M00S00573.rform +++|* FILES MAY BE OPEN SIMULTANEOUSLY. AFTER EACH 00581 M00S00574.rform +++|* PAGE EJECT, A LINE IS PRINTED CONTAINING THE 00582 M00S00575.rform +++|* THE CURRENT DATE, TIME, AND PAGE NUMBER. 00583 M00S00576.rform +++|* FOLLOWING THIS THE USER SUPPLIED HEADER PROCEDURE 00584 M00S00577.rform +++|* IS EXECUTED. 00585 M00S00578.rform +++|* TO AVOID RECURSIVE CALLS, THE HEADER PROCEDURE MUST 00586 M00S00579.rform +++|* NOT CALL *RPLINE* OR *RPSPACE*. INSTEAD *RPLINEX* 00587 M00S00580.rform +++|* SHOULD BE USED. TO PRINT A BLANK LINE, CALL: 00588 M00S00581.rform +++|* RPLINEX(FETP,0,0,0,0). 00589 M00S00582.rform +++|# 00590 M00S00583.rform +++| 00591 M00S00584.rform +++| ITEM NAME C(7); # NAME OF THE REPORT FILE # 00592 M00S00585.rform +++| ITEM FETP U; # ADDRESS OF REPORT FILE *FET* # 00593 M00S00586.rform +++| FPRC HEADPROC; # USER-SUPPLIED HEADER PROCEDURE # 00594 M00S00587.rform +++| 00595 M00S00588.rform +++|# 00596 M00S00589.rform +++|**** PROC RPOPEN - XREF LIST BEGIN. 00597 M00S00590.rform +++|# 00598 M00S00591.rform +++| 00599 M00S00592.rform +++| XREF 00600 M00S00593.rform +++| BEGIN 00601 M00S00594.rform +++| PROC CLOCK; # GETS CURRENT TIME # 00602 M00S00595.rform +++| PROC DATE; # GETS CURRENT DATE # 00603 M00S00596.rform +++| PROC RPEJECT; # STARTS NEW REPORT PAGE # 00604 M00S00597.rform +++| PROC RPLINEX; # PRINTS A LINE # 00605 M00S00598.rform +++| PROC RPSRCH; # SEARCHES THE PRINT TABLE # 00606 M00S00599.rform +++| PROC ZSETFET; # INITIALIZES A *FET* # 00607 M00S00600.rform +++| END 00608 M00S00601.rform +++| 00609 M00S00602.rform +++|# 00610 M00S00603.rform +++|**** PROC RPOPEN - XREF LIST END. 00611 M00S00604.rform +++|# 00612 M00S00605.rform +++| 00613 M00S00606.rform +++| DEF LISTCON #0#; # CONTROLS LISTING OF COMDECKS # 00614 M00S00607.rform +++|*CALL COMAMSS 00615 M00S00608.rform +++|*CALL COMUFMT 00616 M00S00609.rform +++|*CALL COMUOUT 00617 M00S00610.rform +++| 00618 M00S00611.rform +++| 00619 M00S00612.rform +++| 00620 M00S00613.rform +++| ITEM DTEMP C(10); # TEMPORARY LOCATION FOR DATE # 00621 M00S00614.rform +++| ITEM TTEMP C(10); # TEMPORARY LOCATION FOR TIME # 00622 M00S00615.rform +++| ITEM PRBUFP U; # ADDRESS OF *CIO* BUFFER # 00623 M00S00616.rform +++| 00624 M00S00617.rform +++| BASED 00625 M00S00618.rform +++| ARRAY HEADWORD [0:0] S(1); # USED TO TEST *HEADPROC* # 00626 M00S00619.rform +++| BEGIN 00627 M00S00620.rform +++| ITEM HEADNAME U(00,00,60); # NAME OF HEADER PROCEDURE # 00628 M00S00621.rform +++| END 00629 M00S00622.rform +++| 00630 M00S00623.rform +++|CONTROL EJECT; 00631 M00S00624.rform +++| 00632 M00S00625.rform +++|# 00633 M00S00626.rform +++|* NO PROCESSING IS DONE IF A NULL REPORT FILE IS INDICATED. 00634 M00S00627.rform +++|# 00635 M00S00628.rform +++| 00636 M00S00629.rform +++| IF FETP EQ NULLFILE 00637 M00S00630.rform +++| THEN 00638 M00S00631.rform +++| BEGIN 00639 M00S00632.rform +++| RETURN; 00640 M00S00633.rform +++| END 00641 M00S00634.rform +++| 00642 M00S00635.rform +++| 00643 M00S00636.rform +++|# 00644 M00S00637.rform +++|* SEARCH FOR AN EMPTY ENTRY IN THE PRINT TABLE. 00645 M00S00638.rform +++|# 00646 M00S00639.rform +++| 00647 M00S00640.rform +++| RPSRCH(EMPTY); # SEARCH TABLE FOR EMPTY ENTRY # 00648 M00S00641.rform +++| 00649 M00S00642.rform +++| DATE(DTEMP); # GET CURRENT DATE # 00650 M00S00643.rform +++| CLOCK(TTEMP); # GET CURRENT TIME # 00651 M00S00644.rform +++| 00652 M00S00645.rform +++|# 00653 M00S00646.rform +++|* INITIALIZE PRINT TABLE FIELDS. 00654 M00S00647.rform +++|# 00655 M00S00648.rform +++| 00656 M00S00649.rform +++| PRBUFP = LOC(PRBUF[ORD]); # ADDRESS OF *CIO* BUFFER # 00657 M00S00650.rform +++| PRTLFN[ORD] = NAME; 00658 M00S00651.rform +++| PRTLINE[ORD] = MAXLINE; 00659 M00S00652.rform +++| PRTHEADT[ORD] = " "; 00660 M00S00653.rform +++| PRTFETP[ORD] = FETP; 00661 M00S00654.rform +++| PRTPAGE[ORD] = 0; 00662 M00S00655.rform +++| PRTLINELIM[ORD] = PRDEFLIM; 00663 M00S00656.rform +++| PRTDATE[ORD] = DTEMP; 00664 M00S00657.rform +++| PRTTIME[ORD] = TTEMP; 00665 M00S00658.rform +++| 00666 M00S00659.rform +++|# 00667 M00S00660.rform +++|* SAVE ADDRESS OF THE HEADER PROCEDURE. 00668 M00S00661.rform +++|# 00669 M00S00662.rform +++| 00670 M00S00663.rform +++| P<HEADWORD> = LOC(HEADPROC); 00671 M00S00664.rform +++| IF HEADNAME[0] EQ DEFLT$HDR 00672 M00S00665.rform +++| THEN # DEFAULT HEADER CHOSEN # 00673 M00S00666.rform +++| BEGIN 00674 M00S00667.rform +++| PRTHEADP[ORD] = LOC(RPLINEX); # GET ADDRESS OF *RPLINEX* # 00675 M00S00668.rform +++| END 00676 M00S00669.rform +++| 00677 M00S00670.rform +++| ELSE # HEADER PROVIDED # 00678 M00S00671.rform +++| BEGIN 00679 M00S00672.rform +++| PRTHEADP[ORD] = LOC(HEADPROC); # GET HEADER ADDRESS # 00680 M00S00673.rform +++| END 00681 M00S00674.rform +++| 00682 M00S00675.rform +++|# 00683 M00S00676.rform +++|* INITIALIZE *FET* AND START FIRST PAGE. 00684 M00S00677.rform +++|# 00685 M00S00678.rform +++| 00686 M00S00679.rform +++| ZSETFET(FETP,NAME,PRBUFP,PRBUFL,SFETL); 00687 M00S00680.rform +++| 00688 M00S00681.rform +++| LIN$BUF[ORD] = SPACES; # BLANK FILL *LINEBUFF* # 00689 M00S00682.rform +++| RETURN; 00690 M00S00683.rform +++| 00691 M00S00684.rform +++| END # RPOPEN # 00692 M00S00685.rform +++| 00693 M00S00686.rform +++| TERM 00694 M00S00687.rform +++|PROC RPSPACE((FETP),(SPTYP),(NUM)); 00695 M00S00688.rform +++|# TITLE RPSPACE - DOES REPORT SPACING. # 00696 M00S00689.rform +++| 00697 M00S00690.rform +++| BEGIN # RPSPACE # 00698 M00S00691.rform +++| 00699 M00S00692.rform +++|# 00700 M00S00693.rform +++|** RPSPACE - DOES REPORT SPACING. 00701 M00S00694.rform +++|* 00702 M00S00695.rform +++|* THIS PROCEDURE DOES VARIOUS TYPES OF REPORT 00703 M00S00696.rform +++|* PROCESSING, DEPENDING ON THE VALUE OF *SPTYP* 00704 M00S00697.rform +++|* SPECIFIED. 00705 M00S00698.rform +++|* 00706 M00S00699.rform +++|* PROC RPSPACE((FETP),(SPTYP),(NUM)). 00707 M00S00700.rform +++|* 00708 M00S00701.rform +++|* ENTRY (FETP) - ADDRESS OF REPORT FILE *FET*. 00709 M00S00702.rform +++|* (SPTYP) - STATUS ITEM INDICATING PROCESSING. 00710 M00S00703.rform +++|* (VALUES DEFINED IN *COMUOUT*) 00711 M00S00704.rform +++|* = *LIMIT*, CHANGE PAGE LINE LIMIT TO *NUM*. 00712 M00S00705.rform +++|* = *LINE*, ADVANCE TO LINE *NUM*. 00713 M00S00706.rform +++|* = *SPACE*, PRINT *NUM* BLANK LINES. 00714 M00S00707.rform +++|* (NUM) - NUMBER USED IN ACCORDANCE WITH THE 00715 M00S00708.rform +++|* VALUE OF *SPTYP*. 00716 M00S00709.rform +++|* 00717 M00S00710.rform +++|* EXIT REPORT SPACING IS COMPLETE. 00718 M00S00711.rform +++|* 00719 M00S00712.rform +++|* ERRORS LINE LIMIT EXCEEDS MAXIMUM. 00720 M00S00713.rform +++|* 00721 M00S00714.rform +++|* MESSAGES * MAXIMUM LINE COUNT TAKEN AS LIMIT.*. 00722 M00S00715.rform +++|# 00723 M00S00716.rform +++| 00724 M00S00717.rform +++| ITEM FETP U; # ADDRESS OF *FET* # 00725 M00S00718.rform +++| ITEM NUM I; # NUMBER OF SPACES, LINE NUMBER, 00726 M00S00719.rform +++| OR NEW LINE LIMIT # 00727 M00S00720.rform +++| 00728 M00S00721.rform +++|# 00729 M00S00722.rform +++|**** PROC RPSPACE - XREF LIST BEGIN. 00730 M00S00723.rform +++|# 00731 M00S00724.rform +++| 00732 M00S00725.rform +++| XREF 00733 M00S00726.rform +++| BEGIN 00734 M00S00727.rform +++| PROC MESSAGE; # DISPLAYS DAYFILE MESSAGE # 00735 M00S00728.rform +++| PROC RPSRCH; # SEARCHES THE PRINT TABLE # 00736 M00S00729.rform +++| PROC RPLINEX; # PRINTS A LINE ON REPORT FILE # 00737 M00S00730.rform +++| PROC RPEJECT; # STARTS NEW REPORT PAGE # 00738 M00S00731.rform +++| END 00739 M00S00732.rform +++| 00740 M00S00733.rform +++|# 00741 M00S00734.rform +++|**** PROC RPSPACE - XREF LIST END. 00742 M00S00735.rform +++|# 00743 M00S00736.rform +++| 00744 M00S00737.rform +++| DEF LISTCON #0#; # CONTROLS LISTING OF COMDECKS # 00745 M00S00738.rform +++|*CALL COMAMSS 00746 M00S00739.rform +++|*CALL COMUFMT 00747 M00S00740.rform +++|*CALL COMUOUT 00748 M00S00741.rform +++| ITEM I I; # INDUCTION VARIABLE # 00749 M00S00742.rform +++| ITEM LINESLEFT U; # LINES LEFT ON PAGE # 00750 M00S00743.rform +++| ITEM SPTYP S:SP; # TYPE OF SPACING SPECIFIED # 00751 M00S00744.rform +++| 00752 M00S00745.rform +++| SWITCH LABTYP:SP # SWITCH CONTROLLING PROCESSING # 00753 M00S00746.rform +++| LIMITYP:LIMIT, # CHANGE PAGE LINE LIMIT # 00754 M00S00747.rform +++| LINETYP:LINE, # ADVANCE TO ABSOLUTE LINE # 00755 M00S00748.rform +++| SPACETYP:SPACE; # PRINT BLANK LINES # 00756 M00S00749.rform +++| 00757 M00S00750.rform +++|CONTROL EJECT; 00758 M00S00751.rform +++| 00759 M00S00752.rform +++| 00760 M00S00753.rform +++| 00761 M00S00754.rform +++|# 00762 M00S00755.rform +++|* NO PROCESSING IS DONE IF A NULL REPORT FILE IS INDICATED. 00763 M00S00756.rform +++|# 00764 M00S00757.rform +++| 00765 M00S00758.rform +++| IF FETP EQ NULLFILE 00766 M00S00759.rform +++| THEN 00767 M00S00760.rform +++| BEGIN 00768 M00S00761.rform +++| RETURN; 00769 M00S00762.rform +++| END 00770 M00S00763.rform +++| 00771 M00S00764.rform +++| 00772 M00S00765.rform +++|# 00773 M00S00766.rform +++|* FIND PRINT TABLE ENTRY AND PROCESS REQUEST. 00774 M00S00767.rform +++|# 00775 M00S00768.rform +++| 00776 M00S00769.rform +++| RPSRCH(FETP); 00777 M00S00770.rform +++| GOTO LABTYP[SPTYP]; # DO APPROPRIATE PROCESSING # 00778 M00S00771.rform +++| 00779 M00S00772.rform +++|LIMITYP: # CHANGE LINE LIMIT TO *NUM* # 00780 M00S00773.rform +++| IF NUM LS MAXLC 00781 M00S00774.rform +++| THEN # LIMIT REQUESTED IS PERMISSABLE # 00782 M00S00775.rform +++| BEGIN 00783 M00S00776.rform +++| PRTLINELIM[ORD] = NUM; 00784 M00S00777.rform +++| END 00785 M00S00778.rform +++| 00786 M00S00779.rform +++| ELSE # EXCESSIVE LIMIT REQUESTED # 00787 M00S00780.rform +++| BEGIN 00788 M00S00781.rform +++| PRTLINELIM[ORD] = MAXLC; # MAXIMUM LINE LIMIT USED # 00789 M00S00782.rform +++| MSGITEM[0] = " MAXIMUM LINE COUNT TAKEN AS LIMIT." ; 00790 M00S00783.rform +++| MESSAGE(MSGITEM[0],UDFL1); 00791 M00S00784.rform +++| END 00792 M00S00785.rform +++| 00793 M00S00786.rform +++| RETURN; 00794 M00S00787.rform +++| 00795 M00S00788.rform +++|LINETYP: # SKIP TO LINE NUMBER # 00796 M00S00789.rform +++| IF NUM LQ PRTLINE[ORD] 00797 M00S00790.rform +++| THEN # LINE IS ON NEXT PAGE # 00798 M00S00791.rform +++| BEGIN 00799 M00S00792.rform +++| RPEJECT(FETP); # EJECT TO NEW PAGE # 00800 M00S00793.rform +++| END 00801 M00S00794.rform +++| 00802 M00S00795.rform +++| NUM = NUM - PRTLINE[ORD]; 00803 M00S00796.rform +++| SLOWFOR I = 1 STEP 1 UNTIL NUM 00804 M00S00797.rform +++| DO 00805 M00S00798.rform +++| BEGIN 00806 M00S00799.rform +++| RPLINEX(FETP,BLANK); # PRINT BLANK LINE # 00807 M00S00800.rform +++| END 00808 M00S00801.rform +++| 00809 M00S00802.rform +++| RETURN; 00810 M00S00803.rform +++| 00811 M00S00804.rform +++|SPACETYP: # SKIP SPECIFIED NUMBER OF LINES # 00812 M00S00805.rform +++| IF PRTLINE[ORD] GR PRTLINELIM[ORD] 00813 M00S00806.rform +++| THEN 00814 M00S00807.rform +++| BEGIN 00815 M00S00808.rform +++| RPEJECT(FETP); # EJECT TO NEW PAGE # 00816 M00S00809.rform +++| END 00817 M00S00810.rform +++| 00818 M00S00811.rform +++| LINESLEFT = (PRTLINELIM[ORD] - PRTLINE[ORD]) + 1; 00819 M00S00812.rform +++| IF NUM GQ LINESLEFT 00820 M00S00813.rform +++| THEN # PAGE EJECT NECESSARY # 00821 M00S00814.rform +++| BEGIN 00822 M00S00815.rform +++| NUM = NUM - LINESLEFT; 00823 M00S00816.rform +++| RPEJECT(FETP); 00824 M00S00817.rform +++| END 00825 M00S00818.rform +++| 00826 M00S00819.rform +++| SLOWFOR I = 1 STEP 1 UNTIL NUM 00827 M00S00820.rform +++| DO # PRINT *NUM* BLANK LINES # 00828 M00S00821.rform +++| BEGIN 00829 M00S00822.rform +++| RPLINEX(FETP,BLANK); # PRINT *NUM* BLANK LINES # 00830 M00S00823.rform +++| END 00831 M00S00824.rform +++| 00832 M00S00825.rform +++| 00833 M00S00826.rform +++| RETURN; 00834 M00S00827.rform +++| END # RPSPACE # 00835 M00S00828.rform +++| 00836 M00S00829.rform +++| TERM 00837 M00S00830.rform +++|PROC RPSRCH((FETP)); 00838 M00S00831.rform +++| 00839 M00S00832.rform +++|# TITLE RPSRCH - SEARCHES THE PRINT TABLE. # 00840 M00S00833.rform +++| 00841 M00S00834.rform +++| BEGIN # RPSRCH # 00842 M00S00835.rform +++| 00843 M00S00836.rform +++|# 00844 M00S00837.rform +++|** RPSRCH - SEARCHES THE PRINT TABLE FOR AN ENTRY WITH A 00845 M00S00838.rform +++|* MATCHING *FETP*. 00846 M00S00839.rform +++|* 00847 M00S00840.rform +++|* *RPSRCH* SEARCHES THE PRINT TABLE FOR EITHER AN EMPTY 00848 M00S00841.rform +++|* ENTRY, OR THE ENTRY FOR A FILE ALREADY OPENED BY 00849 M00S00842.rform +++|* *RPOPEN*. 00850 M00S00843.rform +++|* 00851 M00S00844.rform +++|* PROC RPSRCH((FETP)). 00852 M00S00845.rform +++|* 00853 M00S00846.rform +++|* ENTRY (FETP) - THE *FET* ADDRESS FOR REPORT FILE. 00854 M00S00847.rform +++|* = *EMPTY*, SEARCH FOR EMPTY ENTRY. 00855 M00S00848.rform +++|* (VALUE DEFINED IN *COMUFMT*) 00856 M00S00849.rform +++|* = OTHER, ADDRESS OF *FET*. 00857 M00S00850.rform +++|* 00858 M00S00851.rform +++|* EXIT (ORD) - ITEM IN COMMON CONTAINING THE ORDINAL 00859 M00S00852.rform +++|* OF THE PRINT TABLE ENTRY FOUND. 00860 M00S00853.rform +++|* IF THE PRINT TABLE IS FULL, OR A MATCHING 00861 M00S00854.rform +++|* ENTRY IS NOT FOUND, PROCESSING IS ABORTED. 00862 M00S00855.rform +++|* 00863 M00S00856.rform +++|* MESSAGES * PRINT TABLE ENTRY NOT FOUND.* 00864 M00S00857.rform +++|* * PRINT TABLE FULL.* 00865 M00S00858.rform +++|# 00866 M00S00859.rform +++| 00867 M00S00860.rform +++| 00868 M00S00861.rform +++| ITEM FETP U; # ADDRESS OF REPORT FILE *FET* # 00869 M00S00862.rform +++| 00870 M00S00863.rform +++| 00871 M00S00864.rform +++|# 00872 M00S00865.rform +++|**** PROC RPSRCH - XREF LIST BEGIN. 00873 M00S00866.rform +++|# 00874 M00S00867.rform +++| 00875 M00S00868.rform +++| XREF 00876 M00S00869.rform +++| BEGIN 00877 M00S00870.rform +++| PROC ABORT; # ABORTS PROCESSING # 00878 M00S00871.rform +++| PROC MESSAGE; # DISPLAYS DAYFILE MESSAGE # 00879 M00S00872.rform +++| END 00880 M00S00873.rform +++| 00881 M00S00874.rform +++|# 00882 M00S00875.rform +++|**** PROC RPSRCH - XREF LIST END. 00883 M00S00876.rform +++|# 00884 M00S00877.rform +++| 00885 M00S00878.rform +++| DEF LISTCON #0#; # CONTROLS LISTING OF COMDECKS # 00886 M00S00879.rform +++| 00887 M00S00880.rform +++|*CALL COMAMSS 00888 M00S00881.rform +++|*CALL COMUFMT 00889 M00S00882.rform +++|*CALL COMUOUT 00890 M00S00883.rform +++| 00891 M00S00884.rform +++| 00892 M00S00885.rform +++|CONTROL EJECT; 00893 M00S00886.rform +++| 00894 M00S00887.rform +++|# 00895 M00S00888.rform +++|* FIND PRINT TABLE ENTRY WITH AN EMPTY OR MATCHING *FETP*. 00896 M00S00889.rform +++|# 00897 M00S00890.rform +++| 00898 M00S00891.rform +++| ORD = 1; 00899 M00S00892.rform +++| REPEAT WHILE PRTFETP[ORD] NQ FETP AND ORD LQ PRTABENT 00900 M00S00893.rform +++| DO 00901 M00S00894.rform +++| BEGIN 00902 M00S00895.rform +++| ORD = ORD + 1; 00903 M00S00896.rform +++| END 00904 M00S00897.rform +++| 00905 M00S00898.rform +++| IF ORD GR PRTABENT # MATCHING ENTRY NOT FOUND # 00906 M00S00899.rform +++| THEN 00907 M00S00900.rform +++| BEGIN 00908 M00S00901.rform +++| IF FETP EQ EMPTY # CALLED BY *RPOPEN* # 00909 M00S00902.rform +++| THEN 00910 M00S00903.rform +++| BEGIN 00911 M00S00904.rform +++| MSGITEM[0] = " PRINT TABLE FULL." ; 00912 M00S00905.rform +++| END 00913 M00S00906.rform +++| 00914 M00S00907.rform +++| ELSE 00915 M00S00908.rform +++| BEGIN 00916 M00S00909.rform +++| MSGITEM[0] = " PRINT TABLE ENTRY NOT FOUND." ; 00917 M00S00910.rform +++| END 00918 M00S00911.rform +++| 00919 M00S00912.rform +++| MESSAGE(MSGITEM[0],UDFL1); 00920 M00S00913.rform +++| ABORT; # ISSUE MESSAGE AND ABORT # 00921 M00S00914.rform +++| END 00922 M00S00915.rform +++| 00923 M00S00916.rform +++| RETURN; 00924 M00S00917.rform +++| END # RPSRCH # 00925 M00S00918.rform +++| 00926 M00S00919.rform +++| TERM
cdc/nos2.source/opl.opl871/deck/rform.txt ยท Last modified: by 127.0.0.1