.SETF NAME
.10:PAGE
.ENABLE GLOBAL
.ENABLE SUBSTITUTION
.SETF LST
.SETF MAP
.SETF SCI
.SETF SWTCH
.SETF LSWTCH
.SETS TCS "TCS"
.SETS ADGRF "ADGRF"
.SETS YES "Y"
.SETS NO "N"
.SETS CR ""
.SETS BLD ""
.SETS SWITCH ""
.SETS LSTSWT ""
.SETS MAXBUF ""
.SETS ACTFIL ""
.SETS FMTBUF ""
.SETS UNITS ""
.SETS COMMON ""
.SETS ASG ""
.ONERR 20
;THIS FILE WILL ASSEMBLE AND TASKBUILD A FORTRAN IV PLUS PROGRAM
;
;     ALL TASKS,OBJECT MODULES AND SOURCE FILES WILL BE PURGED
;
; THE COMPILER OUTPUT FILE SWITCHES ARE BY DEFAULT
;
;    /NOCK/CO:5/NODE/NOID/NOI4/NOLA/NORO/TR:BLOCKS/WF:2/WR
;
.20: .IFF NAME .ASKS $N WHAT IS THE FORTRAN PROGRAM NAME
.IF $N EQ CR .GOTO 200
.ASK SWTCH DO YOU WISH TO CHANGE ANY DEFAULT VALUES
.IFT SWTCH .ASKS SWITCH ENTER THE NON DEFAULT SWITCHES (/SW1/SW2.../SWN)
;
.SETT NAME
;
;
.SETF LSWTCH
.ASK LST DO YOU WANT A LISTING
.IFT LST .ASK LSWTCH DO YOU WANT TO ALTER THE DEFAULT LISTING(/LI:2/-SP)
.IFT LST .IFT LSWTCH .ASKS LSTSWT ENTER THE NEW LISTING SWITCHES(/SW1.../SWN)
.IFT LST .SETS $LST ",TI:"
.IFF LST .SETS $LST ""
.IFF LST .SETS LSTSWT ""
;
;
PAGE
F4P '$N''$LST''LSTSWT'='$N'.FTN'SWITCH'
.IF <EXSTAT> NE 1 ; FATAL F4P COMPILATION ERROR
.IF <EXSTAT> NE 1 /
.ONERR 30
.30:.ASKS BLD TASKBUILD [Y,N,TCS,ADGRF]
.IF BLD EQ CR .OR .IF BLD EQ NO .GOTO 110
.ASK SCI BUILD WITH THE SCIENTIFIC SUBROUTINE PACKAGE
.IF BLD EQ CR .GOTO 110
.IF BLD EQ NO .GOTO 110
.IF BLD NE TCS .AND .IF BLD NE YES .AND .IF BLD NE ADGRF .GOTO 30
.ASK MAP DO YOU WANT A MAP FROM THE TASKBUILDER
.SETF OPT
.ASK OPT DO YOU WANT TO ALTER THE DEFAULT TASK BUILD OPTIONS
.IFT MAP .SETS $MP ",TI:"
.IFF MAP .SETS $MP ""
.OPEN TASKBLD.CMD;1
.DATA '$N'/FP/CP'$MP'='$N'
.IFT SCI .DATA DK3:[1,1]SCI/LB
.IF BLD EQ ADGRF .DATA DK3:[1,1]AG/LB
.IF BLD EQ TCS .OR .IF BLD EQ ADGRF .DATA DK3:[1,1]TCS/LB
.DATA DK1:[1,1]F4POTS/LB
PAGE
.SETF SWTCH
.DATA /
.IFT OPT .ASKS MAXBUF MAXBUF =
.IFT OPT .ASKS ACTFIL ACTFIL =
.IFT OPT .ASKS ASG ASG =
.IFT OPT .ASKS FMTBUF FMTBUF =
.IFT OPT .ASKS UNITS UNITS =
.IFT OPT .ASKS COMMON COMMON =
.IFT OPT .AND .IF MAXBUF NE CR .DATA MAXBUF='MAXBUF'
.IFT OPT .AND .IF ACTFIL NE CR .DATA ACTFIL='ACTFIL'
.IFT OPT .AND .IF ASG NE CR .DATA ASG='ASG'
.IFT OPT .AND .IF FMTBUF NE CR .DATA FMTBUF='FMTBUF'
.IFT OPT .AND .IF UNITS NE CR .DATA UNITS='UNITS'
.IFT OPT .AND .IF COMMON NE CR .DATA COMMON='COMMON'
.DATA LIBR=F4PRES:RO
.IFT OPT .DATA //
.CLOSE
PIP '$N'.TSK;*/DE
TKB @TASKBLD.CMD
PIP TASKBLD.CMD;1/DE
.110:PIP '$N'.FTN/PU
.IF BLD EQ YES PIP '$N'.OBJ;*/DE
.IF BLD EQ TCS PIP '$N'.OBJ;*/DE
.IF BLD EQ ADGRF PIP '$N'.OBJ;*/DE
;
.SETF EDI
.ASK EDI REEDIT YOUR SOURCE FILE
.IFT EDI EDI '$N'.FTN
.IFT EDI .GOTO 10
;
;THE TASK IS NOW READY TO BE RUN
.200:; 
