Google
 

Trailing-Edge - PDP-10 Archives - BB-L014E-BM - autopatch/ftn206.ctl
There are no other files named ftn206.ctl in the archive.
;
;   FTN206.CTL -- Patch and rebuild FORTRAN-RTS-20-V6
;   Version 1(X)
;	October 25, 1982  / HAH
;	November 30, 1982 / TGS
 
;
;                    COPYRIGHT (c) 1982,1983 BY
;	    Digital Equipment Corporation, Maynard, MA.
;
;   This software is furnished under a license and may be  used
;   and  copied  only  in  accordance  with  the  terms of such
;   license and with  the  inclusion  of  the  above  copyright
;   notice.   This software or any other copies thereof may not
;   be provided  or  otherwise	made  available  to  any  other
;   person.   No  title  to  and  ownership  of the software is
;   hereby transferred.
;
;   The information in	this  software	is  subject  to  change
;   without  notice and should not be construed as a commitment
;   by Digital Equipment Corporation.
;
;   Digital  assumes  no  responsibility   for	 the   use   or
;   reliability  of  its  software  on	equipment  which is not
;   supplied by Digital.
;

;
;   This .CTL  file  applies the  patches  to  the  modules  of
;   FORTRAN-20-V6 and rebuilds FORLIB.REL, the Fortran Compiler,
;   FOROT6.EXE, and FORDDT.REL
;
;   For this .CTL file to run, the connected directory must  be
;   the patching directory (Logical name PAT:).
;
;   NOTE: If the flag-file FTNDBM.FLG is present on PAT:,  this
;   .CTL file will build FORTRAN-20 with DBMS.
;
;   With the exceptions noted below, this .CTL file is expected
;   to run without errors.  The exceptions are expected  errors
;   which can be ignored.
;

START::

@PEPB
*INITIALIZE FORTRAN-20-V6
*EXIT

;
;	Delete any sources that may be left in PAT:
;

