.TITLE OPEN AND CLOSE ROUTINES .IF NDF,RSX .MCALL .CSIGEN,.CLOSE,.PRINT,.READ,.READW .MCALL .WAIT,.WRITW,.LOOKUP,.RCTRLO,.EXIT .GLOBL EXT,INBUF,OUTBUF,IOARA,INBLK,OUTBLK .IFF .MCALL CSI$,CSI$1,CSI$2,CSI$SW,CSI$ND,GET$,GCML$,CLOSE$,EXIT$S,QIOW$S .MCALL GCMLB$,PUT$,OPEN$A,OPEN$R,OPEN$W,EXIT$S,GTIM$S,PRINT$ .GLOBL LSTFIL,IN1FIL,G.CMLD .GLOBL TTIBLK,TTOBLK,SUPFIL,INFIL,HLPFIL,IBUFF,SPOOL .IF DF,F4P II=2 .MACRO DECL II .GLOBL IN'II'FIL .ENDM .REPT F4P DECL \II II=II+1 .ENDR .ENDC .ENDC .GLOBL OPEN,CLOSE,TMP,CHRWD,PRSTAT,OPTN,DEBUG,REVTRE .GLOBL LIN,FINLIN,INBFPT,OTBFPT,GLOB,DOFLOW,H1,FWDTRE .GLOBL LOWAV,HIGHAV,LINCTR,NOSRC,TIME,APND,HELP,ICHNO .GLOBL GETLIN,PRTLIN,NAMCTR,ENTCTR,SRCSYM,OUTFLO .GLOBL PUTCHR,SNGCOM,SUPER,OUTSUP,ICHNO,ERRCNT,SETEQU .IIF DF,PREPRC, .GLOBL PRESW .PAGE .PSECT OPNCLO,I,RO,GBL .IF NDF,RSX .MACRO CKSW LT,LOC,?A CMPB #''LT,R1 BNE A JMP LOC A: .ENDM .RCTRLO OPEN: MOV SP,TMP 1$: .CSIGEN LOWAV,#EXT,#0,#INSTR ; GET COMMAND STRING FROM CONSOLE DEVICE BCS 1$ ; RETRY ON ERROR MOV R0,LOWAV ; LOC AFTER HNDLER AVAIL FOR BUFFER ADD #20.,R0 CMP R0,HIGHAV ; ENOUGH ROMM FOR SYMBOL TABLE BLO 2$ .PRINT #FULL BISB #10,@#54 INC ERRCNT CLR R0 .EXIT 2$: CALL DOTIME .IF NDF,LPMODE MOV #10,CHRWD ; DEFALT IS TTY MODE FOR OUTPUT(72 COL) ; OR 8 HOW USED PER LINE .IFF MOV #15.,CHRWD ;DEFAULT IS LP: MODE FOR OUTPUT(132 COL) ; OR 15 HOW USED PER LINE .ENDC ; RT-11 SPECIFIC CODE-CHANGE FOR ALLOWING THE ELEIMINATION ; OF THE BLANK FIRST PAGE OF A LISTING WITHOUT BOTHERING ; SUBSEQUENT SOURCES CONCATENATED IN THE SAME FILE .IIF DF,NOFF, MOVB #12,H1+1 CLR PRSTAT ; SET ALL FLAGS TO DEFALT CONDITIONS CLR OPTN CLR DEBUG CLR NOSRC CLR REVTRE CLR FWDTRE CLR SETEQU .IIF DF,PREPRC, CLR PRESW .IF DF,SPRIDX MOV #1,SUPER ; SUPER INDEX DEFAULT .IFF CLR SUPER ; NO SUPER INDEX DEFAULT .ENDC CLR SNGCOM ; NO SINGLRE COMMON/TYPE DEFAULT CLR GLOB ; SUPER INDEX ALL CLR DOFLOW MOV #LIN+72.,FINLIN TST (SP) ; ANY SWITCHES BNE 77$ JMP NOSWTC ; NO-SKIP NEXT 77$: MOV (SP)+,R0 ; STO NO OF SWITCHES IN R0 SWCK: MOVB (SP),R1 ; GET SWITCH CKSW A,STAT CKSW B,BRKOUT CKSW C,SHORT CKSW D,DBUG CKSW E,COL80 CKSW F,FLOWCH CKSW G,DOGLOB CKSW H,LHELP CKSW I,PRGSPR CKSW J,NOTASD CKSW K,ASD .IIF NDF,LPMODE, CKSW L,TTMODE CKSW N,NOSR CKSW O,OPT .IIF DF,PREPRC, CKSW P,FLXSRC CKSW Q,FTREE CKSW R,RTREE .IIF NDF,SPRIDX, CKSW S,ISUPER .IIF DF,LPMODE, CKSW T,TTMODE CKSW U,UNUSED CKSW X,NOGLOB JMP VALCK ; UNKNOWN SWITCH-SKIP VALUE IF ANY SWCFT: MOV TMP,SP .PRINT #CONFLT JMP OPEN NOTASD: BIS #100000,SETEQU BR COMASD ASD: BIS #1,SETEQU COMASD: CMP #100001,SETEQU BEQ SWCFT JMP VALCK DOGLOB: TST GLOB BNE SWCFT INC GLOB JMP VALCK NOGLOB: TST GLOB BNE SWCFT DEC GLOB BR VALCK UNUSED: TST SNGCOM ; IS THEIR A CONFLICT IN /U AND /C SWITCHES BGT SWCFT ; IF YES EROR OUT OF COMMAND DEC SNGCOM BR VALCK SHORT: TST SNGCOM BLT SWCFT INC SNGCOM ; DELETE UNUSED VARS BR VALCK PRGSPR: .IF NDF,SPRIDX TST SUPER BNE SWCFT .ENDC MOV #-1,SUPER ; SIGNAL TO DUMP SUPER INDEX TABEL WHEN SW DOME BR VALCK ISUPER: .IF NDF,SPRIDX TST SUPER BNE SWCFT INC SUPER ; PUT INPUT INTO SUPER INDEX BR VALCK .ENDC DBUG: INC DEBUG VALCK: TST (SP)+ ; SKIP ANY SWITCH VALUE BGE NOVAL TST (SP)+ NOVAL: DEC R0 ; ANY MORE SWITCHES BEQ 1$ JMP SWCK ; IF YESS GO BACK AND REPEAT 1$: JMP NOSWTC FLOWCH: CALL OUTFLO MOV TMP,SP JMP OPEN BRKOUT: INC DOFLOW BR VALCK .IF DF,PREPRC FLXSRC: CMP #LIN+80.,FINLIN ;CHECK FOR CONFLICT BNE 1$ JMP SWCFT 1$: INC PRESW BR VALCK .ENDC FTREE: MOV #1,FWDTRE RTREE: MOV #1,REVTRE BR VALCK COL80: .IF DF,PREPRC TST PRESW ;CHECK FOR CONFLICT BEQ 1$ JMP SWCFT 1$: .ENDC MOV #LIN+80.,FINLIN BR VALCK TTMODE: .IF DF,LPMODE MOV #10,CHRWD .IFF MOV #15.,CHRWD .ENDC BR VALCK STAT: INC PRSTAT ; PRINT STATISTICS WHEN DONE BR VALCK NOSR: INC NOSRC BR VALCK OPT: INC OPTN ; PRINT OPTINS IN EFFECT BR VALCK LHELP: .LOOKUP #IOARA,#5,#HLPFIL CLR INBLK LBH: .READW #IOARA,#5,#INBUF,#256.,INBLK BCS NDH .PRINT #INBUF INC INBLK BR LBH NDH: .CLOSE #5 MOV TMP,SP GOBAK: JMP OPEN NOSWTC: MOV TMP,SP ; RESET STACK TST DOFLOW BEQ 2$ MOV #1,SNGCOM ; FOR FLOW INDEX FORCE /C/X MOV #-1,GLOB BR 1$ 2$: .WAIT #0 ; CHAN 0 OPEN 6$: BCS GOBAK ; NO ERROR 1$: CLR OUTBLK MOV #256.,R1 MOV #OUTBUF,R2 ; ZERO OUTPUT BUFFER CLR: CLR (R2)+ DEC R1 BNE CLR MOV #OUTBUF,OTBFPT TST SUPER BGE 1$ ; IF NO DUMP OF SUPER TABLE-SKIP NEXT CLR LINCTR JSR PC,OUTSUP JMP OPEN ; AND GET NEW COMMAND STRING 1$: .WAIT #3 ; INPUT CHAN OPEN BCS GOBAK ; NO ERROR CLR INBLK MOV #3,ICHNO ; SET DEFAULT INPUT CHAN NUMBER .READ #IOARA,ICHNO,#INBUF,#256.,INBLK ; GET FIRST BUFER FULL OF INPUT MOV #INBUF,INBFPT ; INIT BUFFER POINTERS .WAIT ICHNO CMPB #15,INBUF ; IS FIRST CHR BNE NOCR ; NO SKIP BNEXT INC INBFPT ; SKIP CR NOCR: INC INBLK .IFF .PSECT IMPURE,D,GBL,RW,CON,REL CSI$ DEF$G .EVEN CSIBLK::.BLKB C.SIZE .EVEN .PSECT OPNCLO SWLIST::CSI$SW A,1,PRSTAT,,,,EXACT CSI$SW B,1,DOFLOW,,,,EXACT CSI$SW C,1,SNGCOM,,,,EXACT CSI$SW D,1,DEBUG,,,,EXACT CSI$SW E,,FINLIN,,,,EXACT CSI$SW F,100000,DOFLOW,,,,EXACT CSI$SW G,1,GLOB,,,,EXACT CSI$SW H,1,HELP, CSI$SW I,100000,SUPER,,,,EXACT CSI$SW J,100000,SETEQU,,,,EXACT CSI$SW K,1,SETEQU,,,,EXACT .IF NDF,LPMODE CSI$SW L,15.,CHRWD,,,,EXACT .IFF CSI$SW L,0,CHRWD,,,,EXACT .ENDC CSI$SW M,1,APND,,,,EXACT CSI$SW N,1,NOSRC,,,,EXACT CSI$SW O,1,OPTN,,,,EXACT .IF DF,PREPRC CSI$SW P,1,PRESW,,,,EXACT .ENDC CSI$SW Q,1,FWDTRE,,,,EXACT CSI$SW R,1,REVTRE,,,,EXACT .IF NDF,SPRIDX CSI$SW S,1,SUPER,,,,EXACT .IFF CSI$SW S,0,SUPER,,,,EXACT .ENDC CSI$SW SP,1,SPOOL,,NEG,,EXACT .IF NDF,LPMODE CSI$SW T,0,CHRWD,,,,EXACT .IFF CSI$SW T,10,CHRWD,,,,EXACT .ENDC CSI$SW U,100000,SNGCOM,,,,EXACT CSI$SW X,100000,GLOB,,,,EXACT CSI$ND ; COMMAND LINE BUFFER COMAND::GCMLB$ RSX,IDX,INSTR,10 OPEN: CLR PRSTAT ;CLEAR ALL SWITCH FLAGS CLR OPTN CLR DEBUG CLR NOSRC CLR REVTRE CLR FWDTRE CLR SETEQU .IIF DF,PREPRC, CLR PRESW .IF DF,SPRIDX MOV #1,SUPER .IFF CLR SUPER .ENDC CLR SNGCOM CLR FINLIN CLR CHRWD CLR APND CLR HELP .IF DF,SPOOLER MOV #1,SPOOL .IFF CLR SPOOL .ENDC CLR GLOB CLR DOFLOW ; RSX-11M SPECIFIC CODE-CHANGE FOR ALLOWING THE ELEIMINATION ; OF THE BLANK FIRST PAGE OF A LISTING WITHOUT BOTHERING ; SUBSEQUENT SOURCES CONCATENATED IN THE SAME FILE .IIF DF,NOFF, MOVB #12,H1+1 ; CLOSE ALL I/O FILES CLOSE$ #LSTFIL CLOSE$ #IN1FIL .IF DF,F4P II=2 .MACRO DEFN II CLOSE$ #IN'II'FIL .ENDM .REPT F4P DEFN \II II=II+1 .ENDR .ENDC ; SET INPUT FILE POIINTER MOV #INFIL,ICHNO ; GET THE COMMAND ;FIRST ZERO OUT THE COMMAND LINE LOOP: MOV #INSTR,R0 MOV #84.,R1 111$: CLRB (R0)+ DEC R1 BGT 111$ GCML$ #COMAND BCC 50$ ;GOT COMMAND-NO ERRORS CMPB G.ERR(R0),#GE.EOF ;END OF FILE???? BEQ 60$ ;NO-OTHER ERROR- EXIT WITH A FUSS QIOW$S #IO.WLB,#9.,#1,,,,<#FINERR,#29.,#40> 60$: CLOSE$ #SUPFIL CLOSE$ #TTIBLK CLOSE$ #TTOBLK EXIT$S 50$: MOV G.CMLD(R0),R1 ;GET BYTE COUNT BEQ LOOP ;TRY AGAIN IF EMPTY MOV G.CMLD+2(R0),R2 ;GET START OF LINE CSI$1 #CSIBLK,R2,R1 ;SYNTAX CHECK/COMPRESS BCC 61$ ;ANY ERRORS QIOW$S #IO.WLB,#9.,#1,,,, QIOW$S #IO.WLB,#9.,#1,,,,<#SERR,#29.,#40> BR LOOP 61$: ;GET OUTPUT FILE AND ALL SWITCHES CSI$2 #CSIBLK,OUTPUT,#SWLIST BCC 62$ QIOW$S #IO.WLB,#9.,#1,,,,<#OFERR,#31.,#40> JMP OPEN ; CHECK THE SWITCHES 62$: CMP #100001,SNGCOM BNE 63$ 71$: QIOW$S #IO.WLB,#9.,#1,,,,<#CONFLT,#30.,#40> JMP OPEN 63$: .IF NDF,SPRIDX CMP #100001,SUPER BEQ 71$ .ENDC CMP #100001,GLOB BEQ 71$ CMP #100001,DOFLOW BEQ 71$ CMP #100001,SETEQU BEQ 71$ 69$: TST FINLIN BNE 64$ ;CHRS/LIN SETTING MOV #LIN+72.,FINLIN 64$: .IF DF,PREPRC CMP #LIN+80.,FINLIN BNE 101$ TST PRESW BNE 71$ 101$: .ENDC TST CHRWD BNE 65$ .IF NDF,LPMODE MOV #10,CHRWD .IFF MOV #15.,CHRWD .ENDC 65$: TST HELP ;HELP WANTED BEQ NOHELP ;NO HELP OPEN$R #HLPFIL ;FIND HELP 66$: GET$ #HLPFIL,#LIN,#100. ;GET LINE BCS 67$ ;ERROR PUT$ #TTOBLK,,;PRINT HELP BR 66$ ;NEXT LINE 67$: CMPB #IE.EOF,F.ERR(R0) ;EOF BEQ 68$ ;YES-NORMAL EXIT QIOW$S #IO.WLB,#9.,#1,,,,<#HLPERR,#24.,#40>;TELL HIM HE IS HELPLESS 68$: CLOSE$ #HLPFIL JMP OPEN NOHELP: CALL DOTIME TST DOFLOW BLE 8$ MOV #1,SNGCOM ;FORCE SUPER INDEX /C/X SWITCHES MOV #-1,GLOB BR 4$ 8$: TST APND ;TIME TO OPEN OUTPUT FILE-IS IT NEW OR APPEND BEQ 1$ MOVB #14,H1+1 ;OVER RIDE INITIAL FORM FEED OPEN$A #LSTFIL,,#CSIBLK+C.DSDS ;OPEN EXISTING FILE FOR APPEND BCC 3$ CLR APND QIOW$S #IO.WLB,#9.,#1,,,,<#OOFAPE,#55.,#40> 1$: OPEN$W #LSTFIL,,#CSIBLK+C.DSDS ;OPEN NEW FILE 2$: BCC 3$ ;IF ERROR ?? QIOW$S #IO.WLB,#9.,#1,,,,<#OOFERR,#31.,#40> JMP OPEN 3$: TST SUPER ;OUTPUT SUPER INDEX ACCUMULATION?? BGE 4$ ;NO CLR LINCTR JSR PC,OUTSUP ;YES JMP OPEN ;AND GET NEXT COMMAND 4$: TST DOFLOW BGE 7$ CALL OUTFLO JMP OPEN 7$: BITB #CS.EQU,CSIBLK+C.STAT ;WAS INPUT FILE SPECIFIED BEQ 6$ ;IF NOT-USE OUTPUT FILE NAME CSI$2 #CSIBLK,INPUT BCC 6$ QIOW$S #IO.WLB,#9.,#1,,,,<#IFERR,#30.,#40> JMP OPEN 6$: OPEN$R #IN1FIL,,#CSIBLK+C.DSDS BCC 5$ ;ANY OPEN ERROR QIOW$S #IO.WLB,#9.,#1,,,,<#OIFERR,#30.,#40> JMP OPEN 5$: MOV #LBUFF,OTBFPT MOV #IBUFF,INBFPT GET$ #IN1FIL,#IBUFF,#132. MOV F.NRBD+2(R0),HIINBP ADD F.NRBD(R0),HIINBP .ENDC PRTOPT: TST OPTN ; PRINT OTIONS IN EFFECT??? BNE 40$ JMP NOOPT ; NO SKIP NEXT 40$: TST DOFLOW BEQ 41$ JMP NOOPT 41$: MOV #-63,LINCTR MOV #-1,SRCSYM MOV #M0,R0 JSR PC,PRTLIN MOVB #14,H1+1 ;PRITING OPTIONS IN EFFECT MUST HAVE FORM FEED MOV #M1,R0 ;ON NEXT PAGE JSR PC,PRTLIN MOV #M2,R0 TST DEBUG BEQ 1$ MOV #M2A,R0 1$: JSR PC,PRTLIN MOV #M3,R0 CMP #LIN+72.,FINLIN BEQ 2$ MOV #M3A,R0 2$: JSR PC,PRTLIN MOV #M4,R0 CMP #10,CHRWD BEQ 3$ MOV #M4A,R0 3$: JSR PC,PRTLIN MOV #M5,R0 TST PRSTAT BEQ 4$ MOV #M5A,R0 4$: JSR PC,PRTLIN MOV #M6,R0 TST NOSRC BEQ 5$ MOV #M6A,R0 5$: JSR PC,PRTLIN CLR R1 BIS SNGCOM,R1 BIS GLOB,R1 BIS SETEQU,R1 MOV #M7,R0 TST R1 BEQ 30$ TST GLOB BEQ 31$ BLT 32$ MOV #M7A,R0 BR 33$ 32$: MOV #M7B,R0 33$: JSR PC,PRTLIN 31$: TST SNGCOM BEQ 34$ BLT 35$ MOV #M7C,R0 BR 36$ 35$: MOV #M7D,R0 36$: JSR PC,PRTLIN 34$: TST SETEQU BEQ 37$ BLT 38$ MOV #M7E,R0 BR 30$ 38$: MOV #M7F,R0 30$: JSR PC,PRTLIN 37$: MOV #M8,R0 TST SUPER BEQ 7$ MOV #M8A,R0 7$: JSR PC,PRTLIN .IF DF,RSX MOV #M9,R0 TST APND BEQ 20$ MOV #M9A,R0 20$: JSR PC,PRTLIN .ENDC .IF DF,PREPRC .GLOBL PRESW,FLXNO MOV #M10,R0 TST PRESW BEQ 21$ MOV #M10A,R0 21$: JSR PC,PRTLIN .ENDC CLR SRCSYM NOOPT: CLR NAMCTR CLR LINCTR .IIF DF,PREPRC, CLR FLXNO CLR ENTCTR CALL GETLIN RETURN .IF NDF,RSX ; THE FOLLOWING IS TAKEN FROM THE SYSLIB ROUTINE 'TIME' DOTIME: MOV #TIME,-(SP) MOV #1,-(SP) MOV SP,R5 JSR PC,TIM CMP (SP)+,(SP)+ RTS PC TIM: CMP -(SP),-(SP) MOV SP,R0 MOV 2(R5),-(SP) MOV R0,-(SP) MOV #10400,-(SP) MOV SP,R0 EMT 375 MOV #2,(SP) MOV SP,R5 JSR PC,TMAS ADD #12,SP RTS PC TMAS: TST (R5)+ MOV (R5)+,R1 MOV (R1)+,R0 MOV (R1),R1 MOV #-1,-(SP) JSR PC,A JSR PC,D MOV R3,-(SP) JSR PC,D MOV R3,-(SP) MOV R1,R3 MOV (R5),R5 BR E F: MOVB #72,(R5)+ E: ADD #366,R3 TSTB R3 BPL E ADD #27472,R3 SWAB R3 MOVB R3,(R5)+ SWAB R3 MOVB R3,(R5)+ MOV (SP)+,R3 BPL F RTS PC A: MOV #62,R4 MOV @#54,R3 BIT #40,300(R3) BNE H D: MOV #74,R4 H: CLR R3 MOV #40,-(SP) C: ASL R1 ROL R0 ROL R3 CMP R3,R4 BLO B SUB R4,R3 INC R1 B: DEC (SP) BNE C TST (SP)+ RTS PC .IFF ; RSX SPECIFIC TIME ROUTINE DOTIME: GTIM$S #LIN ;GET THE TIME MOV #TIME,R5 ;OUTPUT STRING MOV LIN+6,R0 ;GET HOURS CLR R1 50$: SUB #10.,R0 ;GET 10'S OF HOURS BLT 60$ INC R1 BR 50$ 60$: TST R1 ;IF NO 10'S HRS-BLANK FUILL BNE 61$ MOV #<40-60>,R1 61$: ADD #60,R1 MOVB R1,(R5)+ ADD #<60+10.>,R0 MOVB R0,(R5)+ MOVB #':,(R5)+ MOV LIN+10,R0 ;GET MINUTES CLR R1 62$: SUB #10.,R0 BLT 63$ INC R1 BR 62$ 63$: ADD #60,R1 MOVB R1,(R5)+ ADD #<60+10.>,R0 MOVB R0,(R5)+ MOVB #':,(R5)+ MOV LIN+12,R0 ;GET SECONDS CLR R1 64$: SUB #10.,R0 BLT 65$ INC R1 BR 64$ 65$: ADD #60,R1 MOVB R1,(R5)+ ADD #<60+10.>,R0 MOVB R0,(R5) RTS PC .ENDC .PAGE CLOSE: .IF DF,TRFF MOV #14,R0 JSR PC,PUTCHR .ENDC .IF NDF,RSX CMP #OUTBUF,OTBFPT BEQ MTBUF .WRITW #IOARA,#0,#OUTBUF,#256.,OUTBLK MTBUF: .CLOSE #0 .CLOSE #3 .IFF .IF DF,TRFF MOV #15,R0 JSR PC,PUTCHR .ENDC TST SPOOL BEQ 1$ PRINT$ #LSTFIL BR 2$ 1$: CLOSE$ #LSTFIL 2$: CLOSE$ #IN1FIL .ENDC RTS PC .PAGE .IF NDF,RSX EXT: .RAD50 /FOR/ .RAD50 /IDX/ .WORD 0,0,0 HLPFIL: HLPDEV ;DEFINE HELP FILE DEVICE FROM IDXGEN .RAD50 /IND/ .RAD50 /EX / .RAD50 /HLP/ FULL: .ASCII / INDEX-F-NON-RESIDENT/ .ASCIZ / HANDLERS HAVE USED UP SYMBOL TABLE SPACE-ABORT/ .ENDC CONFLT: .ASCIZ / INDEX-W-SWITCH CONFLICT ERROR/ M1: .ASCIZ / INDEX OPTIONS IN EFFECT/ M2: .ASCIZ / TREAT DEBUG LINES AS COMMENTS/ M2A: .ASCIZ / TREAT DEBUG LINES AS SOURCE CODE/ M3: .ASCIZ / USE FIRST 72 COL OF INPUT RECORD FOR SOURCE/ M3A: .ASCIZ / USE FIRST 80 COL OF INPUT RECORD FOR SOURCE/ M4: .ASCIZ / OUTPUT TO 72 COL DEVICE(TTY MODE)/ M4A: .ASCIZ / OUTPUT TO 132 COL DEVICE(LP MODE)/ M5: .ASCIZ / DO NOT PRINT INDEX STATISTICS/ M5A: .ASCIZ / PRINT INDEX STATISTICS/ M6: .ASCIZ / LIST SOURCE/ M6A: .ASCIZ / DO NOT LIST SOURCE/ M7: .ASCIZ / INDEX ALL VARIABLES/ M7C: .ASCIZ ? DO NOT INDEX COMMON/TYPE DECLARED ONLY VARIABLES? M7D: .ASCIZ ? INDEX COMMON/TYPE DECLARED BUT UNUSED VARIABLES? M7A: .ASCIZ ? INDEX GLOBAL VARIABLES ONLY? M7B: .ASCIZ ? INDEX LOCAL VARIABLES ONLY? M7E: .ASCIZ / INDEX ALL VARIABLES ASSIGNED NEW VALUES IN MODULE/ M7F: .ASCIZ / INDEX ALL VARIABLES NOT ASSIGNED A NEW VALUE IN MODULE/ M8: .ASCIZ / PROGRAM VARIABLES NOT SAVED FOR SUPER INDEX/ M8A: .ASCIZ / PROGRAM VARIABLES SAVED FOR SUPER INDEX/ .IF DF,RSX M9: .ASCIZ / OUTPUT DIRECTED TO NEW FILE/ M9A: .ASCIZ / OUTPUT APPENDED TO EXISTING FILE/ FINERR: .ASCII / INDEX-F-COMMAND INPUT ERROR / SERR: .ASCII / INDEX-W-COMMAND SYNTAX ERROR/ OFERR: .ASCII / INDEX-W-OUTPUT FILE SPEC ERROR/ IFERR: .ASCII / INDEX-W-INPUT FILE SPEC ERROR/ HLPERR: .ASCII / INDEX-W-HELP FILE ERROR/ OOFERR: .ASCII / INDEX-W-OPEN OUTPUT FILE ERROR/ OOFAPE: .ASCII / INDEX-W-APPEND FILE DOES NOT EXIST, CREATEING NEW FILE/ OIFERR: .ASCII / INDEX-W-OPEN INPUT FILE ERROR/ .ENDC .IF DF,PREPRC M10: .ASCIZ / CROSS REFERENCE USES FORTRAN LINE NUMBERS/ M10A: .ASCIZ / CROSS REFERENCE USES PREPROCESSOR LINE NUMBERS/ .ENDC .EVEN .PSECT OPNLIN,D,RW,GBL M0: .IF NDF,NOFF .BYTE 14 .IFF .BYTE 12 .ENDC .ASCII / / INSTR:: .BLKB 84. .END