User Tools

Site Tools


cdc:nos2.source:opl.opl871:deck:panel.001

Deck PANEL Part 001

20 Modifications

Listing Sections

Source

Seq #  *Modification Id* Act 
----------------------------+
01835  M00S01558.panel   +++|        N = 0
01836  M00S01559.panel   +++|1       CONTINUE
01837  M00S01560.panel   +++|        CALL SCANSYM
01838  M00S01561.panel   +++|        IF (ZEQNEXT()) THEN
01839  M00S01562.panel   +++|          IF (UPSYMEQ('TERMINATOR').OR.UPSYMEQ('T')) THEN
01840  M00S01563.panel   +++|            I = 1
01841  M00S01564.panel   +++|          ELSEIF (UPSYMEQ('WEIGHT').OR.UPSYMEQ('W')) THEN
01842  M00S01565.panel   +++|            I = 2
01843  M00S01566.panel   +++|          ELSEIF (UPSYMEQ('PHYSICAL').OR.UPSYMEQ('P')) THEN
01844  M00S01567.panel   +++|            I = 3
01845  M00S01568.panel   +++|          ELSEIF (UPSYMEQ('LOGICAL').OR.UPSYMEQ('L')) THEN
01846  M00S01569.panel   +++|            I = 4
01847  M00S01570.panel   +++|          ELSE
01848  M00S01571.panel   +++|            CALL EXPECT('TERMINATOR= or WEIGHT=','BOX')
01849  M00S01572.panel   +++|            RETURN
01850  M00S01573.panel   +++|          ENDIF
01851  M00S01574.panel   +++|          CALL SKIPTWO
01852  M00S01575.panel   +++|          IF (FATAL) RETURN
01853  M00S01576.panel   +++|          N = 4
01854  M00S01577.panel   +++|          GOTO (100,200,300,400), I
01855  M00S01578.panel   +++|        ELSE
01856  M00S01579.panel   +++|          CALL CHEKHED(I)
01857  M00S01580.panel   +++|          IF (I.NE.0) THEN
01858  M00S01581.panel   +++|            IF (.NOT.HAVCH) THEN
01859  M00S01582.panel   +++|              CALL ERROR('TERMINATOR char required')
01860  M00S01583.panel   +++|            ENDIF
01861  M00S01584.panel   +++|            RETURN
01862  M00S01585.panel   +++|          ENDIF
01863  M00S01586.panel   +++|          N = N + 1
01864  M00S01587.panel   +++|          GOTO (100,200,300,400), N
01865  M00S01588.panel   +++|          CALL EXPECT('End of BOX declaration',' ')
01866  M00S01589.panel   +++|          RETURN
01867  M00S01590.panel   +++|        ENDIF
01868  M00S01591.panel   +++|C
01869  M00S01592.panel   +++|C       TERMINATOR
01870  M00S01593.panel   +++|C
01871  M00S01594.panel   +++|100     CONTINUE
01872  M00S01595.panel   +++|        HAVCH = .TRUE.
01873  M00S01596.panel   +++|        IF (FATAL) RETURN
01874  M00S01597.panel   +++|        IF (SYMTP.NE.'S'.OR.SL.NE.1) THEN
01875  M00S01598.panel   +++|          CALL EXPECT('TERMINATOR character',' ')
01876  M00S01599.panel   +++|          RETURN
01877  M00S01600.panel   +++|        ENDIF
01878  M00S01601.panel   +++|        IF (SPCH(IMAG(SI,1)).NE.0) THEN
01879  M00S01602.panel   +++|          CALL ERROR('Doubly defined')
01880  M00S01603.panel   +++|          RETURN
01881  M00S01604.panel   +++|        ENDIF
01882  M00S01605.panel   +++|        SPCH(STRG(1)) = -NBOX
01883  M00S01606.panel   +++|        GOTO 1
01884  M00S01607.panel   +++|C
01885  M00S01608.panel   +++|C       WEIGHT
01886  M00S01609.panel   +++|C
01887  M00S01610.panel   +++|200     CONTINUE
01888  M00S01611.panel   +++|        IF (UPSYMEQ('FINE').OR.UPSYMEQ('F')) THEN
01889  M00S01612.panel   +++|          ATLW(NATR) = 1
01890  M00S01613.panel   +++|        ELSEIF (UPSYMEQ('MEDIUM').OR.UPSYMEQ('M')) THEN
01891  M00S01614.panel   +++|          ATLW(NATR) = 2
01892  M00S01615.panel   +++|        ELSEIF (UPSYMEQ('BOLD').OR.UPSYMEQ('B')) THEN
01893  M00S01616.panel   +++|          ATLW(NATR) = 3
01894  M00S01617.panel   +++|        ELSE
01895  M00S01618.panel   +++|          CALL EXPECT('FINE, MEDIUM, or BOLD','WEIGHT=')
01896  M00S01619.panel   +++|          RETURN
01897  M00S01620.panel   +++|        ENDIF
01898  M00S01621.panel   +++|        GOTO 1
01899  M00S01622.panel   +++|C
01900  M00S01623.panel   +++|C       PHYSICAL
01901  M00S01624.panel   +++|C
01902  M00S01625.panel   +++|300     CONTINUE
01903  M00S01626.panel   +++|        CALL SCANLPA(0)
01904  M00S01627.panel   +++|        IF (FATAL) RETURN
01905  M00S01628.panel   +++|        GOTO 1
01906  M00S01629.panel   +++|C
01907  M00S01630.panel   +++|C       LOGICAL
01908  M00S01631.panel   +++|C
01909  M00S01632.panel   +++|400     CONTINUE
01910  M00S01633.panel   +++|        CALL SCANLPA(1)
01911  M00S01634.panel   +++|        IF (FATAL) RETURN
01912  M00S01635.panel   +++|        GOTO 1
01913  M00S01636.panel   +++|        END
01914  M00S01637.panel   +++|C-------------------------------------------------------------------
01915  M00S01638.panel   +++|C*      SCANCAS - SCAN CASE LIST
01916  M00S01639.panel   +++|C
01917  M00S01640.panel   +++|C       CASE CONSTANTS ARE COPIED TO THE VVAL ARRAY.  EACH CONSTANT
01918  M00S01641.panel   +++|C       IS PRECEDED BY ITS LENGTH.  THE LIST IS TERMINATED BY A LENGTH
01919  M00S01642.panel   +++|C       OF -1.
01920  M00S01643.panel   +++|C
01921  M00S01644.panel   +++|        SUBROUTINE SCANCAS
01922  M00S01645.panel   +++|*CALL   COMFPAN
01923  M00S01646.panel   +++|        SAVV = NVAL + 1
01924  M00S01647.panel   +++|        IF (.NOT.SYMEQ('(')) THEN
01925  M00S01648.panel   +++|          CALL EXPECT('list','MATCH')
01926  M00S01649.panel   +++|          RETURN
01927  M00S01650.panel   +++|        ENDIF
01928  M00S01651.panel   +++|        N = 0
01929  M00S01652.panel   +++|1       CONTINUE
01930  M00S01653.panel   +++|        CALL SCANSYM
01931  M00S01654.panel   +++|        IF (FATAL) RETURN
01932  M00S01655.panel   +++|        IF (SYMEQ(')')) THEN
01933  M00S01656.panel   +++|          IF (N.EQ.0) THEN
01934  M00S01657.panel   +++|            CALL ERROR('Empty MATCH list')
01935  M00S01658.panel   +++|            RETURN
01936  M00S01659.panel   +++|          ENDIF
01937  M00S01660.panel   +++|          IF (NVAL.GE.MVAL) THEN
01938  M00S01661.panel   +++|            CALL ERR('VALIDATION TABLE OVERFLOW')
01939  M00S01662.panel   +++|            RETURN
01940  M00S01663.panel   +++|          ENDIF
01941  M00S01664.panel   +++|          NVAL = NVAL + 1
01942  M00S01665.panel   +++|          VVAL(NVAL) = -1
01943  M00S01666.panel   +++|          VARV(NVAR) = SAVV
01944  M00S01667.panel   +++|          VAVT(NVAR) = VTMATCH
01945  M00S01668.panel   +++|          RETURN
01946  M00S01669.panel   +++|        ENDIF
01947  M00S01670.panel   +++|        N = N + 1
01948  M00S01671.panel   +++|        CALL COPYSYM
01949  M00S01672.panel   +++|        IF (FATAL) RETURN
01950  M00S01673.panel   +++|        GOTO 1
01951  M00S01674.panel   +++|        END
01952  M00S01675.panel   +++|C-------------------------------------------------------------------
01953  M00S01676.panel   +++|C*      SCANDEF - SCAN PANEL DEFINITION
01954  M00S01677.panel   +++|C
01955  M00S01678.panel   +++|        SUBROUTINE SCANDEF
01956  M00S01679.panel   +++|*CALL   COMFPAN
01957  M00S01680.panel   +++|        INTEGER I, J, N
01958  M00S01681.panel   +++|        LOGICAL INTABL
01959  M00S01682.panel   +++|        INTABL = .FALSE.
01960  M00S01683.panel   +++|2       CALL SCANSYM
01961  M00S01684.panel   +++|1       CONTINUE
01962  M00S01685.panel   +++|        IF (SYMEQ(';')) GOTO 2
01963  M00S01686.panel   +++|        ABEND = ABEND.OR.FATAL
01964  M00S01687.panel   +++|        IF (.NOT.INDEF) RETURN
01965  M00S01688.panel   +++|        CALL NEEDHED(I)
01966  M00S01689.panel   +++|        ABEND = ABEND.OR.FATAL
01967  M00S01690.panel   +++|        IF (ENDFILE) RETURN
01968  M00S01691.panel   +++|        FATAL = .FALSE.
Line S01692 Modification History
M01 (Removed by) 243l647
Seq #  *Modification Id* Act 
----------------------------+
01969  M01S01692.243l647 ---|        GOTO (100,200,300,400,500,600,700,800),I
Line S00070 Modification History
M01 (Added by) 243l647
Seq #  *Modification Id* Act 
----------------------------+
01970  M01S00070.243l647 +++|        GOTO (100,200,300,400,500,600,700,800,900),I
01971  M00S01693.panel   +++|        RETURN
01972  M00S01694.panel   +++|C
01973  M00S01695.panel   +++|C       VAR
01974  M00S01696.panel   +++|C
01975  M00S01697.panel   +++|100     CONTINUE
Line S00004 Modification History
M01 (Added by) ns2315
Seq #  *Modification Id* Act 
----------------------------+
01976  M01S00004.ns2315  +++|
01977  M01S00005.ns2315  +++|* INITIALIZE DEFAULT LOGICAL ATTRIBUTES FLAG.
01978  M01S00006.ns2315  +++|
01979  M01S00007.ns2315  +++|        DEFLOGA = .TRUE.
01980  M00S01698.panel   +++|        CALL SCANVAR
Line S00008 Modification History
M01 (Added by) ns2315
Seq #  *Modification Id* Act 
----------------------------+
01981  M01S00008.ns2315  +++|
01982  M01S00009.ns2315  +++|* TYPE IO=OUT WITH DEFAULT LOGICAL ATTRIBUTES IS SET TO LOGICAL=TEXT.
01983  M01S00010.ns2315  +++|
01984  M01S00011.ns2315  +++|        IF ((DEFLOGA) .AND.(VAIO(NVAR) .EQ. 2)) THEN
01985  M01S00012.ns2315  +++|          ATTP(NATR) = 1
01986  M01S00013.ns2315  +++|        ENDIF
01987  M00S01699.panel   +++|        IF (FATAL) GOTO 1
01988  M00S01700.panel   +++|        IF (INTABL) THEN
01989  M00S01701.panel   +++|          VTAB(NVAR) = NTAB
01990  M00S01702.panel   +++|        ENDIF
Line S00128 Modification History
M01 (Added by) ns2150
M02 (Removed by) panel2
Seq #  *Modification Id* Act 
----------------------------+
01991  M02S00128.panel2  ---|        IF (VARA(NVAR).EQ.NATR) THEN
Line S00001 Modification History
M01 (Added by) panel2
Seq #  *Modification Id* Act 
----------------------------+
01992  M01S00001.panel2  +++|        IF (VARA(NVAR).EQ.NATR-1) THEN
Line S00129 Modification History
M01 (Added by) ns2150
M02 (Removed by) panel2
Seq #  *Modification Id* Act 
----------------------------+
01993  M02S00129.panel2  ---|          VARA(NVAR) = PACKATR()
Line S00002 Modification History
M01 (Added by) panel2
Seq #  *Modification Id* Act 
----------------------------+
01994  M01S00002.panel2  +++|          VARA(NVAR) = PACKATR() - 1
Line S00130 Modification History
M01 (Added by) ns2150
Seq #  *Modification Id* Act 
----------------------------+
01995  M01S00130.ns2150  +++|        ENDIF
01996  M00S01703.panel   +++|        GOTO 1
01997  M00S01704.panel   +++|C
01998  M00S01705.panel   +++|C       KEY
01999  M00S01706.panel   +++|C
02000  M00S01707.panel   +++|200     CALL SCANKEY
02001  M00S01708.panel   +++|        GOTO 1
02002  M00S01709.panel   +++|C
02003  M00S01710.panel   +++|C       ATTR
02004  M00S01711.panel   +++|C
02005  M00S01712.panel   +++|300     CALL SCANATR
02006  M00S01713.panel   +++|        GOTO 1
02007  M00S01714.panel   +++|C
02008  M00S01715.panel   +++|C       RIGHT CURLY BRACKET
02009  M00S01716.panel   +++|C
02010  M00S01717.panel   +++|400     CALL READL1
02011  M00S01718.panel   +++|        RETURN
02012  M00S01719.panel   +++|C
02013  M00S01720.panel   +++|C         BOX
02014  M00S01721.panel   +++|C
02015  M00S01722.panel   +++|500     CALL SCANBOX
Line S00001 Modification History
M01 (Added by) panel3
Seq #  *Modification Id* Act 
----------------------------+
02016  M01S00001.panel3  +++|        IF (FATAL) GOTO 2
02017  M00S01723.panel   +++|        GOTO 1
02018  M00S01724.panel   +++|C
02019  M00S01725.panel   +++|C       TABLE
02020  M00S01726.panel   +++|C
02021  M00S01727.panel   +++|600     CONTINUE
02022  M00S01728.panel   +++|        IF (INTABL) THEN
02023  M00S01729.panel   +++|          CALL ERROR('Already in table')
Line S00001 Modification History
M01 (Added by) panel7
Seq #  *Modification Id* Act 
----------------------------+
02024  M01S00001.panel7  +++|          CALL SCANSYM
02025  M00S01730.panel   +++|          GOTO 1
02026  M00S01731.panel   +++|        ENDIF
02027  M00S01732.panel   +++|        INTABL = .TRUE.
02028  M00S01733.panel   +++|        IF (NTAB.GE.MTAB) THEN
02029  M00S01734.panel   +++|          CALL ERRORN(MTAB,'tables')
02030  M00S01735.panel   +++|          RETURN
02031  M00S01736.panel   +++|        ENDIF
02032  M00S01737.panel   +++|        NTAB = NTAB + 1
02033  M00S01738.panel   +++|        TABNM(NTAB) = '*'
02034  M00S01739.panel   +++|        TABD(NTAB) = 1
02035  M00S01740.panel   +++|        TABF(NTAB) = NVAR + 1
02036  M00S01741.panel   +++|        CALL SCANTAB
02037  M00S01742.panel   +++|        IF (FATAL) RETURN
02038  M00S01743.panel   +++|        GOTO 1
02039  M00S01744.panel   +++|C
02040  M00S01745.panel   +++|C       ENDTABLE
02041  M00S01746.panel   +++|C
02042  M00S01747.panel   +++|700     CONTINUE
02043  M00S01748.panel   +++|        CALL SCANSYM
02044  M00S01749.panel   +++|        IF (FATAL) RETURN
02045  M00S01750.panel   +++|        IF (.NOT.INTABL) THEN
02046  M00S01751.panel   +++|          CALL ERROR('Not in table')
02047  M00S01752.panel   +++|          GOTO 1
02048  M00S01753.panel   +++|        ENDIF
02049  M00S01754.panel   +++|        INTABL = .FALSE.
02050  M00S01755.panel   +++|        IF (TABF(NTAB).GT.NVAR) THEN
02051  M00S01756.panel   +++|          CALL ERROR('Empty table')
02052  M00S01757.panel   +++|          NTAB = NTAB - 1
02053  M00S01758.panel   +++|          GOTO 1
02054  M00S01759.panel   +++|        ENDIF
02055  M00S01760.panel   +++|        TABR(NTAB) = NVAR + 1 - TABF(NTAB)
02056  M00S01761.panel   +++|        N = NVAR
02057  M00S01762.panel   +++|        DO 750 I = 1, TABD(NTAB)-1
02058  M00S01763.panel   +++|          DO 750 J = TABF(NTAB), N
02059  M00S01764.panel   +++|            CALL COPYVAR(J,I)
02060  M00S01765.panel   +++|750     CONTINUE
02061  M00S01766.panel   +++|        TABL(NTAB) = NVAR
02062  M00S01767.panel   +++|        GOTO 1
02063  M00S01768.panel   +++|C
02064  M00S01769.panel   +++|C       PANEL
02065  M00S01770.panel   +++|C
02066  M00S01771.panel   +++|800     CONTINUE
02067  M00S01772.panel   +++|        CALL SCANPAN
02068  M00S01773.panel   +++|        GOTO 1
Line S00071 Modification History
M01 (Added by) 243l647
Seq #  *Modification Id* Act 
----------------------------+
02069  M01S00071.243l647 +++|C
02070  M01S00072.243l647 +++|C       SFATTR
02071  M01S00073.243l647 +++|C
02072  M01S00074.243l647 +++|900     CONTINUE
02073  M01S00075.243l647 +++|        IF (NATR.GT.3) THEN
02074  M01S00076.243l647 +++|          CALL ERROR('SFATTR AFTER OTHER ATTRIBUTES')
02075  M01S00077.243l647 +++|          ABEND = .TRUE.
02076  M01S00078.243l647 +++|          RETURN
02077  M01S00079.243l647 +++|        ENDIF
02078  M01S00080.243l647 +++|        CALL SCANSYM
02079  M01S00081.243l647 +++|        IF (FATAL) RETURN
02080  M01S00082.243l647 +++|        DO 950 J = 0,2
02081  M01S00083.243l647 +++|          DO 950 I = 0,11
02082  M01S00084.243l647 +++|            NATR = NATR + 1
02083  M01S00085.243l647 +++|            ATRLP(NATR) = '1'
02084  M01S00086.243l647 +++|            ATIO(NATR) = J
02085  M01S00087.243l647 +++|            ATTP(NATR) = I
02086  M01S00088.243l647 +++|950     CONTINUE
02087  M01S00089.243l647 +++|        GOTO 1
02088  M00S01774.panel   +++|        END
02089  M00S01775.panel   +++|C-------------------------------------------------------------------
02090  M00S01776.panel   +++|C*      SCANIMG - SCAN PANEL IMAGE
02091  M00S01777.panel   +++|C
02092  M00S01778.panel   +++|        SUBROUTINE SCANIMG
02093  M00S01779.panel   +++|*CALL   COMFPAN
02094  M00S01780.panel   +++|        CHARACTER*7 VNAME
02095  M00S01781.panel   +++|        INTEGER HIHV
02096  M00S01782.panel   +++|C
02097  M00S01783.panel   +++|C       PREPARE IMAGE
02098  M00S01784.panel   +++|C
02099  M00S01785.panel   +++|        DO 1 J = 1, MROW
Line S01786 Modification History
M01 (Removed by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
02100  M01S01786.v23l617 ---|          IMAG(133,J) = 1
Line S00015 Modification History
M01 (Added by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
02101  M01S00015.v23l617 +++|          IMAG(MCOL+1,J) = 1
02102  M00S01787.panel   +++|1       CONTINUE
02103  M00S01788.panel   +++|C
02104  M00S01789.panel   +++|C       START COUNTING VAR DATA AND VARS FOUND
02105  M00S01790.panel   +++|C
02106  M00S01791.panel   +++|        VDCO = 0
02107  M00S01792.panel   +++|        NVAF = 0
02108  M00S01793.panel   +++|        HIHV = NVAR
02109  M00S01794.panel   +++|        LFIE = 0
02110  M00S01795.panel   +++|        NFIE = 0
02111  M00S01796.panel   +++|        SPCH(128) = -128
02112  M00S01797.panel   +++|        SPCH(ZUL) = -128
02113  M00S01798.panel   +++|C
02114  M00S01799.panel   +++|C       SCAN
02115  M00S01800.panel   +++|C
02116  M00S01801.panel   +++|        DO 1000 J = 1, NROW
02117  M00S01802.panel   +++|          I = 1
Line S01803 Modification History
M01 (Removed by) ns2150
Seq #  *Modification Id* Act 
----------------------------+
02118  M01S01803.ns2150  ---|          IX = 0
02119  M00S01804.panel   +++|C
02120  M00S01805.panel   +++|C         SKIP BLANKS
02121  M00S01806.panel   +++|C
Line S01807 Modification History
M01 (Removed by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
02122  M01S01807.v23l617 ---|100       IF (I.LE.132) THEN
Line S00016 Modification History
M01 (Added by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
02123  M01S00016.v23l617 +++|100       IF (I.LE.MCOL) THEN
02124  M00S01808.panel   +++|            IF (IMAG(I,J).EQ.ZSP) THEN
Line S01809 Modification History
M01 (Removed by) ns2150
Seq #  *Modification Id* Act 
----------------------------+
02125  M01S01809.ns2150  ---|              IX = IX + 1
02126  M00S01810.panel   +++|              I = I + 1
02127  M00S01811.panel   +++|              GOTO 100
02128  M00S01812.panel   +++|            ENDIF
02129  M00S01813.panel   +++|C
02130  M00S01814.panel   +++|C           VARIABLE
02131  M00S01815.panel   +++|C
02132  M00S01816.panel   +++|            K = SPCH(IMAG(I,J))
02133  M00S01817.panel   +++|            IF (IMAG(I,J).EQ.ZUL) THEN
Line S00001 Modification History
M01 (Added by) panel6
M02 (Removed by) panel9
Seq #  *Modification Id* Act 
----------------------------+
02134  M02S00001.panel9  ---|              IF (J.EQ.1) THEN
Line S00001 Modification History
M01 (Added by) panel9
Seq #  *Modification Id* Act 
----------------------------+
02135  M01S00001.panel9  +++|              IF ((J.EQ.1) .AND.
02136  M01S00002.panel9  +++|     A          (VAIO(NFIE+1) .NE. 2)) THEN
Line S00002 Modification History
M01 (Added by) panel6
M02 (Removed by) panel9
Seq #  *Modification Id* Act 
----------------------------+
02137  M02S00002.panel9  ---|                CALL ERROR('Variable field on' //
Line S00003 Modification History
M01 (Added by) panel9
Seq #  *Modification Id* Act 
----------------------------+
02138  M01S00003.panel9  +++|                CALL ERROR('Input field on' //
Line S00003 Modification History
M01 (Added by) panel6
Seq #  *Modification Id* Act 
----------------------------+
02139  M01S00003.panel6  +++|     A                     ' first line of image')
02140  M01S00004.panel6  +++|                RETURN
02141  M01S00005.panel6  +++|              ENDIF
02142  M00S01818.panel   +++|              SI = I
Line S01819 Modification History
M01 (Removed by) ns2150
Seq #  *Modification Id* Act 
----------------------------+
02143  M01S01819.ns2150  ---|              TMPX = IX
Line S00131 Modification History
M01 (Added by) ns2150
Seq #  *Modification Id* Act 
----------------------------+
02144  M01S00131.ns2150  +++|              TMPX = I - 1
02145  M00S01820.panel   +++|200           I = I + 1
Line S01821 Modification History
M01 (Removed by) ns2150
Seq #  *Modification Id* Act 
----------------------------+
02146  M01S01821.ns2150  ---|              IX = IX + 1
02147  M00S01822.panel   +++|              IF (IMAG(I,J).EQ.ZUL) GOTO 200
02148  M00S01823.panel   +++|              NCOL = MAX(NCOL,I-1)
Line S01824 Modification History
M01 (Removed by) ns2230
Seq #  *Modification Id* Act 
----------------------------+
02149  M01S01824.ns2230  ---|              IF (NFIE.GE.MFIE) THEN
Line S00002 Modification History
M01 (Added by) ns2230
M02 (Removed by) ns2473
Seq #  *Modification Id* Act 
----------------------------+
02150  M02S00002.ns2473  ---|              IF (NFIE.GT.(MFIE+1)) THEN
Line S01825 Modification History
M01 (Removed by) ns2473
Seq #  *Modification Id* Act 
----------------------------+
02151  M01S01825.ns2473  ---|                CALL ERRORN(MFIE,'fields')
02152  M01S01826.ns2473  ---|                RETURN
02153  M01S01827.ns2473  ---|              ENDIF
02154  M00S01828.panel   +++|              NFIE = NFIE + 1
02155  M00S01829.panel   +++|              NVAF = NVAF + 1
02156  M00S01830.panel   +++|              IF (NVAF.LE.NVAR) THEN
02157  M00S01831.panel   +++|                IF (I-SI.NE.VARL(NVAF).AND.VARL(NVAF).NE.0) THEN
02158  M00S01832.panel   +++|                  CALL ERROR('FIELD DECLARED DIFFERENT SIZE')
02159  M00S01833.panel   +++|                ENDIF
02160  M00S01834.panel   +++|              ELSE
02161  M00S01835.panel   +++|                CALL NEWVAR
02162  M00S01836.panel   +++|                IF (FATAL) RETURN
02163  M00S01837.panel   +++|              ENDIF
02164  M00S01838.panel   +++|              FIEX(NFIE) = TMPX
02165  M00S01839.panel   +++|              FIEY(NFIE) = J - 1
02166  M00S01840.panel   +++|              FIEL(NFIE) = I - SI
02167  M00S01841.panel   +++|              FIET(NFIE) = 1
02168  M00S01842.panel   +++|              FIEV(NFIE) = NVAF
02169  M00S01843.panel   +++|              FIEO(NFIE) = VDCO
02170  M00S01844.panel   +++|              FIEA(NFIE) = VARA(NVAF)
02171  M00S01845.panel   +++|              VARF(NVAF) = NFIE
02172  M00S01846.panel   +++|              VDCO = VDCO + FIEL(NFIE)
02173  M00S01847.panel   +++|              GOTO 100
02174  M00S01848.panel   +++|C
02175  M00S01849.panel   +++|C           ATTRIBUTE
02176  M00S01850.panel   +++|C
02177  M00S01851.panel   +++|            ELSEIF (K.GT.0) THEN
02178  M00S01852.panel   +++|              SI = I + 1
Line S01853 Modification History
M01 (Removed by) ns2150
Seq #  *Modification Id* Act 
----------------------------+
02179  M01S01853.ns2150  ---|              IX = IX + 1
02180  M00S01854.panel   +++|300           I = I + 1
Line S01855 Modification History
M01 (Removed by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
02181  M01S01855.v23l617 ---|              IF (I.LE.132.AND.IMAG(I,J).NE.ATCE(K)) GOTO 300
Line S00017 Modification History
M01 (Added by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
02182  M01S00017.v23l617 +++|              IF (I.LE.MCOL.AND.IMAG(I,J).NE.ATCE(K)) GOTO 300
02183  M00S01856.panel   +++|              NCOL = MAX(NCOL,I-1)
02184  M00S01857.panel   +++|              IF (I-SI.GT.0) THEN
Line S01858 Modification History
M01 (Removed by) ns2150
Seq #  *Modification Id* Act 
----------------------------+
02185  M01S01858.ns2150  ---|                CALL NEWCON(IX, J-1, SI, I-SI, K-1)
Line S00132 Modification History
M01 (Added by) ns2150
Seq #  *Modification Id* Act 
----------------------------+
02186  M01S00132.ns2150  +++|                CALL NEWCON(SI-1, J-1, SI, I-SI, K-1)
02187  M00S01859.panel   +++|                IF (FATAL) RETURN
Line S01860 Modification History
M01 (Removed by) ns2150
Seq #  *Modification Id* Act 
----------------------------+
02188  M01S01860.ns2150  ---|                IX = IX + I - SI + 1
02189  M00S01861.panel   +++|              ENDIF
02190  M00S01862.panel   +++|              I = I + 1
02191  M00S01863.panel   +++|              GOTO 100
02192  M00S01864.panel   +++|C
02193  M00S01865.panel   +++|C           BOX
02194  M00S01866.panel   +++|C
02195  M00S01867.panel   +++|            ELSEIF (K.LT.0) THEN
02196  M00S01868.panel   +++|              CALL DOBOX(I,J,-K)
02197  M00S01869.panel   +++|              I = I + 1
02198  M00S01870.panel   +++|              GOTO 100
02199  M00S01871.panel   +++|C
02200  M00S01872.panel   +++|C           PLAIN OLD CONSTANT
02201  M00S01873.panel   +++|C
02202  M00S01874.panel   +++|            ELSE
02203  M00S01875.panel   +++|              SI = I
02204  M00S01876.panel   +++|400           I = I + 1
Line S01877 Modification History
M01 (Removed by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
02205  M01S01877.v23l617 ---|              IF (I.LE.132.AND.
Line S00018 Modification History
M01 (Added by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
02206  M01S00018.v23l617 +++|              IF (I.LE.MCOL.AND.
02207  M00S01878.panel   +++|     A            IMAG(I,J).NE.ZSP.AND.
02208  M00S01879.panel   +++|     B            SPCH(IMAG(I,J)).EQ.0) GOTO 400
Line S01880 Modification History
M01 (Removed by) ns2150
Seq #  *Modification Id* Act 
----------------------------+
02209  M01S01880.ns2150  ---|              IF (I.LT.132) THEN
02210  M01S01881.ns2150  ---|                IF (IMAG(I+1,J).NE.ZSP.AND.
02211  M01S01882.ns2150  ---|     A              SPCH(IMAG(I+1,J)).EQ.0) THEN
02212  M01S01883.ns2150  ---|                  I = I + 1
02213  M01S01884.ns2150  ---|                  GOTO 400
02214  M01S01885.ns2150  ---|                ENDIF
02215  M01S01886.ns2150  ---|              ENDIF
Line S00133 Modification History
M01 (Added by) ns2150
M02 (Removed by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
02216  M02S00133.v23l617 ---|              IF (I.LT.132.AND.
Line S00019 Modification History
M01 (Added by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
02217  M01S00019.v23l617 +++|              IF (I.LT.MCOL.AND.
Line S00134 Modification History
M01 (Added by) ns2150
Seq #  *Modification Id* Act 
----------------------------+
02218  M01S00134.ns2150  +++|     A            IMAG(I,J).EQ.ZSP.AND.
02219  M01S00135.ns2150  +++|     B            IMAG(I+1,J).NE.ZSP) GOTO 400
02220  M00S01887.panel   +++|              NCOL = MAX(NCOL,I-1)
Line S01888 Modification History
M01 (Removed by) ns2150
Seq #  *Modification Id* Act 
----------------------------+
02221  M01S01888.ns2150  ---|              CALL NEWCON(IX, J-1, SI, I-SI, 2)
Line S00136 Modification History
M01 (Added by) ns2150
Seq #  *Modification Id* Act 
----------------------------+
02222  M01S00136.ns2150  +++|              CALL NEWCON(SI-1, J-1, SI, I-SI, 2)
02223  M00S01889.panel   +++|              IF (FATAL) RETURN
Line S01890 Modification History
M01 (Removed by) ns2150
Seq #  *Modification Id* Act 
----------------------------+
02224  M01S01890.ns2150  ---|              IX = IX + I - SI
02225  M00S01891.panel   +++|              GOTO 100
02226  M00S01892.panel   +++|            ENDIF
02227  M00S01893.panel   +++|          ENDIF
02228  M00S01894.panel   +++|1000    CONTINUE
Line S01895 Modification History
M01 (Removed by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
02229  M01S01895.v23l617 ---|        IF (HIHV.NE.0.AND.(HIHV.NE.NVAR.OR.NVAF.NE.NVAR)) THEN
Line S00020 Modification History
M01 (Added by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
02230  M01S00020.v23l617 +++|        IF (HIHV.NE.NVAR.OR.NVAF.NE.NVAR) THEN
02231  M00S01896.panel   +++|          CALL ERROR('Different number of' //
02232  M00S01897.panel   +++|     A               ' fields than declared')
02233  M00S01898.panel   +++|        ENDIF
02234  M00S01899.panel   +++|        END
02235  M00S01900.panel   +++|C-------------------------------------------------------------------
02236  M00S01901.panel   +++|C*      SCANINT - SCAN INTEGER
02237  M00S01902.panel   +++|C
02238  M00S01903.panel   +++|        SUBROUTINE SCANINT
02239  M00S01904.panel   +++|*CALL   COMFPAN
02240  M00S01905.panel   +++|1       IF (ISN(IMAG(SJ,1))) THEN
02241  M00S01906.panel   +++|          SJ = SJ + 1
02242  M00S01907.panel   +++|          GOTO 1
02243  M00S01908.panel   +++|        ENDIF
02244  M00S01909.panel   +++|        END
02245  M00S01910.panel   +++|C-------------------------------------------------------------------
02246  M00S01911.panel   +++|C       SCANKEY - SCAN KEY DECLARATION
02247  M00S01912.panel   +++|C
02248  M00S01913.panel   +++|        SUBROUTINE SCANKEY
02249  M00S01914.panel   +++|*CALL   COMFPAN
02250  M00S01915.panel   +++|        N = 0
02251  M00S01916.panel   +++|        CALL SCANSYM
02252  M00S01917.panel   +++|1       CONTINUE
02253  M00S01918.panel   +++|        IF (FATAL) RETURN
02254  M00S01919.panel   +++|        IF (ZEQNEXT()) THEN
02255  M00S01920.panel   +++|          IF (UPSYMEQ('NORMAL').OR.UPSYMEQ('N')) THEN
02256  M00S01921.panel   +++|            I = 1
02257  M00S01922.panel   +++|          ELSEIF (UPSYMEQ('ABNORMAL').OR.UPSYMEQ('A')) THEN
02258  M00S01923.panel   +++|            I = 2
Line S01924 Modification History
M01 (Removed by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
02259  M01S01924.v23l617 ---|          ELSE
02260  M01S01925.v23l617 ---|            CALL EXPECT('NORMAL= or ABNORMAL=','KEY')
Line S00021 Modification History
M01 (Added by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
02261  M01S00021.v23l617 +++|          ELSEIF (UPSYMEQ('HELP').OR.UPSYMEQ('H')) THEN
02262  M01S00022.v23l617 +++|            I = 3
02263  M01S00023.v23l617 +++|          ELSEIF (UPSYMEQ('MATCH').OR.UPSYMEQ('M')) THEN
02264  M01S00024.v23l617 +++|            I = 4
02265  M01S00025.v23l617 +++|          ELSE
02266  M01S00026.v23l617 +++|            CALL EXPECT('NORMAL=, ABNORMAL=, HELP= or MATCH=','KEY')
02267  M00S01926.panel   +++|            RETURN
02268  M00S01927.panel   +++|          ENDIF
02269  M00S01928.panel   +++|          CALL SKIPTWO
02270  M00S01929.panel   +++|          IF (FATAL) RETURN
Line S01930 Modification History
M01 (Removed by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
02271  M01S01930.v23l617 ---|          N = 2
02272  M01S01931.v23l617 ---|          GOTO (100,200), I
02273  M01S01932.v23l617 ---|        ELSE
02274  M01S01933.v23l617 ---|          N = N + 1
02275  M01S01934.v23l617 ---|          GOTO (100,200), N
Line S00027 Modification History
M01 (Added by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
02276  M01S00027.v23l617 +++|          N = 4
02277  M01S00028.v23l617 +++|          GOTO (100,200,300,400), I
02278  M01S00029.v23l617 +++|        ELSE
02279  M01S00030.v23l617 +++|          N = N + 1
02280  M01S00031.v23l617 +++|          GOTO (100,200,300,400), N
02281  M00S01935.panel   +++|          CALL CHEKHED(I)
02282  M00S01936.panel   +++|          IF (I.EQ.0) THEN
Line S01937 Modification History
M01 (Removed by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
02283  M01S01937.v23l617 ---|            CALL EXPECT('NORMAL=(keys) or '//
02284  M01S01938.v23l617 ---|     A                 'ABNORMAL=(keys)','KEY')
Line S00032 Modification History
M01 (Added by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
02285  M01S00032.v23l617 +++|            CALL EXPECT('NORMAL=, ABNORMAL=, HELP= or '//
02286  M01S00033.v23l617 +++|     A                 'MATCH=(keys)','KEY')
02287  M00S01939.panel   +++|          ENDIF
02288  M00S01940.panel   +++|          RETURN
02289  M00S01941.panel   +++|        ENDIF
02290  M00S01942.panel   +++|C
02291  M00S01943.panel   +++|C       NORMAL
02292  M00S01944.panel   +++|C
02293  M00S01945.panel   +++|100     CONTINUE
02294  M00S01946.panel   +++|        CALL SCANKYS(1)
02295  M00S01947.panel   +++|        IF (FATAL) RETURN
02296  M00S01948.panel   +++|        GOTO 1
02297  M00S01949.panel   +++|C
02298  M00S01950.panel   +++|C       ABNORMAL
02299  M00S01951.panel   +++|C
02300  M00S01952.panel   +++|200     CONTINUE
02301  M00S01953.panel   +++|        CALL SCANKYS(3)
02302  M00S01954.panel   +++|        IF (FATAL) RETURN
02303  M00S01955.panel   +++|        GOTO 1
Line S00034 Modification History
M01 (Added by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
02304  M01S00034.v23l617 +++|C
02305  M01S00035.v23l617 +++|C       HELP
02306  M01S00036.v23l617 +++|C
02307  M01S00037.v23l617 +++|300     CONTINUE
02308  M01S00038.v23l617 +++|        CALL SCANKYS(9)
02309  M01S00039.v23l617 +++|        IF (FATAL) RETURN
02310  M01S00040.v23l617 +++|        GOTO 1
02311  M01S00041.v23l617 +++|C
02312  M01S00042.v23l617 +++|C       MATCH
02313  M01S00043.v23l617 +++|C
02314  M01S00044.v23l617 +++|400     CONTINUE
02315  M01S00045.v23l617 +++|        CALL SCANKYS(10)
02316  M01S00046.v23l617 +++|        IF (FATAL) RETURN
02317  M01S00047.v23l617 +++|        GOTO 1
02318  M00S01956.panel   +++|        END
02319  M00S01957.panel   +++|C-------------------------------------------------------------------
02320  M00S01958.panel   +++|C*      SCANKYS - SCAN KEY LIST
02321  M00S01959.panel   +++|C
02322  M00S01960.panel   +++|C       ENTRY   K=ACTION
02323  M00S01961.panel   +++|C
02324  M00S01962.panel   +++|        SUBROUTINE SCANKYS(K)
02325  M00S01963.panel   +++|*CALL   COMFPAN
02326  M00S01964.panel   +++|        LOGICAL LOOP
02327  M00S01965.panel   +++|        IF (SYMEQ('(')) THEN
02328  M00S01966.panel   +++|          LOOP = .TRUE.
02329  M00S01967.panel   +++|          GOTO 1
02330  M00S01968.panel   +++|        ELSE
02331  M00S01969.panel   +++|          LOOP = .FALSE.
02332  M00S01970.panel   +++|          GOTO 2
02333  M00S01971.panel   +++|        ENDIF
02334  M00S01972.panel   +++|1       CONTINUE
02335  M00S01973.panel   +++|        CALL SCANSYM
02336  M00S01974.panel   +++|        IF (FATAL) RETURN
02337  M00S01975.panel   +++|2       CONTINUE
02338  M00S01976.panel   +++|        CALL CHEKKEY(I,J)
02339  M00S01977.panel   +++|        IF (FATAL) RETURN
02340  M00S01978.panel   +++|        IF (I.EQ.0) THEN
02341  M00S01979.panel   +++|          IF (LOOP) THEN
02342  M00S01980.panel   +++|            IF (SYMEQ(')')) THEN
02343  M00S01981.panel   +++|              CALL SCANSYM
02344  M00S01982.panel   +++|            ELSE
02345  M00S01983.panel   +++|              CALL EXPECT(')','KEY list')
02346  M00S01984.panel   +++|            ENDIF
02347  M00S01985.panel   +++|          ENDIF
02348  M00S01986.panel   +++|          RETURN
02349  M00S01987.panel   +++|        ENDIF
02350  M00S01988.panel   +++|        IF (NFUN.GE.MFUN) THEN
02351  M00S01989.panel   +++|          CALL ERRORN(MKEY,'keys')
02352  M00S01990.panel   +++|          RETURN
02353  M00S01991.panel   +++|        ENDIF
02354  M00S01992.panel   +++|        NFUN = NFUN + 1
02355  M00S01993.panel   +++|        FUNG(NFUN) = I/2
02356  M00S01994.panel   +++|        FUNK(NFUN) = J
02357  M00S01995.panel   +++|        FUNA(NFUN) = K
02358  M00S01996.panel   +++|        IF (LOOP) GOTO 1
02359  M00S01997.panel   +++|        CALL SCANSYM
02360  M00S01998.panel   +++|        END
02361  M00S01999.panel   +++|C-------------------------------------------------------------------
02362  M00S02000.panel   +++|C       SCANLEN - SCAN VAR LENGTH
02363  M00S02001.panel   +++|C
02364  M00S02002.panel   +++|        SUBROUTINE SCANLEN
02365  M00S02003.panel   +++|*CALL   COMFPAN
02366  M00S02004.panel   +++|        IF (SYMEQ('(')) THEN
02367  M00S02005.panel   +++|          CALL SCANSYM
02368  M00S02006.panel   +++|          IF (FATAL) RETURN
02369  M00S02007.panel   +++|          IF (SYMTP.EQ.'N') THEN
02370  M00S02008.panel   +++|            VARL(NVAR) = SINT
02371  M00S02009.panel   +++|            CALL SCANSYM
02372  M00S02010.panel   +++|            IF (FATAL) RETURN
02373  M00S02011.panel   +++|            IF (SYMEQ(')')) THEN
02374  M00S02012.panel   +++|              CALL SCANSYM
02375  M00S02013.panel   +++|              RETURN
02376  M00S02014.panel   +++|            ELSE
02377  M00S02015.panel   +++|              CALL EXPECT(')','VAR length')
02378  M00S02016.panel   +++|            ENDIF
02379  M00S02017.panel   +++|          ELSE
02380  M00S02018.panel   +++|            CALL EXPECT('VAR length','(')
02381  M00S02019.panel   +++|          ENDIF
02382  M00S02020.panel   +++|        ENDIF
02383  M00S02021.panel   +++|        VARL(NVAR) = 0
02384  M00S02022.panel   +++|        END
02385  M00S02023.panel   +++|C-------------------------------------------------------------------
02386  M00S02024.panel   +++|C*      SCANLPA - SCAN LOGICAL/PHYSICAL ATTRIBUTE
02387  M00S02025.panel   +++|C
02388  M00S02026.panel   +++|C       ENTRY   LOG=1 IF LOGICAL ATTRIBUTES, 0 IF PHYSICAL
02389  M00S02027.panel   +++|C
02390  M00S02028.panel   +++|        SUBROUTINE SCANLPA(LOG)
02391  M00S02029.panel   +++|*CALL   COMFPAN
02392  M00S02030.panel   +++|        INTEGER LOG
02393  M00S02031.panel   +++|        LOGICAL LOOP
02394  M00S02032.panel   +++|        CHARACTER*8 LOGIC(2)
02395  M00S02033.panel   +++|        DATA LOGIC /'PHYSICAL','LOGICAL'/
02396  M00S02034.panel   +++|        IF (SYMEQ('(')) THEN
02397  M00S02035.panel   +++|          LOOP = .TRUE.
02398  M00S02036.panel   +++|          GOTO 1
02399  M00S02037.panel   +++|        ELSE
02400  M00S02038.panel   +++|          LOOP = .FALSE.
02401  M00S02039.panel   +++|          GOTO 2
02402  M00S02040.panel   +++|        ENDIF
02403  M00S02041.panel   +++|1       CONTINUE
02404  M00S02042.panel   +++|        CALL SCANSYM
02405  M00S02043.panel   +++|        IF (FATAL) RETURN
02406  M00S02044.panel   +++|2       CONTINUE
02407  M00S02045.panel   +++|        CALL CHEKATR(LP,I)
02408  M00S02046.panel   +++|        IF (LP.EQ.3) THEN
02409  M00S02047.panel   +++|          IF (SYMEQ(')')) RETURN
02410  M00S02048.panel   +++|          CALL EXPECT(LOGIC(LOG+1)//' attribute',' ')
02411  M00S02049.panel   +++|          RETURN
02412  M00S02050.panel   +++|        ENDIF
02413  M00S02051.panel   +++|        IF (LP.NE.LOG) THEN
02414  M00S02052.panel   +++|          CALL ERROR('attribute not '//LOGIC(LOG+1))
02415  M00S02053.panel   +++|          RETURN
02416  M00S02054.panel   +++|        ENDIF
02417  M00S02055.panel   +++|        CALL SETATR(LP,I)
02418  M00S02056.panel   +++|        IF (LOOP) GOTO 1
02419  M00S02057.panel   +++|        END
02420  M00S02058.panel   +++|C-------------------------------------------------------------------
02421  M00S02059.panel   +++|C*      SCANMUS - SCAN ENTRY
02422  M00S02060.panel   +++|C
02423  M00S02061.panel   +++|        SUBROUTINE SCANMUS
02424  M00S02062.panel   +++|*CALL   COMFPAN
02425  M00S02063.panel   +++|        LOGICAL LOOP
02426  M00S02064.panel   +++|        IF (SYMEQ('(')) THEN
02427  M00S02065.panel   +++|          LOOP = .TRUE.
02428  M00S02066.panel   +++|          GOTO 1
02429  M00S02067.panel   +++|        ELSE
02430  M00S02068.panel   +++|          LOOP = .FALSE.
02431  M00S02069.panel   +++|          GOTO 2
02432  M00S02070.panel   +++|        ENDIF
02433  M00S02071.panel   +++|1       CONTINUE
02434  M00S02072.panel   +++|        CALL SCANSYM
02435  M00S02073.panel   +++|        IF (FATAL) RETURN
02436  M00S02074.panel   +++|2       CONTINUE
02437  M00S02075.panel   +++|        IF (SYMEQ(')')) RETURN
02438  M00S02076.panel   +++|        IF (UPSYMEQ('MUST')) THEN
02439  M00S02077.panel   +++|          CALL SCANSYM
02440  M00S02078.panel   +++|          IF (FATAL) RETURN
02441  M00S02079.panel   +++|        ENDIF
02442  M00S02080.panel   +++|        IF (UPSYMEQ('FILL')) THEN
02443  M00S02081.panel   +++|          VARM(NVAR) = OR(VARM(NVAR),VMF)
02444  M00S02082.panel   +++|        ELSEIF (UPSYMEQ('ENTER').OR.UPSYMEQ('E')) THEN
02445  M00S02083.panel   +++|          VARM(NVAR) = OR(VARM(NVAR),VME)
02446  M00S02084.panel   +++|        ELSEIF (UPSYMEQ('UNKNOWN').OR.UPSYMEQ('U')) THEN
02447  M00S02085.panel   +++|          VARM(NVAR) = AND(VARM(NVAR),COMPL(VMK))
Line S02086 Modification History
M01 (Removed by) ns2469
Seq #  *Modification Id* Act 
----------------------------+
02448  M01S02086.ns2469  ---|        ELSE
02449  M01S02087.ns2469  ---|          CALL EXPECT('MUST FILL, MUST ENTER, or UNKNOWN','ENTRY')
Line S00007 Modification History
M01 (Added by) ns2469
Seq #  *Modification Id* Act 
----------------------------+
02450  M01S00007.ns2469  +++|        ELSEIF (UPSYMEQ('CONTAIN').OR.UPSYMEQ('C')) THEN
02451  M01S00008.ns2469  +++|          VARC(NVAR) = 1
02452  M01S00009.ns2469  +++|        ELSE
02453  M01S00010.ns2469  +++|          CALL EXPECT('MUST FILL, ENTER, CONTAIN or UNKNOWN','ENTRY')
02454  M00S02088.panel   +++|          RETURN
02455  M00S02089.panel   +++|        ENDIF
02456  M00S02090.panel   +++|        IF (LOOP) GOTO 1
02457  M00S02091.panel   +++|        END
02458  M00S02092.panel   +++|C-------------------------------------------------------------------
02459  M00S02093.panel   +++|C*      SCANPAN - SCAN PANEL KEYWORDS
02460  M00S02094.panel   +++|C
02461  M00S02095.panel   +++|        SUBROUTINE SCANPAN
02462  M00S02096.panel   +++|*CALL   COMFPAN
02463  M00S02097.panel   +++|        N = 0
02464  M00S02098.panel   +++|1       CONTINUE
02465  M00S02099.panel   +++|        CALL SCANSYM
02466  M00S02100.panel   +++|        IF (FATAL) RETURN
02467  M00S02101.panel   +++|        IF (ZEQNEXT()) THEN
02468  M00S02102.panel   +++|          IF (UPSYMEQ('NAME').OR.UPSYMEQ('N')) THEN
02469  M00S02103.panel   +++|            I = 1
02470  M00S02104.panel   +++|          ELSE IF (UPSYMEQ('TYPE').OR.UPSYMEQ('T')) THEN
02471  M00S02105.panel   +++|            I = 2
02472  M00S02106.panel   +++|          ELSE
02473  M00S02107.panel   +++|            CALL EXPECT('TYPE=','PANEL')
02474  M00S02108.panel   +++|            RETURN
02475  M00S02109.panel   +++|          ENDIF
02476  M00S02110.panel   +++|          CALL SKIPTWO
02477  M00S02111.panel   +++|          IF (FATAL) RETURN
02478  M00S02112.panel   +++|          N = 2
02479  M00S02113.panel   +++|          GOTO (100,200), I
02480  M00S02114.panel   +++|        ELSE
02481  M00S02115.panel   +++|          CALL CHEKHED(I)
02482  M00S02116.panel   +++|          IF (I.NE.0) RETURN
02483  M00S02117.panel   +++|          N = N + 1
02484  M00S02118.panel   +++|          GOTO (100,200), N
02485  M00S02119.panel   +++|          CALL EXPECT('NAME or TYPE','PANEL')
02486  M00S02120.panel   +++|          RETURN
02487  M00S02121.panel   +++|        ENDIF
02488  M00S02122.panel   +++|C
02489  M00S02123.panel   +++|C       NAME
02490  M00S02124.panel   +++|C
02491  M00S02125.panel   +++|100     CONTINUE
02492  M00S02126.panel   +++|        IF (SYMTP.NE.'I') THEN
02493  M00S02127.panel   +++|          CALL EXPECT('PANEL name','PANEL')
02494  M00S02128.panel   +++|          RETURN
02495  M00S02129.panel   +++|        ENDIF
02496  M00S02130.panel   +++|        PNAME = STRGD(1:SL)
02497  M00S02131.panel   +++|        GOTO 1
02498  M00S02132.panel   +++|C
02499  M00S02133.panel   +++|C       TYPE
02500  M00S02134.panel   +++|C
02501  M00S02135.panel   +++|200     CONTINUE
02502  M00S02136.panel   +++|        IF (UPSYMEQ('PRIMARY')) THEN
02503  M00S02137.panel   +++|          ERBW = 1
02504  M00S02138.panel   +++|        ELSEIF (UPSYMEQ('OVERLAY')) THEN
02505  M00S02139.panel   +++|          ERBW = 0
02506  M00S02140.panel   +++|        ELSE
02507  M00S02141.panel   +++|          CALL EXPECT('PRIMARY or OVERLAY',' ')
02508  M00S02142.panel   +++|          RETURN
02509  M00S02143.panel   +++|        ENDIF
02510  M00S02144.panel   +++|        GOTO 1
02511  M00S02145.panel   +++|        END
02512  M00S02146.panel   +++|C-------------------------------------------------------------------
02513  M00S02147.panel   +++|C*      SCANRNG - SCAN RANGE
02514  M00S02148.panel   +++|C
02515  M00S02149.panel   +++|        SUBROUTINE SCANRNG
02516  M00S02150.panel   +++|*CALL   COMFPAN
02517  M00S02151.panel   +++|        IF (.NOT.SYMEQ('(')) THEN
02518  M00S02152.panel   +++|          CALL EXPECT('(','RANGE=')
02519  M00S02153.panel   +++|          RETURN
02520  M00S02154.panel   +++|        ENDIF
02521  M00S02155.panel   +++|        CALL SCANSYM
02522  M00S02156.panel   +++|        IF (FATAL) RETURN
02523  M00S02157.panel   +++|        IF (SYMTP.NE.'N'.AND.SYMTP.NE.'R') THEN
02524  M00S02158.panel   +++|          CALL EXPECT('constant','RANGE')
02525  M00S02159.panel   +++|          RETURN
02526  M00S02160.panel   +++|        ENDIF
02527  M00S02161.panel   +++|C
02528  M00S02162.panel   +++|C       INTEGER RANGE
02529  M00S02163.panel   +++|C
02530  M00S02164.panel   +++|        IF (NVAL.GE.MVAL-1) THEN
02531  M00S02165.panel   +++|          CALL ERR('VALIDATION TABLE OVERFLOW')
02532  M00S02166.panel   +++|          RETURN
02533  M00S02167.panel   +++|        ENDIF
02534  M00S02168.panel   +++|        IF (VART(NVAR).EQ.VTN) THEN
02535  M00S02169.panel   +++|          IF (SYMTP.NE.'N') THEN
02536  M00S02170.panel   +++|            CALL ERROR('Constant wrong type')
02537  M00S02171.panel   +++|            RETURN
02538  M00S02172.panel   +++|          ENDIF
02539  M00S02173.panel   +++|          NVAL = NVAL + 1
02540  M00S02174.panel   +++|          VVAL(NVAL) = SINT
02541  M00S02175.panel   +++|          CALL SCANSYM
02542  M00S02176.panel   +++|          IF (FATAL) RETURN
02543  M00S02177.panel   +++|          IF (SYMTP.NE.'N') THEN
02544  M00S02178.panel   +++|            CALL EXPECT('constants','RANGE')
02545  M00S02179.panel   +++|            RETURN
02546  M00S02180.panel   +++|          ENDIF
02547  M00S02181.panel   +++|          IF (VVAL(NVAL).GT.SINT) THEN
02548  M00S02182.panel   +++|            CALL ERROR('RANGE low gt high')
02549  M00S02183.panel   +++|            RETURN
02550  M00S02184.panel   +++|          ENDIF
02551  M00S02185.panel   +++|          NVAL = NVAL + 1
02552  M00S02186.panel   +++|          VVAL(NVAL) = SINT
02553  M00S02187.panel   +++|          VARV(NVAR) = NVAL - 1
02554  M00S02188.panel   +++|          VAVT(NVAR) = VTRANGE
02555  M00S02189.panel   +++|          CALL SCANSYM
02556  M00S02190.panel   +++|          GOTO 9999
02557  M00S02191.panel   +++|C
02558  M00S02192.panel   +++|C       REAL RANGE
02559  M00S02193.panel   +++|C
02560  M00S02194.panel   +++|        ELSEIF (VART(NVAR).EQ.VTR) THEN
02561  M00S02195.panel   +++|          IF (SYMTP.NE.'R') THEN
02562  M00S02196.panel   +++|            CALL ERROR('Constant wrong type')
02563  M00S02197.panel   +++|            RETURN
02564  M00S02198.panel   +++|          ENDIF
02565  M00S02199.panel   +++|          NVAL = NVAL + 1
02566  M00S02200.panel   +++|          VREALV(NVAL) = SREALV
02567  M00S02201.panel   +++|          CALL SCANSYM
02568  M00S02202.panel   +++|          IF (FATAL) RETURN
02569  M00S02203.panel   +++|          IF (SYMTP.NE.'R') THEN
02570  M00S02204.panel   +++|            CALL EXPECT('constants','RANGE')
02571  M00S02205.panel   +++|            RETURN
02572  M00S02206.panel   +++|          ENDIF
02573  M00S02207.panel   +++|          IF (VREALV(NVAL).GT.SREALV) THEN
02574  M00S02208.panel   +++|            CALL ERROR('RANGE low gt high')
02575  M00S02209.panel   +++|            RETURN
02576  M00S02210.panel   +++|          ENDIF
02577  M00S02211.panel   +++|          NVAL = NVAL + 1
02578  M00S02212.panel   +++|          VREALV(NVAL) = SREALV
02579  M00S02213.panel   +++|          VARV(NVAR) = NVAL - 1
02580  M00S02214.panel   +++|          VAVT(NVAR) = VTRANGE
02581  M00S02215.panel   +++|          CALL SCANSYM
02582  M00S02216.panel   +++|          GOTO 9999
02583  M00S02217.panel   +++|C
02584  M00S02218.panel   +++|C       CHAR RANGE
02585  M00S02219.panel   +++|C
02586  M00S02220.panel   +++|        ELSE
02587  M00S02221.panel   +++|          CALL ERROR('RANGE of CHAR not allowed')
02588  M00S02222.panel   +++|          RETURN
02589  M00S02223.panel   +++|        ENDIF
02590  M00S02224.panel   +++|9999    CONTINUE
02591  M00S02225.panel   +++|        IF (FATAL) RETURN
02592  M00S02226.panel   +++|        IF (.NOT.SYMEQ(')')) THEN
02593  M00S02227.panel   +++|          CALL EXPECT(')','RANGE')
02594  M00S02228.panel   +++|        ENDIF
02595  M00S02229.panel   +++|        END
02596  M00S02230.panel   +++|C-------------------------------------------------------------------
02597  M00S02231.panel   +++|C*      SCANSYM - SCAN SYMBOL FROM CURRENT POSITION
02598  M00S02232.panel   +++|C
02599  M00S02233.panel   +++|C       ENTRY
02600  M00S02234.panel   +++|C               SJ = CURRENT POSITION
02601  M00S02235.panel   +++|C       EXIT
02602  M00S02236.panel   +++|C               SI = SYMBOL POSITION
02603  M00S02237.panel   +++|C               SJ = NEW CURRENT POSITION
02604  M00S02238.panel   +++|C               SYMTP = SYMBOL TYPE
02605  M00S02239.panel   +++|C                       I = IDENTIFIER
02606  M00S02240.panel   +++|C                       N = INTEGER
02607  M00S02241.panel   +++|C                       P = PUNCTUATOR
02608  M00S02242.panel   +++|C                       R = REAL
02609  M00S02243.panel   +++|C                       S = STRING
02610  M00S02244.panel   +++|C
02611  M00S02245.panel   +++|        SUBROUTINE SCANSYM
02612  M00S02246.panel   +++|*CALL   COMFPAN
02613  M00S02247.panel   +++|        CHARACTER*10 FMT
02614  M00S02248.panel   +++|        GOTO 2
02615  M00S02249.panel   +++|1       CALL READL1
02616  M00S02250.panel   +++|        IF (FATAL) RETURN
02617  M00S02251.panel   +++|2       CONTINUE
Line S02252 Modification History
M01 (Removed by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
02618  M01S02252.v23l617 ---|        IF (SJ.GE.133) GOTO 1
Line S00048 Modification History
M01 (Added by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
02619  M01S00048.v23l617 +++|        IF (SJ.GT.MCOL) GOTO 1
02620  M00S02253.panel   +++|        IF (IMAG(SJ,1).EQ.ZSP) THEN
02621  M00S02254.panel   +++|          SJ = SJ + 1
02622  M00S02255.panel   +++|          GOTO 2
02623  M00S02256.panel   +++|        ENDIF
02624  M00S02257.panel   +++|        IF (IMAG(SJ,1).EQ.ZQO) THEN
02625  M00S02258.panel   +++|3         CONTINUE
02626  M00S02259.panel   +++|          SJ = SJ + 1
Line S02260 Modification History
M01 (Removed by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
02627  M01S02260.v23l617 ---|          IF (SJ.GE.133) GOTO 1
Line S00049 Modification History
M01 (Added by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
02628  M01S00049.v23l617 +++|          IF (SJ.GT.MCOL) GOTO 1
02629  M00S02261.panel   +++|          IF (IMAG(SJ,1).NE.ZQO) GOTO 3
02630  M00S02262.panel   +++|          SJ = SJ + 1
02631  M00S02263.panel   +++|          GOTO 2
02632  M00S02264.panel   +++|        ENDIF
02633  M00S02265.panel   +++|C
02634  M00S02266.panel   +++|        SI = SJ
02635  M00S02267.panel   +++|        SL = 0
02636  M00S02268.panel   +++|        IF (ISA(IMAG(SJ,1))) THEN
02637  M00S02269.panel   +++|          GOTO 100
02638  M00S02270.panel   +++|        ELSEIF (ISN(IMAG(SJ,1))) THEN
02639  M00S02271.panel   +++|          GOTO 200
02640  M00S02272.panel   +++|        ELSEIF (IMAG(SJ,1).EQ.ZPL.OR.
02641  M00S02273.panel   +++|     A          IMAG(SJ,1).EQ.ZMI) THEN
02642  M00S02274.panel   +++|          GOTO 200
02643  M00S02275.panel   +++|        ELSEIF (IMAG(SJ,1).EQ.ZPD) THEN
02644  M00S02276.panel   +++|          IF (IMAG(SJ+1,1).EQ.ZPD) THEN
02645  M00S02277.panel   +++|            SJ = SJ + 2
Line S00001 Modification History
M01 (Added by) panel12
Seq #  *Modification Id* Act 
----------------------------+
02646  M01S00001.panel12 +++|            IF (IMAG(SJ,1).EQ.ZPD) SJ = SJ + 1
02647  M00S02278.panel   +++|            GOTO 2
02648  M00S02279.panel   +++|          ENDIF
02649  M00S02280.panel   +++|          GOTO 215
02650  M00S02281.panel   +++|        ELSEIF (IMAG(SJ,1).EQ.ZAP) THEN
02651  M00S02282.panel   +++|          SJ = SJ + 1
02652  M00S02283.panel   +++|          GOTO 300
02653  M00S02284.panel   +++|        ENDIF
02654  M00S02285.panel   +++|        SYMTP = 'P'
02655  M00S02286.panel   +++|        SL = 1
02656  M00S02287.panel   +++|        SJ = SJ + 1
02657  M00S02288.panel   +++|        GOTO 9999
02658  M00S02289.panel   +++|C
02659  M00S02290.panel   +++|C       IDENTIFIER
02660  M00S02291.panel   +++|C
02661  M00S02292.panel   +++|100     IF (ISAN(IMAG(SJ,1))) THEN
02662  M00S02293.panel   +++|          SL = SL + 1
02663  M00S02294.panel   +++|          IF (IMAG(SJ,1).LT.ZAA) THEN
02664  M00S02295.panel   +++|            STRGD(SL:SL) = CHAR(IMAG(SJ,1) - Z0 + ICHAR('0'))
02665  M00S02296.panel   +++|          ELSE IF (IMAG(SJ,1).GT.ZZZ) THEN
02666  M00S02297.panel   +++|            STRGD(SL:SL) = CHAR(IMAG(SJ,1) - ZA + ICHAR('A'))
02667  M00S02298.panel   +++|          ELSE
02668  M00S02299.panel   +++|            STRGD(SL:SL) = CHAR(IMAG(SJ,1) - ZAA + ICHAR('A'))
02669  M00S02300.panel   +++|          ENDIF
02670  M00S02301.panel   +++|          SJ = SJ + 1
02671  M00S02302.panel   +++|          GOTO 100
02672  M00S02303.panel   +++|        ENDIF
02673  M00S02304.panel   +++|        SYMTP = 'I'
02674  M00S02305.panel   +++|        GOTO 9999
02675  M00S02306.panel   +++|C
02676  M00S02307.panel   +++|C       NUMBER
02677  M00S02308.panel   +++|C
02678  M00S02309.panel   +++|C       PLUS OR MINUS
02679  M00S02310.panel   +++|200     CONTINUE
02680  M00S02311.panel   +++|        SIGN = 1
02681  M00S02312.panel   +++|        SINT = 0
02682  M00S02313.panel   +++|        SYMTP = 'N'
02683  M00S02314.panel   +++|        IF(IMAG(SJ,1).EQ.ZPL) THEN
02684  M00S02315.panel   +++|          SL = SL + 1
02685  M00S02316.panel   +++|          STRGD(SL:SL) = '+'
02686  M00S02317.panel   +++|          SJ = SJ + 1
02687  M00S02318.panel   +++|        ELSEIF (IMAG(SJ,1).EQ.ZMI) THEN
02688  M00S02319.panel   +++|          SL = SL + 1
02689  M00S02320.panel   +++|          STRGD(SL:SL) = '-'
02690  M00S02321.panel   +++|          SIGN = -1
02691  M00S02322.panel   +++|          SJ = SJ + 1
02692  M00S02323.panel   +++|        ENDIF
02693  M00S02324.panel   +++|C       DIGITS
02694  M00S02325.panel   +++|210     IF (ISN(IMAG(SJ,1))) THEN
02695  M00S02326.panel   +++|          SL = SL + 1
02696  M00S02327.panel   +++|          STRGD(SL:SL) = CHAR(IMAG(SJ,1) - Z0 + ICHAR('0'))
02697  M00S02328.panel   +++|          SINT = SINT*10 + IMAG(SJ,1) - Z0
02698  M00S02329.panel   +++|          SJ = SJ + 1
02699  M00S02330.panel   +++|          GOTO 210
02700  M00S02331.panel   +++|        ENDIF
02701  M00S02332.panel   +++|        IF (IMAG(SJ,1).NE.ZPD.AND.IMAG(SJ,1).NE.ZE.AND.
02702  M00S02333.panel   +++|     A      IMAG(SJ,1).NE.ZEE) THEN
02703  M00S02334.panel   +++|          SINT = SINT * SIGN
02704  M00S02335.panel   +++|          GOTO 9999
02705  M00S02336.panel   +++|        ENDIF
02706  M00S02337.panel   +++|        SYMTP = 'R'
02707  M00S02338.panel   +++|C       DECIMAL POINT
02708  M00S02339.panel   +++|215     IF (IMAG(SJ,1).EQ.ZPD) THEN
02709  M00S02340.panel   +++|          SL = SL + 1
02710  M00S02341.panel   +++|          STRGD(SL:SL) = '.'
02711  M00S02342.panel   +++|          SJ = SJ + 1
02712  M00S02343.panel   +++|        ENDIF
02713  M00S02344.panel   +++|C       MORE DIGITS
02714  M00S02345.panel   +++|220     IF (ISN(IMAG(SJ,1))) THEN
02715  M00S02346.panel   +++|          SL = SL + 1
02716  M00S02347.panel   +++|          STRGD(SL:SL) = CHAR(IMAG(SJ,1) - Z0 + ICHAR('0'))
02717  M00S02348.panel   +++|          SJ = SJ + 1
02718  M00S02349.panel   +++|          GOTO 220
02719  M00S02350.panel   +++|        ENDIF
02720  M00S02351.panel   +++|C       E
02721  M00S02352.panel   +++|        IF (IMAG(SJ,1).EQ.ZEE.OR.IMAG(SJ,1).EQ.ZE) THEN
02722  M00S02353.panel   +++|          SL = SL + 1
02723  M00S02354.panel   +++|          STRGD(SL:SL) = 'E'
02724  M00S02355.panel   +++|          SJ = SJ + 1
02725  M00S02356.panel   +++|          SYMTP = 'R'
02726  M00S02357.panel   +++|        ENDIF
02727  M00S02358.panel   +++|C       PLUS OR MINUS AGAIN
02728  M00S02359.panel   +++|        IF(IMAG(SJ,1).EQ.ZPL) THEN
02729  M00S02360.panel   +++|          SL = SL + 1
02730  M00S02361.panel   +++|          STRGD(SL:SL) = '+'
02731  M00S02362.panel   +++|          SJ = SJ + 1
02732  M00S02363.panel   +++|        ELSEIF (IMAG(SJ,1).EQ.ZMI) THEN
02733  M00S02364.panel   +++|          SL = SL + 1
02734  M00S02365.panel   +++|          STRGD(SL:SL) = '-'
02735  M00S02366.panel   +++|          SJ = SJ + 1
02736  M00S02367.panel   +++|        ENDIF
02737  M00S02368.panel   +++|C       STILL MORE DIGITS
02738  M00S02369.panel   +++|230     IF (ISN(IMAG(SJ,1))) THEN
02739  M00S02370.panel   +++|          SL = SL + 1
02740  M00S02371.panel   +++|          STRGD(SL:SL) = CHAR(IMAG(SJ,1) - Z0 + ICHAR('0'))
02741  M00S02372.panel   +++|          SJ = SJ + 1
02742  M00S02373.panel   +++|          GOTO 230
02743  M00S02374.panel   +++|        ENDIF
02744  M00S02375.panel   +++|C       GET VALUE
02745  M00S02376.panel   +++|        IF (SYMTP.EQ.'N') THEN
02746  M00S02377.panel   +++|          SINT = SINT * SIGN
02747  M00S02378.panel   +++|        ELSE
02748  M00S02379.panel   +++|          WRITE(FMT,285) SL
02749  M00S02380.panel   +++|285       FORMAT('(F',I2,'.0)')
02750  M00S02381.panel   +++|C         PRINT*,'REAL FORMAT=',FMT,' VALUE=',STRGD(1:SL)
02751  M00S02382.panel   +++|          READ(STRGD(1:SL),FMT,ERR=290) SREALV
02752  M00S02383.panel   +++|C         PRINT 57, SREALV
02753  M00S02384.panel   +++|57        FORMAT(E20.10)
02754  M00S02385.panel   +++|        ENDIF
02755  M00S02386.panel   +++|        GOTO 9999
02756  M00S02387.panel   +++|290     CALL ERROR('Real constant format')
02757  M00S02388.panel   +++|        SREALV = 0.0
02758  M00S02389.panel   +++|        GOTO 9999
02759  M00S02390.panel   +++|C
02760  M00S02391.panel   +++|C       STRING
02761  M00S02392.panel   +++|C
02762  M00S02393.panel   +++|300     CONTINUE
Line S02394 Modification History
M01 (Removed by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
02763  M01S02394.v23l617 ---|        IF (SJ.GE.133) THEN
Line S00050 Modification History
M01 (Added by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
02764  M01S00050.v23l617 +++|        IF (SJ.GT.MCOL) THEN
02765  M00S02395.panel   +++|          CALL ERROR('Unterminated string')
02766  M00S02396.panel   +++|          RETURN
02767  M00S02397.panel   +++|        ENDIF
02768  M00S02398.panel   +++|        IF (IMAG(SJ,1).EQ.ZAP) THEN
02769  M00S02399.panel   +++|          SJ = SJ + 1
Line S02400 Modification History
M01 (Removed by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
02770  M01S02400.v23l617 ---|          IF (SJ.GE.133) GOTO 300
Line S00051 Modification History
M01 (Added by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
02771  M01S00051.v23l617 +++|          IF (SJ.GT.MCOL) GOTO 300
02772  M00S02401.panel   +++|          IF (IMAG(SJ,1).EQ.ZAP) THEN
02773  M00S02402.panel   +++|            SL = SL + 1
02774  M00S02403.panel   +++|            STRG(SL) = IMAG(SJ,1)
02775  M00S02404.panel   +++|            SJ = SJ + 1
02776  M00S02405.panel   +++|            GOTO 300
02777  M00S02406.panel   +++|          ENDIF
02778  M00S02407.panel   +++|        ELSE
02779  M00S02408.panel   +++|          SL = SL + 1
02780  M00S02409.panel   +++|          STRG(SL) = IMAG(SJ,1)
02781  M00S02410.panel   +++|          SJ = SJ + 1
02782  M00S02411.panel   +++|          GOTO 300
02783  M00S02412.panel   +++|        ENDIF
02784  M00S02413.panel   +++|        SYMTP = 'S'
02785  M00S02414.panel   +++|9999    CONTINUE
02786  M00S02415.panel   +++|        IF (SYMTP.EQ.'P') THEN
02787  M00S02416.panel   +++|C         PRINT 55, SYMTP, IMAG(SI,1)
02788  M00S02417.panel   +++|55        FORMAT('SCANSYM ',A,' ', O3)
02789  M00S02418.panel   +++|        ELSE
02790  M00S02419.panel   +++|C         PRINT 56, SYMTP, SL, STRGD(1:SL)
02791  M00S02420.panel   +++|56        FORMAT('SCANSYM ',A,' ',I3,' ',A)
02792  M00S02421.panel   +++|        ENDIF
02793  M00S02422.panel   +++|        END
02794  M00S02423.panel   +++|C-------------------------------------------------------------------
02795  M00S02424.panel   +++|C*      SCANTAB - SCAN TABLE DEFINITION
02796  M00S02425.panel   +++|C
02797  M00S02426.panel   +++|        SUBROUTINE SCANTAB
02798  M00S02427.panel   +++|*CALL   COMFPAN
02799  M00S02428.panel   +++|        LOGICAL HAVNAME, HAVDIM
02800  M00S02429.panel   +++|        HAVNAME = .FALSE.
02801  M00S02430.panel   +++|        HAVDIM = .FALSE.
02802  M00S02431.panel   +++|        N = 0
02803  M00S02432.panel   +++|1       CONTINUE
02804  M00S02433.panel   +++|        CALL SCANSYM
02805  M00S02434.panel   +++|        IF (FATAL) RETURN
02806  M00S02435.panel   +++|        IF (ZEQNEXT()) THEN
02807  M00S02436.panel   +++|          IF (UPSYMEQ('NAME').OR.UPSYMEQ('N')) THEN
02808  M00S02437.panel   +++|            I = 1
02809  M00S02438.panel   +++|          ELSE IF (UPSYMEQ('ROWS').OR.UPSYMEQ('R')) THEN
02810  M00S02439.panel   +++|            I = 2
02811  M00S02440.panel   +++|          ELSE
02812  M00S02441.panel   +++|            CALL EXPECT('NAME= or ROWS=','TABLE')
02813  M00S02442.panel   +++|            RETURN
02814  M00S02443.panel   +++|          ENDIF
02815  M00S02444.panel   +++|          CALL SKIPTWO
02816  M00S02445.panel   +++|          IF (FATAL) RETURN
02817  M00S02446.panel   +++|          N = 2
02818  M00S02447.panel   +++|          GOTO (100,200), I
02819  M00S02448.panel   +++|        ELSE
02820  M00S02449.panel   +++|          N = N + 1
02821  M00S02450.panel   +++|          GOTO (100,200), N
02822  M00S02451.panel   +++|          IF (.NOT.HAVNAME) THEN
02823  M00S02452.panel   +++|            CALL ERROR('TABLE name required')
02824  M00S02453.panel   +++|            RETURN
02825  M00S02454.panel   +++|          ENDIF
02826  M00S02455.panel   +++|          IF (.NOT.HAVDIM) THEN
02827  M00S02456.panel   +++|            CALL ERROR('TABLE dimension '//
02828  M00S02457.panel   +++|     A                 'required')
02829  M00S02458.panel   +++|            RETURN
02830  M00S02459.panel   +++|          ENDIF
02831  M00S02460.panel   +++|          CALL CHEKHED(I)
02832  M00S02461.panel   +++|          IF (I.EQ.0) THEN
02833  M00S02462.panel   +++|            CALL ERROR('TABLE parameter')
02834  M00S02463.panel   +++|          ENDIF
02835  M00S02464.panel   +++|          RETURN
02836  M00S02465.panel   +++|        ENDIF
02837  M00S02466.panel   +++|C
02838  M00S02467.panel   +++|C       NAME
02839  M00S02468.panel   +++|C
02840  M00S02469.panel   +++|100     CONTINUE
02841  M00S02470.panel   +++|        IF (SYMTP.NE.'I') THEN
02842  M00S02471.panel   +++|          CALL EXPECT('TABLE name',' ')
02843  M00S02472.panel   +++|          RETURN
02844  M00S02473.panel   +++|        ENDIF
02845  M00S02474.panel   +++|        HAVNAME = .TRUE.
02846  M00S02475.panel   +++|        TABNM(NTAB) = STRGD(1:MIN(7,SL))
02847  M00S02476.panel   +++|        GOTO 1
02848  M00S02477.panel   +++|C
02849  M00S02478.panel   +++|C       ROWS
02850  M00S02479.panel   +++|C
02851  M00S02480.panel   +++|200     CONTINUE
02852  M00S02481.panel   +++|        IF (.NOT.SYMTP.EQ.'N') THEN
02853  M00S02482.panel   +++|          CALL EXPECT('Table dimension',' ')
02854  M00S02483.panel   +++|          RETURN
02855  M00S02484.panel   +++|        ENDIF
02856  M00S02485.panel   +++|        TABD(NTAB) = SINT
02857  M00S02486.panel   +++|        HAVDIM = .TRUE.
02858  M00S02487.panel   +++|        GOTO 1
02859  M00S02488.panel   +++|        END
02860  M00S02489.panel   +++|C-------------------------------------------------------------------
02861  M00S02490.panel   +++|C*      SCANVAR - GET VARIABLE DEFINITION
02862  M00S02491.panel   +++|C
02863  M00S02492.panel   +++|        SUBROUTINE SCANVAR
02864  M00S02493.panel   +++|*CALL   COMFPAN
02865  M00S02494.panel   +++|        LOGICAL HAVENAM
Line S00052 Modification History
M01 (Added by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
02866  M01S00052.v23l617 +++|        LOGICAL LOOP
02867  M00S02495.panel   +++|        HAVENAM = .FALSE.
02868  M00S02496.panel   +++|        NPARM = 0
02869  M00S02497.panel   +++|1       CONTINUE
02870  M00S02498.panel   +++|        CALL SCANSYM
02871  M00S02499.panel   +++|        IF (FATAL) RETURN
02872  M00S02500.panel   +++|2       CONTINUE
02873  M00S02501.panel   +++|        CALL SCANVKS(I)
02874  M00S02502.panel   +++|        IF (FATAL) RETURN
02875  M00S02503.panel   +++|        IF (I.EQ.0) THEN
02876  M00S02504.panel   +++|          CALL CHEKHED(J)
02877  M00S02505.panel   +++|          IF (FATAL) RETURN
02878  M00S02506.panel   +++|          IF (J.NE.0) THEN
02879  M00S02507.panel   +++|            IF (.NOT.HAVENAM) THEN
02880  M00S02508.panel   +++|              CALL ERROR('VAR name not specified')
02881  M00S02509.panel   +++|              RETURN
02882  M00S02510.panel   +++|            ENDIF
02883  M00S02511.panel   +++|            IF ((VART(NVAR).EQ.VTN.OR.VART(NVAR).EQ.VTR).AND.
02884  M00S02512.panel   +++|     A          (VARP(NVAR).LT.VP9)) THEN
02885  M00S02513.panel   +++|              CALL ERROR('TYPE/FORMAT mismatch in '//
02886  M00S02514.panel   +++|     A                   'preceding VAR')
02887  M00S02515.panel   +++|              RETURN
02888  M00S02516.panel   +++|            ENDIF
02889  M00S02517.panel   +++|            IF (VARP(NVAR).EQ.0) VARP(NVAR) = VPX
02890  M00S02518.panel   +++|            RETURN
02891  M00S02519.panel   +++|          ENDIF
02892  M00S02520.panel   +++|          NPARM = NPARM + 1
02893  M00S02521.panel   +++|          GOTO (100,200,300,400,500,600,
02894  M00S02522.panel   +++|     A          700,800,900,1000,1100), NPARM
02895  M00S02523.panel   +++|          CALL ERROR('Too many VAR parameters')
02896  M00S02524.panel   +++|          RETURN
02897  M00S02525.panel   +++|        ELSE
02898  M00S02526.panel   +++|          NPARM = 11
02899  M00S02527.panel   +++|          GOTO (100,200,300,400,500,600,
02900  M00S02528.panel   +++|     A          700,800,900,1000,1100), I
02901  M00S02529.panel   +++|          CALL ERR('INTERNAL ERROR: VAR KEYWORD')
02902  M00S02530.panel   +++|          RETURN
02903  M00S02531.panel   +++|        ENDIF
02904  M00S02532.panel   +++|C
02905  M00S02533.panel   +++|C       NAME
02906  M00S02534.panel   +++|C
02907  M00S02535.panel   +++|100     CONTINUE
02908  M00S02536.panel   +++|        IF (HAVENAM) THEN
02909  M00S02537.panel   +++|          CALL ERROR('Two VAR names')
02910  M00S02538.panel   +++|          RETURN
02911  M00S02539.panel   +++|        ENDIF
02912  M00S02540.panel   +++|        IF (SYMTP.NE.'I') THEN
02913  M00S02541.panel   +++|          CALL EXPECT('var name','VAR')
02914  M00S02542.panel   +++|          RETURN
02915  M00S02543.panel   +++|        ELSE
02916  M00S02544.panel   +++|          CALL SETVARN
02917  M00S02545.panel   +++|          IF (FATAL) RETURN
02918  M00S02546.panel   +++|        ENDIF
02919  M00S02547.panel   +++|        HAVENAM = .TRUE.
02920  M00S02548.panel   +++|        GOTO 1
02921  M00S02549.panel   +++|C
02922  M00S02550.panel   +++|C       TYPE
02923  M00S02551.panel   +++|C
02924  M00S02552.panel   +++|200     CONTINUE
02925  M00S02553.panel   +++|        IF (UPSYMEQ('CHAR')) THEN
02926  M00S02554.panel   +++|          VART(NVAR) = VTC
02927  M00S02555.panel   +++|          IF (VARP(NVAR).EQ.0) VARP(NVAR) = VPX
02928  M00S02556.panel   +++|        ELSEIF (UPSYMEQ('INT')) THEN
02929  M00S02557.panel   +++|          VART(NVAR) = VTN
02930  M00S02558.panel   +++|          IF (VARP(NVAR).EQ.0) VARP(NVAR) = VPN
02931  M00S02559.panel   +++|        ELSEIF (UPSYMEQ('REAL')) THEN
02932  M00S02560.panel   +++|          VART(NVAR) = VTR
02933  M00S02561.panel   +++|          IF (VARP(NVAR).EQ.0) VARP(NVAR) = VPE
02934  M00S02562.panel   +++|        ELSE
02935  M00S02563.panel   +++|          CALL EXPECT('CHAR, INT, or REAL','TYPE')
02936  M00S02564.panel   +++|          RETURN
02937  M00S02565.panel   +++|        ENDIF
02938  M00S02566.panel   +++|        GOTO 1
02939  M00S02567.panel   +++|C
02940  M00S02568.panel   +++|C       VALUE
02941  M00S02569.panel   +++|C
02942  M00S02570.panel   +++|300     CONTINUE
02943  M00S02571.panel   +++|        CALL SETVARD
02944  M00S02572.panel   +++|        IF (FATAL) RETURN
02945  M00S02573.panel   +++|        GOTO 1
02946  M00S02574.panel   +++|C
02947  M00S02575.panel   +++|C       FORMAT
02948  M00S02576.panel   +++|C
02949  M00S02577.panel   +++|400     CONTINUE
02950  M00S02578.panel   +++|        CALL CHEKPIC(I)
02951  M00S02579.panel   +++|        IF (I.EQ.0) THEN
Line S02580 Modification History
M01 (Removed by) 243l647
Seq #  *Modification Id* Act 
----------------------------+
02952  M01S02580.243l647 ---|          CALL EXPECT('X, A, 9, N, E, or $','FORMAT')
Line S00090 Modification History
M01 (Added by) 243l647
Seq #  *Modification Id* Act 
----------------------------+
02953  M01S00090.243l647 +++|          CALL EXPECT('X, A, 9, N, E, $, YMD, MDY, or DMY','FORMAT')
02954  M00S02581.panel   +++|          RETURN
02955  M00S02582.panel   +++|        ENDIF
02956  M00S02583.panel   +++|        VARP(NVAR) = I
02957  M00S02584.panel   +++|        GOTO 1
02958  M00S02585.panel   +++|C
02959  M00S02586.panel   +++|C       MATCH
02960  M00S02587.panel   +++|C
02961  M00S02588.panel   +++|500     CONTINUE
02962  M00S02589.panel   +++|        CALL SCANCAS
02963  M00S02590.panel   +++|        IF (FATAL) RETURN
02964  M00S02591.panel   +++|        GOTO 1
02965  M00S02592.panel   +++|C
02966  M00S02593.panel   +++|C       LOGICAL
02967  M00S02594.panel   +++|C
02968  M00S02595.panel   +++|800     CONTINUE
Line S00014 Modification History
M01 (Added by) ns2315
Seq #  *Modification Id* Act 
----------------------------+
02969  M01S00014.ns2315  +++|
02970  M01S00015.ns2315  +++|* RESET DEFAULT LOGICAL ATTRIBUTES FLAG.
02971  M01S00016.ns2315  +++|
02972  M01S00017.ns2315  +++|        DEFLOGA = .FALSE.
02973  M00S02596.panel   +++|        CALL SCANVAT(1)
02974  M00S02597.panel   +++|        IF (FATAL) RETURN
02975  M00S02598.panel   +++|        GOTO 1
02976  M00S02599.panel   +++|C
02977  M00S02600.panel   +++|C       PHYSICAL
02978  M00S02601.panel   +++|C
02979  M00S02602.panel   +++|700     CONTINUE
02980  M00S02603.panel   +++|        CALL SCANVAT(0)
02981  M00S02604.panel   +++|        IF (FATAL) RETURN
02982  M00S02605.panel   +++|        GOTO 1
02983  M00S02606.panel   +++|C
02984  M00S02607.panel   +++|C       RANGE
02985  M00S02608.panel   +++|C
02986  M00S02609.panel   +++|600     CALL SCANRNG
02987  M00S02610.panel   +++|        IF (FATAL) RETURN
02988  M00S02611.panel   +++|        GOTO 1
02989  M00S02612.panel   +++|C
02990  M00S02613.panel   +++|C       ENTRY
02991  M00S02614.panel   +++|C
02992  M00S02615.panel   +++|900     CONTINUE
02993  M00S02616.panel   +++|        CALL SCANMUS
02994  M00S02617.panel   +++|        IF (FATAL) RETURN
02995  M00S02618.panel   +++|        GOTO 1
02996  M00S02619.panel   +++|C
02997  M00S02620.panel   +++|C       IO
02998  M00S02621.panel   +++|C
02999  M00S02622.panel   +++|1000    CONTINUE
Line S02623 Modification History
M01 (Removed by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
03000  M01S02623.v23l617 ---|        CALL NEWVAT
03001  M01S02624.v23l617 ---|        IF (FATAL) RETURN
03002  M01S02625.v23l617 ---|        IF (UPSYMEQ('IN')) THEN
03003  M01S02626.v23l617 ---|          VAIO(NVAR) = 1
03004  M01S02627.v23l617 ---|        ELSEIF (UPSYMEQ('OUT')) THEN
03005  M01S02628.v23l617 ---|          VAIO(NVAR) = 2
03006  M01S02629.v23l617 ---|        ELSE
03007  M01S02630.v23l617 ---|          CALL EXPECT('IN or OUT','IO=')
03008  M01S02631.v23l617 ---|          RETURN
03009  M01S02632.v23l617 ---|        ENDIF
Line S00053 Modification History
M01 (Added by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
03010  M01S00053.v23l617 +++|        IO = 0
03011  M01S00054.v23l617 +++|        IF (.NOT.SYMEQ('(')) THEN
03012  M01S00055.v23l617 +++|          LOOP = .FALSE.
03013  M01S00056.v23l617 +++|          GOTO 1002
03014  M01S00057.v23l617 +++|        ELSE
03015  M01S00058.v23l617 +++|          LOOP = .TRUE.
03016  M01S00059.v23l617 +++|        ENDIF
03017  M01S00060.v23l617 +++|1001    CONTINUE
03018  M01S00061.v23l617 +++|        CALL SCANSYM
03019  M01S00062.v23l617 +++|        IF (FATAL) RETURN
03020  M01S00063.v23l617 +++|        IF (SYMEQ(')')) GOTO 1003
03021  M01S00064.v23l617 +++|1002    CONTINUE
03022  M01S00065.v23l617 +++|        IF (UPSYMEQ('IN')) THEN
03023  M01S00066.v23l617 +++|          IO = IO.OR.1
03024  M01S00067.v23l617 +++|        ELSEIF (UPSYMEQ('OUT')) THEN
03025  M01S00068.v23l617 +++|          IO = IO.OR.2
03026  M01S00069.v23l617 +++|        ELSE
03027  M01S00070.v23l617 +++|          CALL EXPECT('IN or OUT','IO=')
03028  M01S00071.v23l617 +++|          RETURN
03029  M01S00072.v23l617 +++|        ENDIF
03030  M01S00073.v23l617 +++|        IF (LOOP) GOTO 1001
03031  M01S00074.v23l617 +++|1003    CONTINUE
03032  M01S00075.v23l617 +++|        IF (IO.EQ.3.OR.IO.EQ.0) GOTO 1
03033  M01S00076.v23l617 +++|        CALL NEWVAT
03034  M01S00077.v23l617 +++|        IF (FATAL) RETURN
03035  M01S00078.v23l617 +++|        VAIO(NVAR) = IO
03036  M00S02633.panel   +++|        ATIO(NATR) = VAIO(NVAR)
03037  M00S02634.panel   +++|        GOTO 1
03038  M00S02635.panel   +++|C
03039  M00S02636.panel   +++|C         HELP
03040  M00S02637.panel   +++|C
03041  M00S02638.panel   +++|1100    CONTINUE
03042  M00S02639.panel   +++|        IF (SYMTP.NE.'S') THEN
03043  M00S02640.panel   +++|          CALL EXPECT('string','HELP')
03044  M00S02641.panel   +++|          RETURN
03045  M00S02642.panel   +++|        ENDIF
03046  M00S02643.panel   +++|        SAVV = NVAL + 1
Line S02644 Modification History
M01 (Removed by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
03047  M01S02644.v23l617 ---|        SL = MIN(80,SL)
Line S00079 Modification History
M01 (Added by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
03048  M01S00079.v23l617 +++|        SL = MIN(159,SL)
03049  M00S02645.panel   +++|        CALL COPYSYM
03050  M00S02646.panel   +++|        IF (FATAL) RETURN
03051  M00S02647.panel   +++|        VARH(NVAR) = SAVV
03052  M00S02648.panel   +++|        MSGL = MAX(MSGL,SL)
03053  M00S02649.panel   +++|        MSGX = MIN(39,80-MSGL)
03054  M00S02650.panel   +++|        GOTO 1
03055  M00S02651.panel   +++|        END
03056  M00S02652.panel   +++|C-------------------------------------------------------------------
03057  M00S02653.panel   +++|C*      SCANVAT - SCAN VAR ATTRIBUTE
03058  M00S02654.panel   +++|C
03059  M00S02655.panel   +++|C       ENTRY   LOG=1 IF LOGICAL ATTRIBUTES, 0 IF PHYSICAL
03060  M00S02656.panel   +++|C
03061  M00S02657.panel   +++|        SUBROUTINE SCANVAT(LOG)
03062  M00S02658.panel   +++|*CALL   COMFPAN
03063  M00S02659.panel   +++|        INTEGER LOG
03064  M00S02660.panel   +++|        CALL NEWVAT
03065  M00S02661.panel   +++|        IF (FATAL) RETURN
03066  M00S02662.panel   +++|        CALL SCANLPA(LOG)
03067  M00S02663.panel   +++|        END
03068  M00S02664.panel   +++|C-------------------------------------------------------------------
03069  M00S02665.panel   +++|C*      SCANVIO - SCAN VAR IN OR OUT
03070  M00S02666.panel   +++|C
03071  M00S02667.panel   +++|C       ENTRY   IO = 1=IN ONLY, 2=OUT ONLY
03072  M00S02668.panel   +++|C
03073  M00S02669.panel   +++|        SUBROUTINE SCANVIO(IO)
03074  M00S02670.panel   +++|*CALL   COMFPAN
03075  M00S02671.panel   +++|        INTEGER IO
03076  M00S02672.panel   +++|        CALL SCANSYM
03077  M00S02673.panel   +++|        IF (FATAL) RETURN
03078  M00S02674.panel   +++|        IF (UPSYMEQ('ONLY')) THEN
03079  M00S02675.panel   +++|          CALL SCANSYM
03080  M00S02676.panel   +++|          IF (FATAL) RETURN
03081  M00S02677.panel   +++|        ENDIF
03082  M00S02678.panel   +++|        END
03083  M00S02679.panel   +++|C-------------------------------------------------------------------
03084  M00S02680.panel   +++|C*      SCANVKS - SCAN VAR KEYWORDS
03085  M00S02681.panel   +++|C
03086  M00S02682.panel   +++|C       EXIT    I=KEYWORD ORDINAL OR 0 IF NOT
03087  M00S02683.panel   +++|C               CURRENT SYM ADVANCED PAST KEYWORD= IF I.NE.0
03088  M00S02684.panel   +++|C
03089  M00S02685.panel   +++|        SUBROUTINE SCANVKS(I)
03090  M00S02686.panel   +++|*CALL   COMFPAN
03091  M00S02687.panel   +++|        INTEGER I
03092  M00S02688.panel   +++|        I = 0
03093  M00S02689.panel   +++|        IF (.NOT.ZEQNEXT()) RETURN
03094  M00S02690.panel   +++|        IF (UPSYMEQ('NAME').OR.UPSYMEQ('N')) THEN
03095  M00S02691.panel   +++|          I = 1
03096  M00S02692.panel   +++|        ELSEIF (UPSYMEQ('TYPE').OR.UPSYMEQ('T')) THEN
03097  M00S02693.panel   +++|          I = 2
03098  M00S02694.panel   +++|        ELSEIF (UPSYMEQ('VALUE').OR.UPSYMEQ('V')) THEN
03099  M00S02695.panel   +++|          I = 3
03100  M00S02696.panel   +++|        ELSEIF (UPSYMEQ('FORMAT').OR.UPSYMEQ('F')) THEN
03101  M00S02697.panel   +++|          I = 4
03102  M00S02698.panel   +++|        ELSEIF (UPSYMEQ('MATCH').OR.UPSYMEQ('M')) THEN
03103  M00S02699.panel   +++|          I = 5
03104  M00S02700.panel   +++|        ELSEIF (UPSYMEQ('RANGE').OR.UPSYMEQ('R')) THEN
03105  M00S02701.panel   +++|          I = 6
03106  M00S02702.panel   +++|        ELSEIF (UPSYMEQ('PHYSICAL').OR.UPSYMEQ('P')) THEN
03107  M00S02703.panel   +++|          I = 7
03108  M00S02704.panel   +++|        ELSEIF (UPSYMEQ('LOGICAL').OR.UPSYMEQ('L')) THEN
03109  M00S02705.panel   +++|          I = 8
03110  M00S02706.panel   +++|        ELSEIF (UPSYMEQ('ENTRY').OR.UPSYMEQ('E')) THEN
03111  M00S02707.panel   +++|          I = 9
03112  M00S02708.panel   +++|        ELSEIF (UPSYMEQ('IO').OR.UPSYMEQ('I')) THEN
03113  M00S02709.panel   +++|          I = 10
03114  M00S02710.panel   +++|        ELSEIF (UPSYMEQ('HELP').OR.UPSYMEQ('H')) THEN
03115  M00S02711.panel   +++|          I = 11
03116  M00S02712.panel   +++|        ENDIF
03117  M00S02713.panel   +++|        IF (I.EQ.0) THEN
03118  M00S02714.panel   +++|          CALL ERROR('Unknown keyword')
03119  M00S02715.panel   +++|          RETURN
03120  M00S02716.panel   +++|        ELSE
03121  M00S02717.panel   +++|          CALL SKIPTWO
03122  M00S02718.panel   +++|        ENDIF
03123  M00S02719.panel   +++|        END
03124  M00S02720.panel   +++|C-------------------------------------------------------------------
03125  M00S02721.panel   +++|C       SETATR - SET ATTRIBUTE
03126  M00S02722.panel   +++|C
03127  M00S02723.panel   +++|C       ENTRY   LP = 1=LOGICAL, 0=PHYSICAL
Line S02724 Modification History
M01 (Removed by) ns2315
Seq #  *Modification Id* Act 
----------------------------+
03128  M01S02724.ns2315  ---|C               I = 1,2,... PARALLEL USE IN CHEKATR
Line S00018 Modification History
M01 (Added by) ns2315
Seq #  *Modification Id* Act 
----------------------------+
03129  M01S00018.ns2315  +++|C               I = 0,1,2,... PARALLEL USE IN CHEKATR
03130  M00S02725.panel   +++|C
03131  M00S02726.panel   +++|        SUBROUTINE SETATR(LP,I)
03132  M00S02727.panel   +++|*CALL   COMFPAN
03133  M00S02728.panel   +++|        INTEGER LP, I
03134  M00S02729.panel   +++|C       PRINT 56, LP, I
03135  M00S02730.panel   +++|56      FORMAT('SETATR, LP=',I1,' I=',I2)
03136  M00S02731.panel   +++|        ATRLP(NATR) = CHAR(LP + ICHAR('0'))
Line S00019 Modification History
M01 (Added by) ns2315
Seq #  *Modification Id* Act 
----------------------------+
03137  M01S00019.ns2315  +++|        IF (I .EQ. 0) THEN
03138  M01S00020.ns2315  +++|          ATTP(NATR) = I
03139  M01S00021.ns2315  +++|          RETURN
03140  M01S00022.ns2315  +++|        ENDIF
03141  M00S02732.panel   +++|        GOTO (1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17), I
03142  M00S02733.panel   +++|        RETURN
03143  M00S02734.panel   +++|1       CONTINUE
03144  M00S02735.panel   +++|2       CONTINUE
03145  M00S02736.panel   +++|3       CONTINUE
03146  M00S02737.panel   +++|4       CONTINUE
03147  M00S02738.panel   +++|5       CONTINUE
03148  M00S02739.panel   +++|        ATTP(NATR) = I
03149  M00S02740.panel   +++|        RETURN
Line S02741 Modification History
M01 (Removed by) 243l647
Seq #  *Modification Id* Act 
----------------------------+
03150  M01S02741.243l647 ---|6       ATRBL(NATR) = '1'
03151  M01S02742.243l647 ---|        RETURN
03152  M01S02743.243l647 ---|7       ATRIV(NATR) = '1'
03153  M01S02744.243l647 ---|        RETURN
03154  M01S02745.243l647 ---|8       ATRUL(NATR) = '1'
03155  M01S02746.243l647 ---|        RETURN
03156  M01S02747.243l647 ---|9       ATRAI(NATR) = '1'
03157  M01S02748.243l647 ---|        RETURN
03158  M01S02749.243l647 ---|10      CONTINUE
03159  M01S02750.243l647 ---|11      CONTINUE
Line S00091 Modification History
M01 (Added by) 243l647
Seq #  *Modification Id* Act 
----------------------------+
03160  M01S00091.243l647 +++|6       IF (LP.EQ.0) THEN
03161  M01S00092.243l647 +++|          ATRBL(NATR) = '1'
03162  M01S00093.243l647 +++|        ELSE
03163  M01S00094.243l647 +++|          ATTP(NATR) = I
03164  M01S00095.243l647 +++|        ENDIF
03165  M01S00096.243l647 +++|        RETURN
03166  M01S00097.243l647 +++|7       IF (LP.EQ.0) THEN
03167  M01S00098.243l647 +++|          ATRIV(NATR) = '1'
03168  M01S00099.243l647 +++|        ELSE
03169  M01S00100.243l647 +++|          ATTP(NATR) = I
03170  M01S00101.243l647 +++|        ENDIF
03171  M01S00102.243l647 +++|        RETURN
03172  M01S00103.243l647 +++|8       IF (LP.EQ.0) THEN
03173  M01S00104.243l647 +++|          ATRUL(NATR) = '1'
03174  M01S00105.243l647 +++|        ELSE
03175  M01S00106.243l647 +++|          ATTP(NATR) = I
03176  M01S00107.243l647 +++|        ENDIF
03177  M01S00108.243l647 +++|        RETURN
03178  M01S00109.243l647 +++|9       IF (LP.EQ.0) THEN
03179  M01S00110.243l647 +++|          ATRAI(NATR) = '1'
03180  M01S00111.243l647 +++|        ELSE
03181  M01S00112.243l647 +++|          ATTP(NATR) = I
03182  M01S00113.243l647 +++|        ENDIF
03183  M01S00114.243l647 +++|        RETURN
03184  M01S00115.243l647 +++|10      CONTINUE
03185  M01S00116.243l647 +++|11      CONTINUE
03186  M01S00117.243l647 +++|        ATTP(NATR) = I
03187  M01S00118.243l647 +++|        RETURN
03188  M00S02751.panel   +++|12      CONTINUE
03189  M00S02752.panel   +++|13      CONTINUE
03190  M00S02753.panel   +++|14      CONTINUE
03191  M00S02754.panel   +++|15      CONTINUE
03192  M00S02755.panel   +++|16      CONTINUE
03193  M00S02756.panel   +++|17      CONTINUE
Line S02757 Modification History
M01 (Removed by) 243l647
Seq #  *Modification Id* Act 
----------------------------+
03194  M01S02757.243l647 ---|        ATFC(NATR) = I - 10
03195  M00S02758.panel   +++|        RETURN
03196  M00S02759.panel   +++|        END
03197  M00S02760.panel   +++|C-------------------------------------------------------------------
03198  M00S02761.panel   +++|C*      SETVARD - SET VARIABLE DEFAULT VALUE
03199  M00S02762.panel   +++|C
03200  M00S02763.panel   +++|        SUBROUTINE SETVARD
03201  M00S02764.panel   +++|*CALL   COMFPAN
03202  M00S02765.panel   +++|        INTEGER SAVV
03203  M00S02766.panel   +++|        IF ((SYMTP.EQ.'S'.AND.VART(NVAR).EQ.VTC).OR.
03204  M00S02767.panel   +++|     A      (SYMTP.EQ.'N'.AND.VART(NVAR).EQ.VTN).OR.
03205  M00S02768.panel   +++|     B      (SYMTP.EQ.'R'.AND.VART(NVAR).EQ.VTR)) THEN
03206  M00S02769.panel   +++|          IF (SYMTP.EQ.'I') THEN
03207  M00S02770.panel   +++|            CALL EXPECT('constant','=')
03208  M00S02771.panel   +++|            RETURN
03209  M00S02772.panel   +++|          ENDIF
03210  M00S02773.panel   +++|          SAVV = NVAL + 1
03211  M00S02774.panel   +++|          CALL COPYSYM
03212  M00S02775.panel   +++|          IF (FATAL) RETURN
03213  M00S02776.panel   +++|          VARD(NVAR) = SAVV
03214  M00S02777.panel   +++|        ELSE
03215  M00S02778.panel   +++|          CALL ERROR('Value type mismatch')
03216  M00S02779.panel   +++|        ENDIF
03217  M00S02780.panel   +++|        END
03218  M00S02781.panel   +++|C-------------------------------------------------------------------
03219  M00S02782.panel   +++|C*      SETVARN - SET VAR NAME IN ARRAY
03220  M00S02783.panel   +++|C
03221  M00S02784.panel   +++|        SUBROUTINE SETVARN
03222  M00S02785.panel   +++|*CALL   COMFPAN
03223  M00S02786.panel   +++|        CHARACTER*7 NAME
03224  M00S02787.panel   +++|        CHARACTER*40 ES
03225  M00S02788.panel   +++|        CALL NEWVAR
03226  M00S02789.panel   +++|        IF (FATAL) RETURN
03227  M00S02790.panel   +++|        NAME = STRGD(1:MIN(SL,7))
03228  M00S02791.panel   +++|        VARNM(NVAR) = NAME
03229  M00S02792.panel   +++|        I = 1
03230  M00S02793.panel   +++|1       IF (VARNM(I).NE.NAME) THEN
03231  M00S02794.panel   +++|          I = I + 1
03232  M00S02795.panel   +++|          GOTO 1
03233  M00S02796.panel   +++|        ENDIF
03234  M00S02797.panel   +++|        IF (I.NE.NVAR) THEN
03235  M00S02798.panel   +++|          CALL ERROR('VAR declared twice')
03236  M00S02799.panel   +++|          NVAR = NVAR - 1
03237  M00S02800.panel   +++|        ENDIF
03238  M00S02801.panel   +++|        END
03239  M00S02802.panel   +++|C-------------------------------------------------------------------
03240  M00S02803.panel   +++|C*      SKIPHED - SKIP TO HEAD
03241  M00S02804.panel   +++|C
03242  M00S02805.panel   +++|        SUBROUTINE SKIPHED
03243  M00S02806.panel   +++|*CALL   COMFPAN
03244  M00S02807.panel   +++|1       CONTINUE
03245  M00S02808.panel   +++|        CALL CHEKHED(I)
03246  M00S02809.panel   +++|        IF (I.NE.0) RETURN
03247  M00S02810.panel   +++|        CALL SCANSYM
03248  M00S02811.panel   +++|        GOTO 1
03249  M00S02812.panel   +++|        END
03250  M00S02813.panel   +++|C-------------------------------------------------------------------
03251  M00S02814.panel   +++|C*      SKIPTWO - SKIP TWO SYMBOLS
03252  M00S02815.panel   +++|C
03253  M00S02816.panel   +++|        SUBROUTINE SKIPTWO
03254  M00S02817.panel   +++|*CALL   COMFPAN
03255  M00S02818.panel   +++|        CALL SCANSYM
03256  M00S02819.panel   +++|        IF (FATAL) RETURN
03257  M00S02820.panel   +++|        CALL SCANSYM
03258  M00S02821.panel   +++|        END
03259  M00S02822.panel   +++|C-------------------------------------------------------------------
03260  M00S02823.panel   +++|C*      SLEN - STRING LENGTH (INTEGER)
03261  M00S02824.panel   +++|C
03262  M00S02825.panel   +++|      FUNCTION SLEN(S,L)
03263  M00S02826.panel   +++|*CALL   COMFPAN
03264  M00S02827.panel   +++|      INTEGER L
03265  M00S02828.panel   +++|      CHARACTER*(*) S
03266  M00S02829.panel   +++|      CHARACTER*1 C
03267  M00S02830.panel   +++|      I = 1
03268  M00S02831.panel   +++|      J = 0
03269  M00S02832.panel   +++|1     CONTINUE
03270  M00S02833.panel   +++|      C = S(I:I)
03271  M00S02834.panel   +++|      IF (C.EQ.';.OR.C.EQ.';) THEN
03272  M00S02835.panel   +++|        I = I + 1
03273  M00S02836.panel   +++|      ENDIF
03274  M00S02837.panel   +++|      J = J + 1
03275  M00S02838.panel   +++|      I = I + 1
03276  M00S02839.panel   +++|      IF (I.LE.L) GOTO 1
03277  M00S02840.panel   +++|      SLEN = J
03278  M00S02841.panel   +++|      END
03279  M00S02842.panel   +++|C-------------------------------------------------------------------
03280  M00S02843.panel   +++|C*      SPP - SCAN PROGRAM PARAMETERS
03281  M00S02844.panel   +++|C
03282  M00S02845.panel   +++|        SUBROUTINE SPP
03283  M00S02846.panel   +++|*CALL   COMFPAN
Line S02847 Modification History
M01 (Removed by) 243l647
Seq #  *Modification Id* Act 
----------------------------+
03284  M01S02847.243l647 ---|        CHARACTER*7 KEYWORD, VALUE
03285  M01S02848.243l647 ---|        CHARACTER*7 PANEL, LIST, COMPASS
03286  M01S02849.243l647 ---|        PANEL = 'PANEL'
03287  M01S02850.243l647 ---|        LIST = 'OUTPUT'
03288  M01S02851.243l647 ---|        COMPASS = 'COMPILE'
Line S00119 Modification History
M01 (Added by) 243l647
Seq #  *Modification Id* Act 
----------------------------+
03289  M01S00119.243l647 +++|*                            GETPARM KEYWORD PARAMETER
03290  M01S00120.243l647 +++|        CHARACTER*7 KEYWORD
03291  M01S00121.243l647 +++|*                            GETPARM RETURN VALUE
03292  M01S00122.243l647 +++|        CHARACTER*7 VALUE
03293  M01S00123.243l647 +++|*                            FILE NAME OF PANEL
03294  M01S00124.243l647 +++|        CHARACTER*7 PANEL
03295  M01S00125.243l647 +++|*                            LIST FILE NAME
03296  M01S00126.243l647 +++|        CHARACTER*7 LIST
03297  M01S00127.243l647 +++|*                            CAPSULE SOURCE FILE NAME
03298  M01S00128.243l647 +++|        CHARACTER*7 COMPASS
03299  M01S00129.243l647 +++|*                            NULL FILE FLAG
03300  M01S00130.243l647 +++|        LOGICAL  NULLFIL
03301  M01S00131.243l647 +++|        DATA  PANEL   / 'PANEL' /
03302  M01S00132.243l647 +++|        DATA  LIST    / 'OUTPUT' /
03303  M01S00133.243l647 +++|        DATA  COMPASS / 'COMPASS' /
03304  M01S00134.243l647 +++|        DATA  NULLFIL / .FALSE. /
03305  M01S00135.243l647 +++|
03306  M01S00136.243l647 +++|* GET PARAMETERS FROM EXECUTION STATEMENT.
03307  M01S00137.243l647 +++|
03308  M00S02852.panel   +++|1       CALL GETPARM(KEYWORD,VALUE,I)
03309  M00S02853.panel   +++|        IF (I.EQ.-1) THEN
03310  M00S02854.panel   +++|          OPEN(1,ERR=10,FILE=PANEL,STATUS='OLD',RECL=266)
Line S02855 Modification History
M01 (Removed by) 243l647
Seq #  *Modification Id* Act 
----------------------------+
03311  M01S02855.243l647 ---|          OPEN(2,ERR=20,FILE=LIST,STATUS='UNKNOWN',RECL=266)
Line S00138 Modification History
M01 (Added by) 243l647
Seq #  *Modification Id* Act 
----------------------------+
03312  M01S00138.243l647 +++|          IF (.NOT.NULLFIL) THEN
03313  M01S00139.243l647 +++|            OPEN(2,ERR=20,FILE=LIST,STATUS='UNKNOWN',RECL=266)
03314  M01S00140.243l647 +++|          ELSE
03315  M01S00141.243l647 +++|            OPEN(2,ERR=20,STATUS='SCRATCH',RECL=266)
03316  M01S00142.243l647 +++|          ENDIF
03317  M00S02856.panel   +++|          OPEN(3,ERR=30,FILE=COMPASS,STATUS='UNKNOWN',RECL=80)
03318  M00S02857.panel   +++|          REWIND 1
03319  M00S02858.panel   +++|          PNAME = PANEL
03320  M00S02859.panel   +++|          REWIND 2
03321  M00S02860.panel   +++|          REWIND 3
03322  M00S02861.panel   +++|          RETURN
03323  M00S02862.panel   +++|10        CALL QUITS('CAN''T OPEN FILE '//PANEL)
03324  M00S02863.panel   +++|20        CALL QUITS('CAN''T OPEN FILE '//LIST)
03325  M00S02864.panel   +++|30        CALL QUITS('CAN''T OPEN FILE '//COMPASS)
03326  M00S02865.panel   +++|        ENDIF
03327  M00S02866.panel   +++|        IF (KEYWORD.EQ.'I') THEN
03328  M00S02867.panel   +++|          IF (I.EQ.0) PANEL = VALUE
03329  M00S02868.panel   +++|          PNAME = PANEL
03330  M00S02869.panel   +++|          GOTO 1
03331  M00S02870.panel   +++|        ELSE IF (KEYWORD.EQ.'L') THEN
Line S02871 Modification History
M01 (Removed by) 243l647
Seq #  *Modification Id* Act 
----------------------------+
03332  M01S02871.243l647 ---|          IF (I.EQ.0) LIST = VALUE
Line S00143 Modification History
M01 (Added by) 243l647
Seq #  *Modification Id* Act 
----------------------------+
03333  M01S00143.243l647 +++|          IF (I.EQ.0) THEN
03334  M01S00144.243l647 +++|            IF (VALUE .EQ. '0') THEN
03335  M01S00145.243l647 +++|              NULLFIL = .TRUE.
03336  M01S00146.243l647 +++|            ELSE
03337  M01S00147.243l647 +++|              LIST = VALUE
03338  M01S00148.243l647 +++|            ENDIF
03339  M01S00149.243l647 +++|          ENDIF
03340  M00S02872.panel   +++|          GOTO 1
03341  M00S02873.panel   +++|        ELSE IF (KEYWORD.EQ.'C') THEN
03342  M00S02874.panel   +++|          IF (I.EQ.0) COMPASS = VALUE
03343  M00S02875.panel   +++|          GOTO 1
03344  M00S02876.panel   +++|        ELSE
03345  M00S02877.panel   +++|          CALL QUITS('UNRECOGNIZED PARAMETER '//KEYWORD)
03346  M00S02878.panel   +++|        ENDIF
03347  M00S02879.panel   +++|        END
03348  M00S02880.panel   +++|C-------------------------------------------------------------------
03349  M00S02881.panel   +++|C*      SYMEQ - SYMBOL EQUAL TO ARGUMENT
03350  M00S02882.panel   +++|C
03351  M00S02883.panel   +++|C       ENTRY
03352  M00S02884.panel   +++|C               S = SINGLE DISPLAY CODE CHAR TO COMPARE TO SYMBOL
03353  M00S02885.panel   +++|C
03354  M00S02886.panel   +++|        LOGICAL FUNCTION SYMEQ(S)
03355  M00S02887.panel   +++|*CALL   COMFPAN
03356  M00S02888.panel   +++|        CHARACTER*(1) S
03357  M00S02889.panel   +++|        SYMEQ = X612TA(ICHAR(S)).EQ.IMAG(SI,1).AND.SL.EQ.1
03358  M00S02890.panel   +++|        END
03359  M00S02891.panel   +++|C-------------------------------------------------------------------
03360  M00S02892.panel   +++|C*      UPSYMEQ - .TRUE. IFF UPPER CASE OF CURRENT SYM .EQ. S
03361  M00S02893.panel   +++|C
03362  M00S02894.panel   +++|        LOGICAL FUNCTION UPSYMEQ(S)
Line S02895 Modification History
M01 (Removed by) ns2473
Seq #  *Modification Id* Act 
----------------------------+
03363  M01S02895.ns2473  ---|*CALL COMFPAN
Line S00012 Modification History
M01 (Added by) ns2473
Seq #  *Modification Id* Act 
----------------------------+
03364  M01S00012.ns2473  +++|*CALL   COMFPAN
03365  M00S02896.panel   +++|        CHARACTER*(*) S
03366  M00S02897.panel   +++|        J = 0
03367  M00S02898.panel   +++|        UPSYMEQ = .FALSE.
03368  M00S02899.panel   +++|        IF (SYMTP.EQ.'I'.AND.LEN(S).EQ.SL.AND.S.EQ.STRGD(1:SL))
03369  M00S02900.panel   +++|     A      UPSYMEQ = .TRUE.
03370  M00S02901.panel   +++|        END
03371  M00S02902.panel   +++|C-------------------------------------------------------------------
03372  M00S02903.panel   +++|C*      VFDN - VFD NUMBER
03373  M00S02904.panel   +++|C
03374  M00S02905.panel   +++|        SUBROUTINE VFDN(S,N)
03375  M00S02906.panel   +++|*CALL   COMFPAN
03376  M00S02907.panel   +++|        CHARACTER*(*) S
03377  M00S02908.panel   +++|        INTEGER N
03378  M00S02909.panel   +++|        IF (N.LT.0) THEN
03379  M00S02910.panel   +++|          WRITE(3,200) S, -N
03380  M00S02911.panel   +++|200       FORMAT(T10,'VFD',T16,A,'-',I4.4)
03381  M00S02912.panel   +++|        ELSE
03382  M00S02913.panel   +++|          WRITE(3,100) S, N
03383  M00S02914.panel   +++|100       FORMAT(T10,'VFD',T16,A, I4.4)
03384  M00S02915.panel   +++|        ENDIF
03385  M00S02916.panel   +++|        END
03386  M00S02917.panel   +++|C-------------------------------------------------------------------
03387  M00S02918.panel   +++|C*      VFDIF - VFD IF B TRUE
03388  M00S02919.panel   +++|C
03389  M00S02920.panel   +++|      SUBROUTINE VFDIF(S1,B,S2)
03390  M00S02921.panel   +++|*CALL   COMFPAN
03391  M00S02922.panel   +++|      CHARACTER*(*) S1,S2
03392  M00S02923.panel   +++|      CHARACTER*40 S
03393  M00S02924.panel   +++|      IF (B.NE.0) THEN
03394  M00S02925.panel   +++|        S = S1//S2
03395  M00S02926.panel   +++|        CALL VFD(S)
03396  M00S02927.panel   +++|      ELSE
03397  M00S02928.panel   +++|        S = S1//'0'
03398  M00S02929.panel   +++|        CALL VFD(S)
03399  M00S02930.panel   +++|      ENDIF
03400  M00S02931.panel   +++|      END
03401  M00S02932.panel   +++|C-------------------------------------------------------------------
03402  M00S02933.panel   +++|C*      VFD - VFD STRING
03403  M00S02934.panel   +++|C
03404  M00S02935.panel   +++|        SUBROUTINE VFD(S)
03405  M00S02936.panel   +++|*CALL   COMFPAN
03406  M00S02937.panel   +++|        CHARACTER*(*) S
03407  M00S02938.panel   +++|        WRITE(3,100) S
03408  M00S02939.panel   +++|100     FORMAT(T10,'VFD',T16,A)
03409  M00S02940.panel   +++|        END
03410  M00S02941.panel   +++|C-------------------------------------------------------------------
03411  M00S02942.panel   +++|C*      VFDO    - VFD OCTAL WORD
03412  M00S02943.panel   +++|C
03413  M00S02944.panel   +++|        SUBROUTINE VFDO(S,W)
03414  M00S02945.panel   +++|*CALL   COMFPAN
03415  M00S02946.panel   +++|        CHARACTER*(*) S
03416  M00S02947.panel   +++|        INTEGER W
03417  M00S02948.panel   +++|        WRITE(3,100) S, W
03418  M00S02949.panel   +++|100     FORMAT(T10,'VFD',T16,A,O20,'B')
03419  M00S02950.panel   +++|        END
03420  M00S02951.panel   +++|C-------------------------------------------------------------------
03421  M00S02952.panel   +++|C*      VFDO2 - VFD INTEGER AS OCTAL 2
03422  M00S02953.panel   +++|C
03423  M00S02954.panel   +++|        SUBROUTINE VFDO2(S,I)
03424  M00S02955.panel   +++|*CALL   COMFPAN
03425  M00S02956.panel   +++|        CHARACTER*(*) S
03426  M00S02957.panel   +++|        INTEGER I
03427  M00S02958.panel   +++|        WRITE(3,100) S, I
03428  M00S02959.panel   +++|100     FORMAT(T10,'VFD',T16,A,O2)
03429  M00S02960.panel   +++|        END
03430  M00S02961.panel   +++|C-------------------------------------------------------------------
03431  M00S02962.panel   +++|C*      VFDB - VFD LOGICAL (1 0R 0)
03432  M00S02963.panel   +++|C
03433  M00S02964.panel   +++|        SUBROUTINE VFDB(B)
03434  M00S02965.panel   +++|*CALL   COMFPAN
03435  M00S02966.panel   +++|        INTEGER B
03436  M00S02967.panel   +++|        IF (B.NE.0) THEN
03437  M00S02968.panel   +++|          CALL VFD('1/1')
03438  M00S02969.panel   +++|        ELSE
03439  M00S02970.panel   +++|          CALL VFD('1/0')
03440  M00S02971.panel   +++|        ENDIF
03441  M00S02972.panel   +++|        END
03442  M00S02973.panel   +++|C*      XLINE - XLATE LINE FROM 6/12 TO ASCII
03443  M00S02974.panel   +++|C
03444  M00S02975.panel   +++|        SUBROUTINE XLINE(LNO)
03445  M00S02976.panel   +++|*CALL   COMFPAN
03446  M00S02977.panel   +++|        INTEGER LNO
03447  M00S02978.panel   +++|        N = 0
Line S02979 Modification History
M01 (Removed by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
03448  M01S02979.v23l617 ---|        DO 200 I = 1,132
Line S00080 Modification History
M01 (Added by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
03449  M01S00080.v23l617 +++|        DO 200 I = 1,MCOL
03450  M00S02980.panel   +++|          N = N + 1
03451  M00S02981.panel   +++|          J = 0
03452  M00S02982.panel   +++|          IF (LINE(N:N).EQ.';) THEN
03453  M00S02983.panel   +++|            J = Z"40"
03454  M00S02984.panel   +++|            N = N + 1
03455  M00S02985.panel   +++|          ELSEIF (LINE(N:N).EQ.';) THEN
03456  M00S02986.panel   +++|            J = Z"80"
03457  M00S02987.panel   +++|            N = N + 1
03458  M00S02988.panel   +++|          ENDIF
03459  M00S02989.panel   +++|          IMAG(I,LNO) = X612TA(J + ICHAR(LINE(N:N)))
03460  M00S02990.panel   +++|200     CONTINUE
Line S02991 Modification History
M01 (Removed by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
03461  M01S02991.v23l617 ---|        IMAG(133,LNO) = 0
Line S00081 Modification History
M01 (Added by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
03462  M01S00081.v23l617 +++|        IMAG(MCOL+1,LNO) = 0
03463  M00S02992.panel   +++|        END
03464  M00S02993.panel   +++|C-------------------------------------------------------------------
03465  M00S02994.panel   +++|C*      ZEQNEXT - TRUE IF = NEXT CHARACTER ON SAME LINE
03466  M00S02995.panel   +++|C
03467  M00S02996.panel   +++|        LOGICAL FUNCTION ZEQNEXT()
03468  M00S02997.panel   +++|*CALL   COMFPAN
03469  M00S02998.panel   +++|        J = SJ
03470  M00S02999.panel   +++|1       IF (IMAG(J,1).EQ.ZSP) THEN
Line S03000 Modification History
M01 (Removed by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
03471  M01S03000.v23l617 ---|          IF (J.LT.133) THEN
Line S00082 Modification History
M01 (Added by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
03472  M01S00082.v23l617 +++|          IF (J.LE.MCOL) THEN
03473  M00S03001.panel   +++|            J = J + 1
03474  M00S03002.panel   +++|            GOTO 1
03475  M00S03003.panel   +++|          ENDIF
03476  M00S03004.panel   +++|        ENDIF
03477  M00S03005.panel   +++|        ZEQNEXT = IMAG(J,1).EQ.ZEQ
03478  M00S03006.panel   +++|        END
cdc/nos2.source/opl.opl871/deck/panel.001.txt ยท Last modified: (external edit)