.RIGHT MARGIN 80.JUSTIFY.USE'.OUTPUT WIDTH 59.OUTPUT LENGTH 10 .PROGRAM SUBROUTINE REHELP(ITTY) C RENBR(REHLP6/DIALOG OF SWITCHES THEN NAMES 1 PER LINE C C DONALD BARTH, HARVARD BUSINESS SCHOOL C .PREFACE WRITE(ITTY,$) .TEXT This program renumbers and/or lists FORTRAN programs. The user will first be asked to specify whatever options are desired. If the user specifies an option which logically applies only to a listing, then a listing is generated. Likewise, if the user specifies an option which logically applies only when renumbering, then the FORTRAN text will be renumbered. If both listing and renumbering are requested at the same time, then it will be the FORTRAN text after renumbering which is listed. All of the options specified by the user must be typed on a single line. The user does not need to specify any option for which the standard value is acceptable, with the exception, of course, that enough options must be specified to select whether listing or renumbering is to be performed. .skip Each option is specified by typing a letter or a letter with a following number or numbers. These letter and number combinations can have the forms /letter or /letter:number or /letter:number:number where the initial slash and the colons are optional. Thus A5 and L60#66 are equivalent to /A:5 and /L:60:66 respectively. .skip If a listing is requested, then the user will be asked for a title to be placed at the top of each page, and for the name of the file to which the listing is to be written. If renumbering is requested, then the user will be asked for the name of the file into which the renumbered text is to be copied. After these resulting files have been specified, the user will be asked to specify the name of the first or only file to be processed. .skip The user will then be asked repeatedly to specify the next file to be processed. If the user specifies a second or a subsequent file, then the text resulting from the processing of these additional files will be appended to the same listing or renumbered files as the first. Usually, only a single file should be processed if the file is being renumbered. This single file would contain as many routines as are convenient. However, several related files might be listed at the same time so that they appear together in a single listing with a single table of contents. Once all of the files which are to be processed at the same time have been specified, the user should merely press the RETURN key when asked to specify the next file. The user will then be asked to specify the options for the next file or files which are to be processed separately from those already processed. If no more files are to be processed at this time, then the user should merely press the RETURN key again to exit from the program. .SKIP The letters which can be used to select the various options are listed below. .SKIP.LEFT MARGIN 2 .INDENT-2 A#followed by number of spaces to add left of statements in IF THEN block or in DO loop. /A or /A:0 equals /A:1 .INDENT-2 B#followed by smallest statement number in renumbered output .INDENT-2 C#column formatted renumbered output with statement numbers ending in column 5. Statement text will start in column 7 .INDENT-2 E#followed by number of extra tables of contents. /E or /E:0 equals /E:1 .INDENT-2 F#listing device has form feed. Pages in listing will be separated by form feeds if output is to LPT device. /F can be followed by number of lines printable per page. /F or /F:0 equals /F:60 .INDENT-2 G#followed by number of blank lines to be listed between FORTRAN statements. No extra blank lines are listed between comment lines. /G or /G:0 equals /G:1 .INDENT-2 I#followed by increment between statement numbers in renumbered output. Negative increment, such as specified by /I:-1, gives smallest number at end of program. Smallest number will be absolute value of increment unless /B specifies non-zero smallest number. /I or /I:0 equals /I:1 .INDENT-2 J#followed by number of blank lines to be at top of 1st, at bottom of 2nd and top of 3rd pages, etc. This can be followed by number of blank lines to be at bottom of 1st, at top of 2nd and bottom of 3rd pages, etc. These blank lines are inserted to allow top binding of unburst fanfold paper and must be included in printing line limit specified by /F or /L .INDENT-2 K#long lines are to be kept intact in listing .INDENT-2 L#pages in listing will be separated by counted line feeds. /L can be followed by number of lines printable per page. This can be followed by total number of lines per page. /S:0 is assumed if /S has not already been selected. /L or /L:0 equals /L:60:66 .INDENT-2 M#if issued not followed by a number, old statement numbers are maintained. If M is followed by 2 numbers, then these are lowest and highest statement numbers to be modified .INDENT-2 P#followed by first page number in listing. /P or /P:0 equals /P:1 .INDENT-2 S#followed by number of characters printable beyond normal right margin. Excess characters are right justified on following line. /S or /S:0 gives 70 character lines. /S:13 equals /K .INDENT-2 T#tab formatted renumbered output. Tab character will precede statement text .INDENT-2 U#column formatted renumbered output with statement numbers starting in column 1. Statement text will start in column 7 .INDENT-2 V#listing is to be viewed on this terminal. Only 1 input file can be specified .INDENT-2 W#followed by width of tab stop columns to be used when converting tabs to spaces in comment lines. Tabs in comment lines are not converted in renumbered output unless /W is typed. /W or /W:0 equals /W:8 .SKIP.LEFT MARGIN 0 Listing is requested by /E, /F, /G, /J, /K, /L, /P, /S and /V. The default options are initial page number 1, form feeds, intact long lines, single spacing, and 1 table of contents. .SKIP Renumbered is requested by /B, /C, /I, /M, /T and /U. The default options are smallest statement number 1, increment 1 and column format. .SKIP.EJECT .PROGRAM RETURN END