@DELETE PAT:BLIO.BLI,PAT:BUILD.BLI,PAT:DEFLT.BLI,PAT:ERROR0.BLI
@DELETE PAT:ERRTB3.MAC,PAT:F72BNF.SYN,PAT:FMTLEX.BLI,PAT:FRMBNF.SYN
@DELETE PAT:LEFT72.BLI,PAT:LEFTFM.BLI,PAT:NUMIO1.BLI,PAT:OUTZ.BLI
@DELETE PAT:QTAB1.MAC,PAT:SCAN0.BLI,PAT:SCNR.BLI,PAT:TBL.BLI
@DELETE PAT:TRACE1.BLI,PAT:ACT0.BLI,PAT:ACT1.BLI,PAT:ALCBLO.BLI
@DELETE PAT:ARRXPN.BLI,PAT:ASHELP.BLI,PAT:CANNON.BLI,PAT:CGDO.BLI
@DELETE PAT:CGEXPR.BLI,PAT:CGSTMN.BLI,PAT:CMPBLO.BLI,PAT:CMPLEX.BLI
@DELETE PAT:CNSTCM.MAC,PAT:CODETA.BLI,PAT:COMMAN.MAC,PAT:COMSUB.BLI
@DELETE PAT:DATAST.BLI,PAT:DEBUG.BLI,PAT:DEFPT.BLI,PAT:DOALC.BLI
@DELETE PAT:DOXPN.BLI,PAT:DRIVER.BLI,PAT:ERR3.MAC,PAT:ERROUT.BLI
@DELETE PAT:EXOSUP.MAC,PAT:EXPRES.BLI,PAT:FAZ1.BLI,PAT:FIRST.BLI
@DELETE PAT:FLTGEN.MAC,PAT:FORMAT.BLI,PAT:GCMNSB.BLI,PAT:GFOPDF.MAC
@DELETE PAT:GLOBAL.BLI,PAT:GNRCFN.BLI,PAT:GOPT2.BLI,PAT:GOPTIM.BLI
@DELETE PAT:GRAPH.BLI,PAT:INOUT.BLI,PAT:INPT.BLI,PAT:IOFLG.BLI
@DELETE PAT:IOPT.BLI,PAT:JOBD.MAC,PAT:LEXAID.BLI,PAT:LEXICA.BLI
@DELETE PAT:LEXNAM.BLI,PAT:LEXSUP.BLI,PAT:LISTNG.BLI,PAT:LISTOU.BLI
@DELETE PAT:MAIN.BLI,PAT:MEMCMP.BLI,PAT:MOVA.BLI,PAT:OPGNTA.MAC
@DELETE PAT:OPTAB.BLI,PAT:OPTMAC.BLI,PAT:OUTMOD.BLI,PAT:P2S1.BLI
@DELETE PAT:P2S2.BLI,PAT:P3R.BLI,PAT:PEEPOP.BLI,PAT:PH2S.BLI
@DELETE PAT:PH3G.BLI,PAT:PHA2.BLI,PAT:PHA3.BLI,PAT:PNROPT.BLI
@DELETE PAT:REGAL2.BLI,PAT:REGUTL.BLI,PAT:RELBUF.BLI,PAT:REQREL.BLI
@DELETE PAT:REVHST.MAC,PAT:SKSTMN.BLI,PAT:SRCA.BLI,PAT:STA0.BLI
@DELETE PAT:STA1.BLI,PAT:STA2.BLI,PAT:STA3.BLI,PAT:STREGA.BLI
@DELETE PAT:TABLES.BLI,PAT:TSTR.BLI,PAT:UNEND.BLI,PAT:UTIL.BLI
@DELETE PAT:VER5.BLI,PAT:VLTPPR.BLI,PAT:FORDDT.MAC,PAT:FORCDX.MAC
@DELETE PAT:FORCNV.MAC,PAT:FORCPX.MAC,PAT:FORDBL.MAC,PAT:FORDBM.MAC
@DELETE PAT:FORDUM.MAC,PAT:FOREND.MAC,PAT:FORERR.MAC,PAT:FORFMT.MAC
@DELETE PAT:FORHAK.MAC,PAT:FORINI.MAC,PAT:FORIO.MAC,PAT:FORMEM.MAC
@DELETE PAT:FORMSC.MAC,PAT:FOROP.MAC,PAT:FOROPN.MAC,PAT:FOROTS.MAC
@DELETE PAT:FORPL1.FOR,PAT:FORPL2.MAC,PAT:FORPRM.MAC,PAT:FORPSE.MAC
@DELETE PAT:FORSNG.MAC,PAT:FORSRT.MAC,PAT:FORTRP.MAC,PAT:FORXIT.MAC

;
;	Apply patches to the source modules
;


@R ASL:UPDATE
*@PAT:FTN206.SUP
@EXPUNGE PAT:

@DEFINE UNV: ASL:
@DEFINE DSK: ASL:

BUILC::

;	FIRST BUILD THE SYNTAX TABLE BUILDERS AND SYNTAX TABLES
;	COMPILE AND LOAD THE TABLE BUILDING PROGRAM.

@RU BLIS10
*BUILD=BUILD.BLI
*^C

;	COMPILE ALL I/O UTILITIES.

@RU MACRO
*ERRTB3=ERRTB3.MAC
*QTAB1=QTAB1.MAC
*^Z

@RU BLIS10
*BLIO=BLIO.BLI
*DEFLT=DEFLT.BLI
*ERROR0=ERROR0.BLI
*NUMIO1=NUMIO1.BLI
*OUTZ=OUTZ.BLI
*SCAN0=SCAN0.BLI
*SCNR=SCNR.BLI
*TBL=TBL.BLI
*TRACE1=TRACE1.BLI
*^C

BLDCK::

;	LOAD THE BUILDER WITH I/O UTILITIES AND EXECUTE

@TYPE ASL:BLD.CMD

@RU LINK
*@ASL:BLD.CMD
@SAVE BUILD

;	BUILD STATEMENT SYNTAX TABLES
;	  BUILD REQUIRES _ NOT =

@RU BUILD
*META72.BLI,F72BNF.BLI_F72BNF.SYN
*0
*N

;	BUILD FORMAT SYNTAX TABLES
;	  BUILD REQUIRES _ NOT =

