.TITLE RNORSX .IDENT /M3.0/ ;* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ;* * ;* General permission to copy (but not for profit) is hereby * ;* granted, provided that reference is made to the fact that * ;* reproduction privileges were granted by DECUS. * ;* * ;* The information in this document is subject to change with- * ;* out notice and should not be construed as a commitment by * ;* the contributor(s), DECUS or Digital Equipment Corporation. * ;* * ;* These parties make no warranty as to the suitability of this * ;* material for use by the recipient, nor as to the accuracy or * ;* functioning of the software or related material, and no * ;* responsibility is assumed in connection therewith. * ;* * ;* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ; RUNOFF I/O DATA BASE ; ; AUTHOR: E. POLLACK U. OF W. 19-DEC-73 ; ; MODIFIED BY ; ; D. N. CUTLER 27-JUL-75 ; ; C. H. Spalding, Unimation, Dec. '82 ; ; MODIFICATIONS ; ; SIG01 INCREASE FSR ; SIG02 INCORPORATE RSTS CHANGES ; chs03 Make chapter-header spacing available as switch ; chs04 Add alternating-header switch ; chs39 Add LAYOUT and related switches ; chs40 Expand HEADER ; chs45 Add optional-text command-line switches ; chs49 Allow multiple input files & appending to output ; chs59 Add switch to limit chapters output ; chs81 Add /ID command line switch ; chs89 Cleaned up FDB structures to save space ; ; MACRO LIBRARY CALLS .MCALL GCMLB$,FDBDF$,FDAT$A,FDOP$A,FDRC$A,NMBLK$,FSRSZ$ .MCALL CSI$SW,CSI$ND,CSI$SV ; LOGICAL UNIT ASSIGNMENTS ; ; LUN FOR ; ; 1 COMMAND INPUT ; 2 TERMINAL I/O (ERROR MESSAGES, WAIT REQUEST) ;chs89+ ; 3 INPUT FILE ; 4 OUTPUT FILE ; LOCAL SYMBOLS: (Also defined in DATA.MAC!) TTLIN =80. ;MAX. LENGTH OF TTY OUTPUT LINE TTILIN =82. ;LENGTH OF COMMAND LINE + 2 INBUFL =162. ;MAX. LENGTH OF INPUT RECORD + 2 OUBUFL =256. ;MAX. LENGTH OF OUTPUT RECORD ;chs89- ; Allocate buffer space for 3 files and terminal output ;chs89 FSRSZ$ 4,<512.*3+TTLIN> ;chs89 TTBLK:: FDBDF$ FDAT$A R.VAR,FD.CR FDOP$A 2,,TTFIL ;LUN=2 ;chs89 FDRC$A ,TTBUF,TTLIN TTFIL: NMBLK$ CMO,CMD TTIBLK::GCMLB$ 2,RNO,TTIBUF,1,,TTILIN ;LUN=1 ;chs89 TTLDMY::FDBDF$ FDAT$A R.VAR FDOP$A 3,,TTLFIL ;LUN=3 ;chs89 FDRC$A ,INBUF,INBUFL ;chs89 TTLFIL: NMBLK$ RUNOFF,RNO,,SY,0 LSTBLK::FDBDF$ .IF NZ RSTS ;SIG02 FDAT$A R.STRM ;SIG02 .IFF ;SIG02 FDAT$A R.VAR ;SIG02 .ENDC ; -NZ RSTS ;SIG02 FDOP$A 4,,LSTFIL ;LUN=4 ;chs89 FDRC$A ,OUBUF ;chs89 LSTFIL: NMBLK$ RUNOFF,DOC,,SY,0 .PSECT SWTCH,GBL,D SWTBL:: CSI$SW SP,SPLSW,$SWTCH,SET,NEG ;SPOOLING SWITCH CSI$SW UC,UPCSW,$SWTCH,SET,NEG ;FORCE UPPER CASE CSI$SW HY,HYPSW,$SWTCH,SET,NEG ;HYPHENATION SWITCH CSI$SW UL,,,,,ULCVAL ;UNDERLINE CONTROL CSI$SW FF,FFDSW,$SWTCH,SET,NEG,FFVAL ;KICK PAGES WITH FORMFEEDS CSI$SW WA,PAUSW,$SWTCH,SET,NEG ;WAIT BETWEEN PAGES CSI$SW PA,,,,,PAGVAL ;LOWER/UPPER LIMIT TO PAGES .IF NZ SAVPS ;chs49b CSI$SW PS,PSZSW,$SWTCH,SET,,PSVAL ;PAGE SIZE ;chs49b .IFF ;chs49b CSI$SW PS,,,,,PSVAL ;PAGE SIZE .ENDC ; -NZ SAVPS ;chs49b .IIF NZ ALTHDR, CSI$SW AL,ALHSW,$SWTCH,SET,NEG ;"ALTERNATE" ENABLE ;chs04 .IIF NZ BLSW, CSI$SW BL,,,,,CHDVAL ;CHAPTER HEADER BLANK LINES ;chs03 .IF NZ LAYSW ;chs39a+ CSI$SW DO,DWNSW,$SWTCH,SET,,DOVAL ;TOP MARGIN CSI$SW LO,LNGSW,$SWTCH,SET,,LOVAL ;PAGE LENGTH CSI$SW LE,LFTSW,$SWTCH,SET,,LEVAL ;BASE LEFT MARGIN CSI$SW WI,WIDSW,$SWTCH,SET,,WIVAL ;PERMANENT RIGHT MARGIN .ENDC ; NZ LAYSW ;chs39a- .IIF NZ XHDRSW, CSI$SW HL,HLNSW,$SWTCH,SET,,HLVAL ;HEADER LENGTH ;chs40a .IF NZ OPTXSW ;chs45+ CSI$SW IN,OPTSW,$SWTCH,SET,,INVAL ;"INCLUDE" SELECTIONS CSI$SW EX,OPTSW,$SWTCH,SET,,EXVAL ;"EXCLUDE" SELECTIONS .ENDC ; NZ OPTXSW ;chs45- .IIF NZ APNDSW, CSI$SW AP,APNSW,$SWTCH,SET,NEG ;APPEND TO OUTPUT ;chs49a .IIF NZ CHSW, CSI$SW CH,,,,,CHPVAL ;LOWER/UPPER LIMIT TO CHAPTERS ;chs59 .IIF NZ IDSWCH, CSI$SW ID,IDSW,$SWTCH,SET ;VERSION IDENTIFICATION ;chs81 CSI$ND PAGVAL: CSI$SV DECIMAL,LOWPAG,2 CSI$SV DECIMAL,HGHPAG,2 CSI$ND ULCVAL: CSI$SV ASCII,ULSWT,2 CSI$ND FFVAL: CSI$SV DECIMAL,LPPG,2 ;HARDWARE FORM SIZE CSI$ND PSVAL: CSI$SV DECIMAL,PNLPG,2 ;PAGE SIZE CSI$SV DECIMAL,PRMRG,2 ;RIGHT MARGIN CSI$ND .IF NZ BLSW ;PERMIT SWITCH FOR ;chs03+ CHDVAL: CSI$SV DECIMAL,CHPSKP,2 ;CHAPTER HEADER BLANK LINES CSI$ND .ENDC ; NZ BLSW ;chs03- .IF NZ CHSW ;chs59+ CHPVAL: CSI$SV DECIMAL,LOCHAP,2 CSI$SV DECIMAL,HICHAP,2 CSI$ND .ENDC ; NZ CHSW ;chs59- .IF NZ LAYSW ;chs39a+ DOVAL: CSI$SV DECIMAL,TOPMRG,2 ;TOP MARGIN CSI$ND LOVAL: CSI$SV DECIMAL,PNLPG,2 ;PAGE LENGTH CSI$ND LEVAL: CSI$SV DECIMAL,BASMRG,2 ;BASE LEFT MARGIN CSI$ND WIVAL: CSI$SV DECIMAL,PRMRG,2 ;PERMANENT RIGHT MARGIN CSI$ND .ENDC ; NZ LAYSW ;chs39a- .IF NZ XHDRSW ;chs40a+ HLVAL: CSI$SV DECIMAL,HDRLEN,2 ;LENGTH OF HEADERS CSI$ND .ENDC ; NZ XHDRSW ;chs40a- .IF NZ OPTXSW ;chs45+ INVAL: CSI$SV DECIMAL,INCL1,2 ;"INCLUDE" SELECTIONS CSI$SV DECIMAL,INCL2,2 CSI$SV DECIMAL,INCL3,2 CSI$SV DECIMAL,INCL4,2 CSI$SV DECIMAL,INCL5,2 CSI$ND EXVAL: CSI$SV DECIMAL,EXCL1,2 ;"EXCLUDE" SELECTIONS CSI$SV DECIMAL,EXCL2,2 CSI$SV DECIMAL,EXCL3,2 CSI$SV DECIMAL,EXCL4,2 CSI$SV DECIMAL,EXCL5,2 CSI$ND .ENDC ; NZ OPTXSW ;chs45- .PSECT SPSAV:: .BLKW 1 $SWTCH::.BLKW 1 ;SWITCH WORD .END