SUBROUTINE AREADF INTEGER RCOUNT INTEGER RTYPE INTEGER RSTYPE INTEGER RTMAX INTEGER RSZMAX INTEGER RECORD (41) INTEGER RSIZE INTEGER RSIZES (20) INTEGER ICLP02 COMMON /RECORD/ RCOUNT COMMON /RECORD/ RTYPE COMMON /RECORD/ RSTYPE COMMON /RECORD/ RTMAX COMMON /RECORD/ RSZMAX COMMON /RECORD/ RECORD COMMON /RECORD/ RSIZE COMMON /RECORD/ RSIZES COMMON /RECORD/ ICLP02 LOGICAL MPFLAG LOGICAL OVMODE LOGICAL LBMODE LOGICAL LOADRB LOGICAL SFLAG INTEGER VERS INTEGER LOADAD INTEGER ZLOC, ZSTR, ZMAX, ZLIMIT INTEGER CLOC, CSTR, CMAX, CLIMIT INTEGER NLOC, NSTR, NMAX, NLIMIT INTEGER DLOC, DSTR, DMAX, DLIMIT INTEGER OLOC, OMAX, OSET INTEGER START INTEGER MODNLX INTEGER CKSUM INTEGER KEY INTEGER ICLP05 COMMON /LDATAX/ MPFLAG COMMON /LDATAX/ OVMODE COMMON /LDATAX/ LBMODE COMMON /LDATAX/ LOADRB COMMON /LDATAX/ SFLAG COMMON /LDATAX/ VERS COMMON /LDATAX/ LOADAD COMMON /LDATAX/ ZLOC, ZSTR, ZMAX, ZLIMIT COMMON /LDATAX/ CLOC, CSTR, CMAX, CLIMIT COMMON /LDATAX/ NLOC, NSTR, NMAX, NLIMIT COMMON /LDATAX/ DLOC, DSTR, DMAX, DLIMIT COMMON /LDATAX/ OLOC, OMAX, OSET COMMON /LDATAX/ START COMMON /LDATAX/ MODNLX COMMON /LDATAX/ CKSUM COMMON /LDATAX/ KEY COMMON /LDATAX/ ICLP05 INTEGER NSIZE, NAME(16), NTITLE INTEGER NFLAGS (512) INTEGER NADDRS (512) INTEGER NPOSIT (512) INTEGER NDATA (512) INTEGER NTEXTX (512) INTEGER NTEXT (1000) INTEGER NLX, NLSTRT, NLSTOP INTEGER TXSTRT, TXSTOP INTEGER NTXBTS INTEGER USEBIT, COMBIT, OVLBIT, EPTBIT INTEGER LDMBIT, MODBIT, MLTBIT, RLSBIT INTEGER GDFBIT, TYPBTS INTEGER ATYPE INTEGER ICLP07 LOGICAL OLDNAM COMMON /NTABLE/ NSIZE, NAME, NTITLE COMMON /NTABLE/ NFLAGS, NADDRS, NPOSIT, NDATA, NTEXTX COMMON /NTABLE/ NTEXT COMMON /NTABLE/ NLX, NLSTRT, NLSTOP COMMON /NTABLE/ TXSTRT, TXSTOP COMMON /NTABLE/ NTXBTS COMMON /NTABLE/ USEBIT, COMBIT, OVLBIT, EPTBIT COMMON /NTABLE/ LDMBIT, MODBIT, MLTBIT, RLSBIT COMMON /NTABLE/ GDFBIT, TYPBTS COMMON /NTABLE/ ATYPE COMMON /NTABLE/ ICLP07 COMMON /NTABLE/ OLDNAM INTEGER I INTEGER ADDR IF (.NOT. ((RSTYPE.LT.0).OR.(RSTYPE.GT.4)))GO TO 13000 CALL ERROR (4) GO TO 13001 13000 CONTINUE IF (.NOT. (IAND(NFLAGS(NLX),RLSBIT).NE.0))GO TO 13002 NFLAGS(NLX) = IOR (NFLAGS(NLX),MLTBIT) RETURN 13002 CONTINUE I = RSTYPE + 1 GOTO (100,200,300,400,500) I 100 ADDR = 0 GOTO 1000 200 ADDR = NLOC CALL UPDATE (NLOC, RECORD(3), NMAX) GOTO 1000 300 ADDR = DLOC CALL UPDATE (DLOC, RECORD(3), NMAX) GOTO 1000 400 ADDR = ZLOC CALL UPDATE (ZLOC, RECORD(3), ZMAX) GOTO 1000 500 ADDR = CLOC CALL UPDATE (CLOC, RECORD(3), CMAX) 1000 CONTINUE NADDRS(NLX) = ADDR NDATA (NLX) = RECORD(3) NFLAGS (NLX) = IOR (NFLAGS(NLX), RLSBIT) NFLAGS(NLX) = NFLAGS(NLX) + ISHFT (RSTYPE, 13) 13001 CONTINUE RETURN END