@RU BUILD
*METAFM.BLI,FRMBNF.BLI_FRMBNF.SYN
*0
*N

;	DO THE COMPILATIONS FOR THE LOOK AHEAD TABLE BUILDERS.

@RU BLIS10
*LEFT72=LEFT72.BLI
*^C

;	THE UNDECLARED IDENTIFIER ERROR "ACTIONNAME" FROM LEFTFM CAN BE IGNORED
;	BLIS10 WILL GENERATE A WARNING

@RU BLIS10
*LEFTFM=LEFTFM.BLI
*^C

PKLOD::

;	NOW LOAD, SAVE, AND EXECUTE THE GENERAL SYNTAX LOOK AHEAD BUILDER
;	THE 13 UNDEFINED GLOBALS IN LEFT72 LOADING CAN BE IGNORED
;		FUNCTI	EXPRES	TOQUOT	TYPEID	EXPRLI	PNAMSE
;		LABELS	RECORD	IMPLIC	SLASHW	NOLABE	SUBLOC
;		ASTERT

@TYPE ASL:LEFT72.CMD

@NOERROR
@RU LINK
*@ASL:LEFT72.CMD
@ERROR
@SAVE LEFT72

@RU LEFT72
*3=LOOK72.BLI
*0

;	LOAD, SAVE, AND EXECUTE THE FORMAT LOOK AHEAD TABLE BUILDER
;	THE 1 UNDEFINED GLOBAL IN LOADING LEFTFM CAN BE IGNORED
;		ACTION

@TYPE ASL:LEFTFM.CMD

@NOERROR
@RU LINK
*@ASL:LEFTFM.CMD
@ERROR
@SAVE LEFTFM

@RU LEFTFM
*3=LOOKFM.BLI
*0

P0BEG::

;	**********	PHASE 0		**********


;	MAKE THE COMPILATION AND ASSEMBLY SWITCH DEFINITION FILES
;	  TO GENERATE THE COMPILER FOR TOPS-20, SINGLE SEGMENT

@COPY TTY: DBUGIT.REQ
@BIND DBUGIT=0;			!  DEBUGGING CODE NOT IN PHASE 1
@^Z

@COPY TTY: FT1SEG.REQ
@GLOBAL BIND FT1SEG=1;		! SINGLE SEGMENT
@^Z

@COPY TTY: FTTENX.REQ
@GLOBAL BIND FTTENEX=1;		! TOPS-20
@^Z

@COPY TTY: FTTENX.MAC
@UNIVERSAL FTTENX
@	.DIRECTIVE .NOBIN
@	FTTENX==1		; TOPS-20
@	END
@^Z


;	START THE COMPILES

@RU MACRO
*FTTENX=FTTENX.MAC
*GFOPDF=GFOPDF.MAC
*^Z

@RU MACRO
*COMMAN.20=COMMAN.MAC
*ERR3=ERR3.MAC
*EXOSUP=EXOSUP.MAC
*JOBD=JOBD.MAC
*REVHST=REVHST.MAC
*^Z

@RU BLIS10
*GLOBAL=GLOBAL.BLI
*INOUT.20=INOUT.BLI
*ONESEG.20=MAIN.BLI
*UNEND=UNEND.BLI
*^C

P1BEG::

;	**********	PHASE 1		**********


@RU MACRO
*CNSTCM=CNSTCM.MAC
*FLTGEN=FLTGEN.MAC
*^Z

@RU BLIS10
*ARRXPN=ARRXPN.BLI
*DOXPN=DOXPN.BLI
*ERROUT=ERROUT.BLI
*EXPRES=EXPRES.BLI
*FAZ1=FAZ1.BLI
*GNRCFN=GNRCFN.BLI
*SRCA=SRCA.BLI
*VLTPPR=VLTPPR.BLI
*^C

FORMC::

@RU BLIS10
*ACT0=ACT0.BLI
*ACT1=ACT1.BLI
*CODETA=CODETA.BLI
*DRIVER=DRIVER.BLI
*FORMAT=FORMAT.BLI
*LEXICA=LEXICA.BLI
*LEXSUP=LEXSUP.BLI
*LISTNG.20=LISTNG.BLI
*STA0=STA0.BLI
*STA1=STA1.BLI
*STA2.20=STA2.BLI
*STA3=STA3.BLI
*^C


