.ENABLE SUBSTITUTION
;	      
;  COMMAND FILE TO ASSEMBLE, COMPILE AND TASKBUILD Data Entry Program (ENTRY)
;
.ASK F77 Compile ENTRY with FORTRAN 77 (F77)
.SETS LIST ""
.SETS MAP ""
.SETF MP
.SETF LST
.IFT F77 .ASK LST Generate FORTRAN listing files (/SP)
;
.IFT F77;ENTRY normally looks for ENTRY.HLP on LB:[1,2] (if not, ^Z, edit HELP.FTN,
.IFT F77; and move ENTRY.HLP to that device and UIC.)
.SETS OLDUIC <UIC>
SET /UIC=[1,2]
PIP LB:[1,2]ENTRY.HLP/FO='OLDUIC'ENTRY.HLP
SET /UIC='OLDUIC'
;
.IFT F77 .ASK UNS Use VT100 Charater Attribute Underscore on for data entry fields
;
.ASK BLD Task Build ENTRY 
.IFF BLD .EXIT
.IFT BLD .ASK FPU Build ENTRY for machine without Floating Point Units
.IFT BLD .ASK SYSLIB Does SYSLIB contain F77 OTS (F4POTS) library
.IFF SYSLIB; Assuming LB:[1,1]F4POTS.OLB
.IFT BLD .ASK FCSRES Build ENTRY linked with a FCS resident library
.IFT BLD .ASK F4PRES Build ENTRY linked with a F77 resident library
.IFT BLD .ASK OVRLAY Build ENTRY disk resident overlayed (saving only minimal)
.IFT BLD .ASK MP Produce a taskbuild map (/SP)
;
.IFT MP .SETS MAP ",ENTRY.MAP/SH"
.IFT LST .SETS LIST ",ENTRY.LST/SP"
.IFF F77 .GOTO BLDENT
.IFT UNS .SETS UNSCOR "1A"
.IFF UNS .SETS UNSCOR "1B"
.OPEN ENT.CPL;1
.ENABLE DATA
ENTRY'LIST'=ENTRY'UNSCOR'/NOF77/NOTR
EEXIT'LIST'=EEXIT/NOF77/NOTR
ERASE'LIST'=ERASE/NOF77/NOTR
FIND'LIST'=FIND/NOF77/NOTR
FNDFLD'LIST'=FNDFLD/NOF77/NOTR
CHECKS'LIST'=CHECKS/NOF77/NOTR
HELP'LIST'=HELP/NOF77/NOTR
MESSGE'LIST'=MESSGE'UNSCOR'/NOF77/NOTR
EQUIT'LIST'=EQUIT/NOF77/NOTR
READS'LIST'=READS/NOF77/NOTR
SCRINI'LIST'=SCRINI/NOF77/NOTR
SCRPRT'LIST'=SCRPRT/NOF77/NOTR
SCRWRT'LIST'=SCRWRT'UNSCOR'/NOF77/NOTR
UVT100'LIST'=UVT100/NOF77/NOTR
WRITES'LIST'=WRITES/NOF77/NOTR
.DISABLE DATA
.CLOSE
F77 @ENT.CPL
MAC INPAST'LIST'=INPAST
MAC CNTRLC'LIST'=CNTRLC
PIP ENT.CPL;1/DE
.BLDENT: .IFF BLD .GOTO ENDUP
.OPEN ENT.TKB;1
.IFT OVRLAY .GOTO OVER
.DATA ENTRY/CP/FP'MAP'=ENTRY,INPAST,CNTRLC,UVT100,FIND,FNDFLD,CHECKS,
.DATA SCRINI,SCRWRT,SCRPRT,MESSGE,HELP,EEXIT,EQUIT,READS,WRITES,ERASE
.IFT FPU .DATA LB:[1,1]F4PEIS,
.IFT SYSLIB .DATA LB:[1,1]SYSLIB/LB:$SHORT
.IFF SYSLIB .DATA LB:[1,1]F4POTS/LB:$SHORT,LB:[1,1]F4POTS/LB
.DATA /
.GOTO NOOVER
.OVER:
.DATA ENTRY/CP/FP'MAP'=ENT/MP
.NOOVER:
.IFT FCSRES .DATA LIBR=FCSRES:RO:7
.IFT F4PRES .DATA LIBR=F4PRES:RO:6
.DATA PRI=55
.DATA MAXBUF=512
.DATA ACTFIL=4
.DATA EXTSCT=$$FSR1:4330
.DATA FMTBUF=64
.DATA UNITS=4
.DATA STACK=128
.DATA TASK=...ENT
.DATA //
.CLOSE
.IFF OVRLAY .GOTO BUILD
.OPEN ENT.ODL;1
.DATA 	.ROOT	MAIN-*(O0,O1,O2,O3,O4,O5)
.DATA MAIN:	.FCTR	ENTRY-INPAST-CNTRLC-FNDFLD-UVT100-SCRWRT-FIND-CHECKS-LIB
.DATA O0:	.FCTR	READS-LIB
.DATA O1:	.FCTR	SCRINI-LIB
.DATA O2:	.FCTR	MESSGE-ERASE-LIB
.DATA O3:	.FCTR	HELP-LIB
.DATA O4:	.FCTR	SCRPRT-LIB
.DATA O5:	.FCTR	EEXIT-EQUIT-WRITES-LIB
.IFT SYSLIB .GOTO LIB1
.IFT FPU .DATA LIB:	.FCTR	LB:[1,1]F4PEIS-LB:[1,1]F4POTS/LB:$SHORT-LB:[1,1]F4POTS/LB
.IFF FPU .DATA LIB:	.FCTR	LB:[1,1]F4POTS/LB:$SHORT-LB:[1,1]F4POTS/LB
.GOTO ODLEND
.LIB1:
.IFT FPU .DATA LIB:	.FCTR	LB:[1,1]F4PEIS-LB:[1,1]SYSLIB/LB:$SHORT
.IFF FPU .DATA LIB:	.FCTR	LB:[1,1]SYSLIB/LB:$SHORT
.ODLEND:
.DATA 	.END
.CLOSE
.BUILD:
TKB @ENT.TKB;1
.ASK DEL Delete object files
.IFF DEL .GOTO ENDUP
PIP ENT.TKB;1/DE/NM,ENT.ODL;1,ENTRY.OBJ;1,FIND;1,FNDFLD;1,HELP;1
PIP MESSGE.OBJ;1/DE/NM,EQUIT;1,WRITES;1,READS;1,ERASE;1,EEXIT;1
PIP SCRPRT.OBJ;1/DE/NM,SCRWRT;1,SCRINI;1,UVT100;1,INPAST;1,CNTRLC;1
.ENDUP:; ENTRY Complete INS ENTRY and on VT100s execute ENT