P2SBE::

;	**********	PHASE 2S	**********

@RU BLIS10
*GOPT2=GOPT2.BLI
*INPT=INPT.BLI
*MEMCMP=MEMCMP.BLI
*P2S1=P2S1.BLI
*SKSTMN=SKSTMN.BLI
*^C

P2S2C::

@RU BLIS10
*CANNON=CANNON.BLI
*COMSUB=COMSUB.BLI
*GOPTIM=GOPTIM.BLI
*P2S2=P2S2.BLI
*PH2S=PH2S.BLI
*UTIL=UTIL.BLI
*^C

P2BEG::

;	**********	PHASE 2		**********

@RU BLIS10
*DEFPT=DEFPT.BLI
*GCMNSB=GCMNSB.BLI
*GRAPH=GRAPH.BLI
*IOPT=IOPT.BLI
*MOVA=MOVA.BLI
*PHA2=PHA2.BLI
*PNROPT=PNROPT.BLI
*TSTR=TSTR.BLI
*VER5=VER5.BLI
*^C

P3GBE::

;	**********	PHASE 3G	**********

@RU BLIS10
*ALCBLO=ALCBLO.BLI
*CMPBLO=CMPBLO.BLI
*CMPLEX=CMPLEX.BLI
*DATAST=DATAST.BLI
*DOALC=DOALC.BLI
*OUTMOD=OUTMOD.BLI
*PH3G=PH3G.BLI
*REGAL2=REGAL2.BLI
*REGUTL=REGUTL.BLI
*RELBUF=RELBUF.BLI
*STREGA=STREGA.BLI
*^C

P3RBE::

;	**********	PHASE 3R	**********

@RU BLIS10
*P3R=P3R.BLI
*^C

P3BEG::

;	**********	PHASE 3		**********

@RU MACRO
*OPGNTA=OPGNTA.MAC
*^Z

@RU BLIS10
*CGDO=CGDO.BLI
*CGEXPR=CGEXPR.BLI
*CGSTMN=CGSTMN.BLI
*DEBUG=DEBUG.BLI
*LISTOU=LISTOU.BLI
*OPTAB=OPTAB.BLI
*PEEPOP=PEEPOP.BLI
*PHA3=PHA3.BLI
*^C

;	**********	ALL BUILDING PHASES COMPLETE	**********

PSNGL::

;	MAKE THE SINGLE SEGMENT TOPS-20 COMPILER

@TYPE ASL:ALL20.CMD

@RU LINK
*@ASL:ALL20.CMD
  
@INFORMATION VERSION
@INFORMATION MEMORY
@SAVE FORTRA

DIR1::

;	TAKE DIRECTORIES OF NON PERTINENT OUTPUT FILES, AND DELETE SAME
;	CHECK DISK USAGE BEFORE

@INFORMATION DISK-USAGE DSK:

@VDIRECTORY FORTRA.MAP
@VDIRECTORY ACT0.REL, ACT1.REL, ALCBLO.REL, ARRXPN.REL, BLIO.REL
@VDIRECTORY BUILD.EXE, BUILD.REL, CANNON.REL, CGDO.REL, CGEXPR.REL
@VDIRECTORY CGSTMN.REL, CMPBLO.REL, CMPLEX.REL, CNSTCM.REL, CODETA.REL
@VDIRECTORY COMMAN.20, COMSUB.REL, DATAST.REL, DBUGIT.REQ, DEBUG.REL
@VDIRECTORY DEFLT.REL, DEFPT.REL, DOALC.REL, DOXPN.REL, DRIVER.REL
@VDIRECTORY ERR3.REL, ERROR0.REL, ERROUT.REL, ERRTB3.REL, EXOSUP.REL
@VDIRECTORY EXPRES.REL, F72BNF.BLI, FAZ1.REL, FLTGEN.REL, FORMAT.REL
@VDIRECTORY FRMBNF.BLI, FT1SEG.REQ, FTTENX.MAC, FTTENX.REQ, FTTENX.UNV
@VDIRECTORY GCMNSB.REL, GFOPDF.UNV, GLOBAL.REL, GNRCFN.REL, GOPT2.REL
@VDIRECTORY GOPTIM.REL, GRAPH.REL, INOUT.20, INPT.REL, IOPT.REL
@VDIRECTORY JOBD.REL, LEFT72.EXE, LEFT72.REL, LEFTFM.EXE, LEFTFM.REL
@VDIRECTORY LEXICA.REL, LEXSUP.REL, LISTNG.20, LISTOU.REL, LOOK72.BLI
@VDIRECTORY LOOKFM.BLI, MEMCMP.REL, META72.BLI, METAFM.BLI, MOVA.REL
@VDIRECTORY NUMIO1.REL, ONESEG.20, OPGNTA.REL, OPTAB.REL, OUTMOD.REL
@VDIRECTORY OUTZ.REL, P2S1.REL, P2S2.REL, P3R.REL, PEEPOP.REL
@VDIRECTORY PH2S.REL, PH3G.REL, PHA2.REL, PHA3.REL, PNROPT.REL
@VDIRECTORY QTAB1.REL, REGAL2.REL, REGUTL.REL, RELBUF.REL, REVHST.REL
@VDIRECTORY SCAN0.REL, SCNR.REL, SKSTMN.REL, SRCA.REL, STA0.REL
@VDIRECTORY STA1.REL, STA2.20, STA3.REL, STREGA.REL, TBL.REL
@VDIRECTORY TRACE1.REL, TSTR.REL, UNEND.REL, UTIL.REL, VER5.REL
@VDIRECTORY VLTPPR.REL


@DELETE ACT0.REL, ACT1.REL, ALCBLO.REL, ARRXPN.REL, BLIO.REL
@DELETE BUILD.EXE, BUILD.REL, CANNON.REL, CGDO.REL, CGEXPR.REL
@DELETE CGSTMN.REL, CMPBLO.REL, CMPLEX.REL, CNSTCM.REL, CODETA.REL
@DELETE COMMAN.20, COMSUB.REL, DATAST.REL, DBUGIT.REQ, DEBUG.REL
@DELETE DEFLT.REL, DEFPT.REL, DOALC.REL, DOXPN.REL, DRIVER.REL
@DELETE ERR3.REL, ERROR0.REL, ERROUT.REL, ERRTB3.REL, EXOSUP.REL
@DELETE EXPRES.REL, F72BNF.BLI, FAZ1.REL, FLTGEN.REL, FORMAT.REL
@DELETE FRMBNF.BLI, FT1SEG.REQ, FTTENX.MAC, FTTENX.REQ, FTTENX.UNV
@DELETE GCMNSB.REL, GFOPDF.UNV, GLOBAL.REL, GNRCFN.REL, GOPT2.REL
@DELETE GOPTIM.REL, GRAPH.REL, INOUT.20, INPT.REL, IOPT.REL
@DELETE JOBD.REL, LEFT72.EXE, LEFT72.REL, LEFTFM.EXE, LEFTFM.REL
@DELETE LEXICA.REL, LEXSUP.REL, LISTNG.20, LISTOU.REL, LOOK72.BLI
@DELETE LOOKFM.BLI, MEMCMP.REL, META72.BLI, METAFM.BLI, MOVA.REL
@DELETE NUMIO1.REL, ONESEG.20, OPGNTA.REL, OPTAB.REL, OUTMOD.REL
@DELETE OUTZ.REL, P2S1.REL, P2S2.REL, P3R.REL, PEEPOP.REL
@DELETE PH2S.REL, PH3G.REL, PHA2.REL, PHA3.REL, PNROPT.REL
@DELETE QTAB1.REL, REGAL2.REL, REGUTL.REL, RELBUF.REL, REVHST.REL
@DELETE SCAN0.REL, SCNR.REL, SKSTMN.REL, SRCA.REL, STA0.REL
@DELETE STA1.REL, STA2.20, STA3.REL, STREGA.REL, TBL.REL
@DELETE TRACE1.REL, TSTR.REL, UNEND.REL, UTIL.REL, VER5.REL
@DELETE VLTPPR.REL
@EXPUNGE PAT:

;	CHECK DISK USAGE AFTER

@INFORMATION DISK-USAGE DSK:

CREL::

; Compile TWOSEG FORLIB and common LIB/OTS versions
; Select features

@COPY TTY: F2REL.MAC
@	FT20==-1	;TOPS-20
@	FTSHR==0	;Relocatable version
@^Z

; Compile

@RU MACRO
*FORPRM=F2REL.MAC,FORPRM.MAC
*FORINI.RLR=FORINI.MAC
*FORMEM.RLR=FORMEM.MAC
*FORFMT.RLR=FORFMT.MAC
*FOROPN.RLR=FOROPN.MAC
*FORIO.RLR=FORIO.MAC
*FOROTS.RLR=FOROTS.MAC
*FORERR.RLR=FORERR.MAC
*FORCNV.RLR=FORCNV.MAC
*FORTRP.RLR=FORTRP.MAC
*FORXIT.RLR=FORXIT.MAC
*FOROP.RLR=FOROP.MAC
*FORDBM.RLR=FORDBM.MAC
*FORMSC.RLR=FORMSC.MAC
*FORPSE.RLR=FORPSE.MAC
*FORPL2.RLR=FORPL2.MAC
*FORSNG.RLR=FORSNG.MAC
*FORDBL.RLR=FORDBL.MAC
*FORCPX.RLR=FORCPX.MAC
*FORCDX.RLR=FORCDX.MAC
*FORDUM.RLR=FORDUM.MAC
*FORSRT.RLR=FORSRT.MAC
*^Z

@RU FORTRA
*FORPL1.RLR=FORPL1.FOR/OPT
*^Z

CSHR::

; Compile PSECTed version of FOROTS
; Select features

@COPY TTY: F2SHR.MAC
@	FT20==-1	;TOPS-20
@	FTSHR==-1	;Sharable version
@^Z

; Compile

@RU MACRO
*FORPRM=F2SHR.MAC,FORPRM.MAC
*FORMEM.RLS=FORMEM.MAC
*FORFMT.RLS=FORFMT.MAC
*FOROPN.RLS=FOROPN.MAC
*FORIO.RLS=FORIO.MAC
*FOROTS.RLS=FOROTS.MAC
*FORERR.RLS=FORERR.MAC
*FORCNV.RLS=FORCNV.MAC
*FORTRP.RLS=FORTRP.MAC
*FORXIT.RLS=FORXIT.MAC
*FOREND.RLS=FOREND.MAC
*FOROP.RLS=FOROP.MAC
*FORDBM.RLS=FORDBM.MAC
*FORHAK.REL=FORHAK.MAC
*^Z

MFLIB::

; Create TWOSEG FORLIB and index
; FORLIB will contain locals

@TYPE ASL:F20LIB.CCL

@RU MAKLIB
*@ASL:F20LIB.CCL
*^Z

MFOTS::


; Create FOROTS
; Build and initialize
;Get the correct DBMS modules that we want in the OTS EXE file.

@RU MAKLIB
*FORDB1.RLS=FORDBM.RLS/EXT:FORDBM
*^Z

@TYPE ASL:F20OTS.CCL

@RU LINK
*@ASL:F20OTS.CCL

@RU FOROT6
@GET FOROT6
@INFORMATION VERSION
@INFORMATION MEMORY

DIR2::

;	TAKE DIRECTORIES OF NON PERTINENT OUTPUT FILES, AND DELETE SAME
;	CHECK DISK USAGE BEFORE

@INFORMATION DISK-USAGE DSK:

@VDIRECTORY FOROTS.MAP, F2REL.MAC,  F2SHR.MAC
@VDIRECTORY FORCDX.RLR, FORCNV.RLR, FORCNV.RLS, FORCPX.RLR, FORDAR.UNV
@VDIRECTORY FORDBL.RLR, FORDBM.RLR, FORDBM.RLS, FORDUM.RLR, FOREND.RLS
@VDIRECTORY FORERR.RLR, FORERR.RLS, FORFMT.RLR, FORFMT.RLS, FORHAK.REL
@VDIRECTORY FORINI.RLR, FORIO.RLR,  FORIO.RLS,  FORMEM.RLR, FORMEM.RLS
@VDIRECTORY FORMSC.RLR, FOROP.RLR,  FOROP.RLS,  FOROPN.RLR, FOROPN.RLS
@VDIRECTORY FOROTS.RLR, FOROTS.RLS, FORPL1.RLR, FORPL2.RLR, FORPRM.UNV
@VDIRECTORY FORPSE.RLR, FORSNG.RLR, FORSRT.RLR, FORTRP.RLR, FORTRP.RLS
@VDIRECTORY FORXIT.RLR, FORXIT.RLS
@VDIRECTORY FORDB1.RLS

@DELETE F2REL.MAC,  F2SHR.MAC
@DELETE FORCDX.RLR, FORCNV.RLR, FORCNV.RLS, FORCPX.RLR, FORDAR.UNV
@DELETE FORDBL.RLR, FORDBM.RLR, FORDBM.RLS, FORDUM.RLR, FOREND.RLS
@DELETE FORERR.RLR, FORERR.RLS, FORFMT.RLR, FORFMT.RLS, FORHAK.REL
@DELETE FORINI.RLR, FORIO.RLR,  FORIO.RLS,  FORMEM.RLR, FORMEM.RLS
@DELETE FORMSC.RLR, FOROP.RLR,  FOROP.RLS,  FOROPN.RLR, FOROPN.RLS
@DELETE FOROTS.RLR, FOROTS.RLS, FORPL1.RLR, FORPL2.RLR, FORPRM.UNV
@DELETE FORPSE.RLR, FORSNG.RLR, FORSRT.RLR, FORTRP.RLR, FORTRP.RLS
@DELETE FORXIT.RLR, FORXIT.RLS
@DELETE FORDB1.RLS
@EXPUNGE PAT:

;	CHECK DISK USAGE AFTER

@INFORMATION DISK-USAGE DSK:

BFDT::

; Generate FORDDT for the 20
; Select features

@COPY TTY: FDDT.MAC
@	TOPS20==-1	;TOPS-20
@^Z

; Build FORDDT

@RU MACRO
*FORDDT=FDDT.MAC,FORDDT.MAC
*^Z

DIR3::

;	TAKE DIRECTORIES OF NON PERTINENT OUTPUT FILES, AND DELETE SAME
;	CHECK DISK USAGE BEFORE

@INFORMATION DISK-USAGE DSK:
@VDIRECTORY FDDT.MAC
@DELETE FDDT.MAC
@EXPUNGE PAT:

;	CHECK DISK USAGE AFTER

@INFORMATION DISK-USAGE DSK:

FTNDBM::

;  If flag-file FTNDBM.FLG is present on PAT:, created a DBMS FORLIB
;  and DBMSF.EXE

@ERROR ?
@SET FILE VISIBLE PAT:FTNDBM.FLG
@IF (ERROR) @GOTO CHECK

;  Here if a DBMS build is wanted

;  Create the DBMS FORLIB

@RU MAKLIB
*FORLIB=FORLIB/DELETE:(FORDBM,FORDST)
*FORLIB=FORLIB,DBSFG/APPEND,DBS20/APPEND,DBSANY/APPEND,SCHIO2/APPEND
*FORLIB=FORLIB/INDEX

; Create DBSF.EXE

@RU LINK
*@DBCS2F.CMD

@GET PAT:DBMSF.EXE
@I MEMORY
@SAVE PAT:DBMSF.EXE 700 734

CHECK::

;
;	Signal success
;

@EXPUNGE PAT:
@DEFINE DSK:
@PEPB
*SIGNAL-SUCCESS FORTRAN-20-V6
*EXIT
@GOTO EXIT

;
;	Signal failure on error
;

%ERR::
@EXPUNGE PAT:
@DEFINE DSK:
@PEPB
*SIGNAL-FAILURE FORTRAN-20-V6
*EXIT

EXIT::
%FIN::
     
;	[END OF FTN206.CTL]