Google
 

Trailing-Edge - PDP-10 Archives - BB-H580C-SB_1981 - cobol.ctm
There are 6 other files named cobol.ctm in the archive. Click here to see a list.
! UPD ID= 3403 on 2/19/81 at 9:59 AM by NIXON                           
!COBOL.CTL	COBOL-68 & COBOL-74 V12B
!
!USED TO MAKE ANY FLAVOUR OF COBOL-68 OR COBOL-74 FROM COBOL SOURCE FILES
!THIS FILE RUNS ON EITHER TOPS-20 OR TOPS-10 ON ALL SUPPORTED MONITORS
!SUBMIT WITH COMMAND	SUBMIT COBOL/TIME:1:0:0
!
!THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY ONLY BE USED
!  OR COPIED IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE.
!
!COPYRIGHT (C) 1979, 1981 BY DIGITAL EQUIPMENT CORPORATION
!
!IF ANY NON-STANDARD ASSEMBLY SWITCHES ARE DESIRED THEY SHOULD BE
!	INSERTED IN COBASM.MAC
!
!INSTALLATION SPECIFIC ASSIGNMENTS SHOULD BE PUT IN THE FOLLOWING FILE:
! ON TOPS-20 IN A TAKE FILE COBOL.CMD
! ON TOPS-10 IN A MIC  FILE COBOL.MIC
!	  OR IN A TECO FILE COBOL.TEC
!NOTE, IN GENERAL THIS CONTROL FILE WILL NOT RUN WITHOUT ONE OF THE ABOVE
!DEFINITION FILES BEING PRESENT.
!
!IF LISTINGS ARE DESIRED, THE EMPTY FILE
!LISTEM.MAC SHOULD BE IN DSK:
!
!FOR COBOL-68 SET ANS68==1 AND ANS74==0 IN COBASM.MAC
!FOR COBOL-74 SET ANS68==0 AND ANS74==1 IN COBASM.MAC
!
!IF A DEBUG VERSION IS REQUIRED
!DEBUG==1 MUST BE IN COBASM.MAC
!
!IF A DBMS VERSION IS REQUIRED
!DBMS==1 MUST BE IN COBASM.MAC
!
!FOR THE COBOL-68 TO COBOL-74 CONVERSION UTILITY
!SET ANS68==1 AND FT68274==1 IN COBASM.MAC
!
!TO JUST RELOAD THE COMPILER WHEN EVERYTHING HAS BEEN ASSEMBLED
!SUCH AS FOR DBMS V6
!FOR TOPS-20
!SUBMIT COBOL/TIME:1:0:0/RESTART:YES/TAG:LOAD
!FOR TOPS-10
!SUBMIT COBOL.CTM/TIME:1:0:0/RESTART:YES/TAG:LOAD
!
!TEST FOR WHICH SYSTEM
@GOTO TOPS20	!TOPS20 VERSION
.GOTO TOPS10	!TOPS10 VERSION
!
!HERE FOR LOAD ONLY
LOAD::
!TEST FOR WHICH SYSTEM
@GOTO CK2J	!TOPS20 VERSION
.GOTO CK1J	!TOPS10 VERSION
TOPS20::
!REQUIRED FILES:
!<FIELD-IMAGE>	CREF.EXE
!		LINK.EXE
!		MACRO.EXE
!		HELPER.REL
!		MACSYM.UNV
!		MONSYM.UNV
!		UUOSYM.UNV
!
!<NEW>		PA1050.EXE
!
!<UNSUPPORTED>	GLOB.EXE
!
!<SELF>	COBOL.CTL	COBOL.DOC	COBOL.HLP	COBASM.MAC
!
!	ASCEBC.MAC	ASCSIX.MAC	BISGEN.MAC	BTREE.MAC
!	CHREQV.MAC	CLEANC.MAC	CLEAND.MAC	CLEANT.MAC
!	CLRNAM.MAC	CMNGEN.MAC	COBCOM.MAC	COBVER.MAC
!	COBOLA.MAC	COBOLB.MAC	COBOLC.MAC	COBOLD.MAC
!	COBOLE.MAC	COBOLF.MAC	COBOLG.MAC	COBOLK.MAC
!	COBOLO.MAC	COMUNI.MAC	CTREE.MAC	DIAGS.MAC
!	DTREE.MAC	EBCASC.MAC	EXPGEN.MAC	FNDPOP.MAC
!	FTDEFS.MAC	GETASY.MAC	GETCPY.MAC	GETGEN.MAC
!	GETITM.MAC	GETTAG.MAC	IFGEN.MAC	IMPURE.MAC
!	INTERM.MAC	IOGEN.MAC	IPCGEN.MAC	LBLPRM.MAC
!	MATGEN.MAC	MESGEN.MAC	MOVGEN.MAC	MSCGEN.MAC
!	OPCTAB.MAC	P.MAC		PMATCH.MAC	PSCAN.MAC
!	PURE.MAC	PUTAS1.MAC	PUTAS2.MAC	PUTAS3.MAC
!	PUTBIN.MAC	PUTCPY.MAC	PUTERA.MAC	PUTGEN.MAC
!	PUTLST.MAC	RPWGEN.MAC	SQUIRL.MAC	SRTCRF.MAC
!	SRTGEN.MAC	STINFL.MAC	STRGEN.MAC	TABLES.MAC
!	TRYNAM.MAC	XFRGEN.MAC	XPAND.MAC	XPNPPL.MAC
!
!IF A DEBUGING VERSION IS TO BE BUILT, THE FOLLOWING ARE ALSO REQUIRED
!
!	HANDAN.MAC	TRACER.MAC
!
!ALSO, IF MAKING A DBMS COBOL, THE FOLLOWING ARE REQUIRED:
!
!	CMLSYM.MAC	DBDML.MAC	DBGETF.MAC	DMLVOK.MAC
!	DMLERR.MAC	DMLIO.MAC	DBSDCL.MAC	GENDCL.MAC
!	STRUNV.MAC	STRDCL.MAC
!	SCHIO2.REL	STRHI.REL
!
!TO LOAD COBOL ONE OF THE FOLOWING SETS OF CMD FILES ARE REQUIRED:
!
!NOT DEBUG, NOT DBMS
!
!	ALL.CMD
!
!DEBUG, NOT DBMS
!
!	ALLD.CMD
!
!NOT DEBUG, DBMS
!
!	ALLB.CMD
!
!DEBUG, DBMS
!
!	ALLDB.CMD
!
!TO TEST THE FEATURES TEST SWITCH SETTINGS THE FOLLOWING IS REQUIRED:
!
!	COBTST.MAC
!
!
!
!OUTPUT:
!
!FOR COBOL-68
!		COBOL.EXE, COBOL.MAP, COBOL.GLB
!FOR COBOL-74
!		CBL74.EXE, CBL74.MAP, CBL74.GLB
!
!
!OUTPUT LISTINGS:
!		COBOL.LOG
!
!
!MAKE A RECORD OF WHAT IS BEING USED
@CHKPNT CK2A
CK2A::
@ERROR
@TAKE COBOL.CMD
@IF (ERROR) !IGNORE IT
!MAKE A RECORD OF WHAT IS BEING USED.
@GET SYS:PA1050.EXE
@INFO VERSION
@GET SYS:MACRO
@INFO VERSION
@GET SYS:LINK
@INFO VERSION
@GET SYS:CREF
@INFO VERSION
@GET SYS:GLOB
@IF (ERROR) @!GLOB IS NOT SUPPORTED
@INFO VERSION
!
@VD SYS:PA1050.EXE,SYS:MACRO.EXE,SYS:LINK.EXE,SYS:CREF.EXE,SYS:GLOB.EXE,SYS:HELPER.REL,SYS:MONSYM.UNV,SYS:UUOSYM.UNV,
@CHECK SEQ
@
!
@VD COBASM.MAC,INTERM.MAC,LBLPRM.MAC,COMUNI.MAC,P.MAC,CHREQV.MAC,TABLES.MAC,ASCEBC.MAC,ASCSIX.MAC,BISGEN.MAC,BTREE.MAC,CLEANC.MAC,CLEAND.MAC,CLEANT.MAC,CLRNAM.MAC,CMNGEN.MAC,COBCOM.MAC,COBOLA.MAC,COBOLB.MAC,
@CHECK SEQ
@
@VDIR COBOLC.MAC,COBOLD.MAC,COBOLE.MAC,COBOLF.MAC,COBOLG.MAC,COBOLK.MAC,COBOLO.MAC,CTREE.MAC,DIAGS.MAC,DTREE.MAC,EBCASC.MAC,EXPGEN.MAC,FNDPOP.MAC,GETASY.MAC,GETCPY.MAC,GETGEN.MAC,GETITM.MAC,GETTAG.MAC,
@CHECK SEQ
@
@VD IFGEN.MAC,IMPURE.MAC,IOGEN.MAC,IPCGEN.MAC,MATGEN.MAC,MESGEN.MAC,MOVGEN.MAC,MSCGEN.MAC,PMATCH.MAC,OPCTAB.MAC,PSCAN.MAC,PURE.MAC,PUTAS1.MAC,PUTAS2.MAC,PUTAS3.MAC,PUTBIN.MAC,PUTCPY.MAC,PUTERA.MAC,PUTGEN.MAC,PUTLST.MAC,
@CHECK SEQ
@
@VD RPWGEN.MAC,SQUIRL.MAC,SRTCRF.MAC,SRTGEN.MAC,STINFL.MAC,STRGEN.MAC,TRYNAM.MAC,XFRGEN.MAC,XPAND.MAC,XPNPPL.MAC,
@CHECK SEQ
@
@VD CMLSYM.MAC,DBSDCL.MAC,GENDCL.MAC,STRUNV.MAC,STRDCL.MAC,DBDML.MAC,DBGETF.MAC,DMLVOK.MAC,DMLERR.MAC,DMLIO.MAC,SCHIO2.REL,STRHI.REL,
@CHECK SEQ
@
@VD COBOL.CTL,ALL.CMD,ALLB.CMD,ALLD.CMD,ALLDB.CMD,
@CHECK SEQ
@
!
!
@ !
!ASSEMBLE SOURCES
!
!ASSEMBLE THE UNIVERSALS FIRST.
@ERROR %
@TYPE LISTEM.MAC
@IF (ERROR) @GOTO NOLIS1
@ERROR 
!
!HERE IF CREF LISTING WANTED
!
@MACRO
*COBASM,COBASM/C=COBASM
*INTERM,INTERM/C=INTERM
*COBVER,COBVER/C=COBVER
*COMUNI,COMUNI/C=COMUNI
*FTDEFS,FTDEFS/C=FTDEFS
*LBLPRM,LBLPRM/C=LBLPRM
*P,P/C=P
*CHREQV,CHREQV/C=CHREQV
*TABLES,TABLES/C=TABLES
*OPCTAB,OPCTAB/C=OPCTAB
*COBTST=COBTST
!
! LOAD THE FEATURE TEST SWITCH TESTER
!
@LINK
*COBTST/GO
@SAVE COBTST
@IF (ERROR) @GOTO TRUBLE
!
!
!!NOW WE CAN ASSEMBLE THE REST OF THE SOURCES
@CHKPNT CK2B
CK2B::
@ERROR
@TAKE COBOL.CMD
@IF (ERROR) !IGNORE IT
@MACRO
*ASCEBC,ASCEBC/C=ASCEBC
*ASCSIX,ASCSIX/C=ASCSIX
*BISGEN,BISGEN/C=BISGEN
*BTREE,BTREE/C=BTREE
*CLEANC,CLEANC/C=CLEANC
*CLEAND,CLEAND/C=CLEAND
*CLEANT,CLEANT/C=CLEANT
*CLRNAM,CLRNAM/C=CLRNAM
*CMNGEN,CMNGEN/C=CMNGEN
*COBCOM,COBCOM/C=COBCOM
*COBOLA,COBOLA/C=COBOLA
*COBOLB,COBOLB/C=COBOLB
*COBOLC,COBOLC/C=COBOLC
*COBOLD,COBOLD/C=COBOLD
*COBOLE,COBOLE/C=COBOLE
*COBOLF,COBOLF/C=COBOLF
*COBOLG,COBOLG/C=COBOLG
*COBOLK,COBOLK/C=COBOLK
*COBOLO,COBOLO/C=COBOLO
@IF (ERROR) @GOTO TRUBLE
!
@CHKPNT CK2C
CK2C::
@ERROR
@TAKE COBOL.CMD
@IF (ERROR) !IGNORE IT
@MACRO
*CTREE,CTREE/C=CTREE
*DIAGS,DIAGS/C=DIAGS
*DTREE,DTREE/C=DTREE
*EBCASC,EBCASC/C=EBCASC
*EXPGEN,EXPGEN/C=EXPGEN
*FNDPOP,FNDPOP/C=FNDPOP
*GETASY,GETASY/C=GETASY
*GETCPY,GETCPY/C=GETCPY
*GETGEN,GETGEN/C=GETGEN
*GETITM,GETITM/C=GETITM
*GETTAG,GETTAG/C=GETTAG
*IFGEN,IFGEN/C=IFGEN
*IMPURE,IMPURE/C=IMPURE
*IOGEN,IOGEN/C=IOGEN
*IPCGEN,IPCGEN/C=IPCGEN
*MATGEN,MATGEN/C=MATGEN
*MESGEN,MESGEN/C=MESGEN
*MOVGEN,MOVGEN/C=MOVGEN
*MSCGEN,MSCGEN/C=MSCGEN
*PMATCH,PMATCH/C=PMATCH
*PSCAN,PSCAN/C=PSCAN
*PURE,PURE/C=PURE
*PUTAS1,PUTAS1/C=PUTAS1
*PUTAS2,PUTAS2/C=PUTAS2
*PUTAS3,PUTAS3/C=PUTAS3
@IF (ERROR) @GOTO TRUBLE
!
@CHKPNT CK2D
CK2D::
@ERROR
@TAKE COBOL.CMD
@IF (ERROR) !IGNORE IT
@MACRO
*PUTBIN,PUTBIN/C=PUTBIN
*PUTCPY,PUTCPY/C=PUTCPY
*PUTERA,PUTERA/C=PUTERA
*PUTGEN,PUTGEN/C=PUTGEN
*PUTLST,PUTLST/C=PUTLST
*RPWGEN,RPWGEN/C=RPWGEN
*SQUIRL,SQUIRL/C=SQUIRL
*SRTCRF,SRTCRF/C=SRTCRF
*SRTGEN,SRTGEN/C=SRTGEN
*STINFL,STINFL/C=STINFL
*STRGEN,STRGEN/C=STRGEN
*TRYNAM,TRYNAM/C=TRYNAM
*XFRGEN,XFRGEN/C=XFRGEN
*XPAND,XPAND/C=XPAND
*XPNPPL,XPNPPL/C=XPNPPL
@IF (ERROR) @GOTO TRUBLE
!
!NOW ASSEMBLE THE DEBUG MODULES
!
@RUN COBTST
*DEBUG
@IF (ERROR) @GOTO NODEB
@MACRO
*HANDAN,HANDAN/C=HANDAN
*TRACER,TRACER/C=TRACER
@IF (ERROR) @GOTO TRUBLE
!
NODEB::
!NOW ASSEMBLE THE DBMS MODULES
!
@RUN COBTST
*DBMS
@IF (ERROR) @GOTO LZT !NOT DBMS
!ASSEMBLE THE UNIVERSALS FIRST
@MACRO
*CMLSYM,CMLSYM/C=CMLSYM
*GENDCL,GENDCL/C=GENDCL
*DBSDCL,DBSDCL/C=DBSDCL
*STRUNV,STRUNV/C=STRUNV
*STRDCL,STRDCL/C=STRDCL
!
!NOW ASSEMBLE THE REST OF THE MODULES
@MACRO
*DBDML,DBDML/C=DBDML
*DBGETF,DBGETF/C=DBGETF
*CMLVOK,CMLVOK/C=DMLVOK
*CMLERR,CMLERR/C=DMLERR
*CMLIO,CMLIO/C=DMLIO
@IF (ERROR) @GOTO TRUBLE
!
!NOW MAKE THE .LZT FILES
LZT::
@CHKPNT CK2E
CK2E::
@ERROR
@TAKE COBOL.CMD
@IF (ERROR) !IGNORE IT
@CREF
*DSK:COBASM.LZT=COBASM
*DSK:INTERM.LZT=INTERM
*DSK:COBVER.LZT=COBVER
*DSK:COMUNI.LZT=COMUNI
*DSK:FTDEFS.LZT=FTDEFS
*DSK:LBLPRM.LZT=LBLPRM
*DSK:P.LZT=P
*DSK:CHREQV.LZT=CHREQV
*DSK:TABLES.LZT=TABLES
*DSK:OPCTAB.LZT=OPCTAB
*DSK:ASCEBC.LZT=ASCEBC
*DSK:ASCSIX.LZT=ASCSIX
*DSK:BISGEN.LZT=BISGEN
*DSK:BTREE.LZT=BTREE
*DSK:CLEANC.LZT=CLEANC
*DSK:CLEAND.LZT=CLEAND
*DSK:CLEANT.LZT=CLEANT
*DSK:CLRNAM.LZT=CLRNAM
*DSK:CMNGEN.LZT=CMNGEN
*DSK:COBCOM.LZT=COBCOM
*DSK:COBOLA.LZT=COBOLA
*DSK:COBOLB.LZT=COBOLB
*DSK:COBOLC.LZT=COBOLC
*DSK:COBOLD.LZT=COBOLD
*DSK:COBOLE.LZT=COBOLE
*DSK:COBOLF.LZT=COBOLF
*DSK:COBOLG.LZT=COBOLG
*DSK:COBOLK.LZT=COBOLK
*DSK:COBOLO.LZT=COBOLO
*DSK:CTREE.LZT=CTREE
*DSK:DIAGS.LZT=DIAGS
*DSK:DTREE.LZT=DTREE
*DSK:EBCASC.LZT=EBCASC
*DSK:EXPGEN.LZT=EXPGEN
*DSK:FNDPOP.LZT=FNDPOP
*DSK:GETASY.LZT=GETASY
*DSK:GETCPY.LZT=GETCPY
*DSK:GETGEN.LZT=GETGEN
*DSK:GETITM.LZT=GETITM
*DSK:GETTAG.LZT=GETTAG
*DSK:IFGEN.LZT=IFGEN
*DSK:IMPURE.LZT=IMPURE
*DSK:IOGEN.LZT=IOGEN
*DSK:IPCGEN.LZT=IPCGEN
*DSK:MATGEN.LZT=MATGEN
*DSK:MESGEN.LZT=MESGEN
*DSK:MOVGEN.LZT=MOVGEN
*DSK:MSCGEN.LZT=MSCGEN
*DSK:PMATCH.LZT=PMATCH
*DSK:PSCAN.LZT=PSCAN
*DSK:PURE.LZT=PURE
*DSK:PUTAS1.LZT=PUTAS1
*DSK:PUTAS2.LZT=PUTAS2
*DSK:PUTAS3.LZT=PUTAS3
*DSK:PUTBIN.LZT=PUTBIN
*DSK:PUTCPY.LZT=PUTCPY
*DSK:PUTERA.LZT=PUTERA
*DSK:PUTGEN.LZT=PUTGEN
*DSK:PUTLST.LZT=PUTLST
*DSK:RPWGEN.LZT=RPWGEN
*DSK:SQUIRL.LZT=SQUIRL
*DSK:SRTCRF.LZT=SRTCRF
*DSK:SRTGEN.LZT=SRTGEN
*DSK:STINFL.LZT=STINFL
*DSK:STRGEN.LZT=STRGEN
*DSK:TRYNAM.LZT=TRYNAM
*DSK:XFRGEN.LZT=XFRGEN
*DSK:XPAND.LZT=XPAND
*DSK:XPNPPL.LZT=XPNPPL
@IF (ERROR) !TROUBLE MAKING .LZT FILES
!
!NOW ASSEMBLE THE DEBUG MODULES
!
@RUN COBTST
*DEBUG
@IF (ERROR) @GOTO NODEB
@CREF
*DSK:HANDAN.LZT=HANDAN
*DSK:TRACER.LZT=TRACER
@IF (ERROR) !TROUBLE MAKING .LZT FILES
!
NODEB::
@RUN COBTST
*DBMS
@IF (ERROR) @GOTO DONCRF !NOT DBMS
@CREF
*DSK:CMLSYM.LZT=CMLSYM
*DSK:GENDCL.LZT=GENDCL
*DSK:DBSDCL.LZT=DBSDCL
*DSK:STRUNV.LZT=STRUNV
*DSK:STRDCL.LZT=STRDCL
*DSK:DBDML.LZT=DBDML
*DSK:DBGETF.LZT=DBGETF
*DSK:CMLVOK.LZT=CMLVOK
*DSK:CMLERR.LZT=CMLERR
*DSK:CMLIO.LZT=CMLIO
@IF (ERROR) !TROUBLE MAKING .LZT FILES
@GOTO DONCRF
NOLIS1::
!HERE IF CREF LISTINGS NOT WANTED
@ERROR
@MACRO
*COBASM=COBASM
*INTERM=INTERM
*COBVER=COBVER
*COMUNI=COMUNI
*FTDEFS=FTDEFS
*LBLPRM=LBLPRM
*P=P
*CHREQV=CHREQV
*TABLES=TABLES
*OPCTAB=OPCTAB
*COBTST=COBTST
!
!HERE TO LOAD THE FEATURE TEST SWITCH TESTER
!
@LINK
*COBTST/GO
@SAVE COBTST
@IF (ERROR) @GOTO TRUBLE
!
!NOW WE CAN ASSEMBLE THE REST OF THE MODULES.
@CHKPNT CK2F
CK2F::
@ERROR
@TAKE COBOL.CMD
@IF (ERROR) !IGNORE IT
@MACRO
*ASCEBC=ASCEBC
*ASCSIX=ASCSIX
*BISGEN=BISGEN
*BTREE=BTREE
*CLEANC=CLEANC
*CLEAND=CLEAND
*CLEANT=CLEANT
*CLRNAM=CLRNAM
*CMNGEN=CMNGEN
*COBCOM=COBCOM
*COBOLA=COBOLA
*COBOLB=COBOLB
*COBOLC=COBOLC
*COBOLD=COBOLD
*COBOLE=COBOLE
*COBOLF=COBOLF
*COBOLG=COBOLG
*COBOLK=COBOLK
*COBOLO=COBOLO
@IF (ERROR) @GOTO TRUBLE
!
@CHKPNT CK2G
CK2G::
@ERROR
@TAKE COBOL.CMD
@IF (ERROR) !IGNORE IT
@MACRO
*CTREE=CTREE
*DIAGS=DIAGS
*DTREE=DTREE
*EBCASC=EBCASC
*EXPGEN=EXPGEN
*FNDPOP=FNDPOP
*GETASY=GETASY
*GETCPY=GETCPY
*GETGEN=GETGEN
*GETITM=GETITM
*GETTAG=GETTAG
*IFGEN=IFGEN
*IMPURE=IMPURE
*IOGEN=IOGEN
*IPCGEN=IPCGEN
*MATGEN=MATGEN
*MESGEN=MESGEN
*MOVGEN=MOVGEN
*MSCGEN=MSCGEN
*PMATCH=PMATCH
*PSCAN=PSCAN
*PURE=PURE
*PUTAS1=PUTAS1
*PUTAS2=PUTAS2
*PUTAS3=PUTAS3
@IF (ERROR) @GOTO TRUBLE
!
@CHKPNT CK2H
CK2H::
@ERROR
@TAKE COBOL.CMD
@IF (ERROR) !IGNORE IT
@MACRO
*PUTBIN=PUTBIN
*PUTCPY=PUTCPY
*PUTERA=PUTERA
*PUTGEN=PUTGEN
*PUTLST=PUTLST
*RPWGEN=RPWGEN
*SQUIRL=SQUIRL
*SRTCRF=SRTCRF
*SRTGEN=SRTGEN
*STINFL=STINFL
*STRGEN=STRGEN
*TRYNAM=TRYNAM
*XFRGEN=XFRGEN
*XPAND=XPAND
*XPNPPL=XPNPPL
@IF (ERROR) @GOTO TRUBLE
!
!NOW ASSEMBLE THE DEBUG MODULES
!
@RUN COBTST
*DEBUG
@IF (ERROR) @GOTO NODEB
@MACRO
*HANDAN=HANDAN
*TRACER=TRACER
@IF (ERROR) @GOTO TRUBLE
!
NODEB::
!ASSEMBLE THE DBMS MODULES.
!
@RUN COBTST
*DBMS
@IF (ERROR) @GOTO DONCRF
!
!ASSEMBLE THE UNIVERSALS FIRST.
@MACRO
*CMLSYM=CMLSYM
*GENDCL=GENDCL
*DBSDCL=DBSDCL
*STRUNV=STRUNV
*STRDCL=STRDCL
!
!NOW ASSEMBLE THE REST OF THE MODULES.
@MACRO
*DBDML=DBDML
*DBGETF=DBGETF
*CMLVOK=DMLVOK
*CMLERR=DMLERR
*CMLIO=DMLIO
@IF (ERROR) @GOTO TRUBLE
@GOTO DONCRF
DONCRF:: !NOW START TO LOAD
!
@CHKPNT CK2J
CK2J::
@ERROR
@TAKE COBOL.CMD
@IF (ERROR) !IGNORE IT
!
!SEE WHICH COMPILER (68 OR 74) TO LOAD
!
@RUN COBTST
*ANS68
@IF (ERROR) @GOTO PT40	!COBOL-74
!
PT20::!HERE FOR COBOL-68 COMPILER
!SEE WHAT FLAVOUR OF COMPILER TO LOAD
!
@RUN COBTST
*DEBUG
@IF (ERROR) @GOTO PT21	!NOT DEBUG
@RUN COBTST
*DBMS
@IF (ERROR) @GOTO PT32	!DEBUG, NOT DBMS
@GOTO PT31		!DEBUG, DBMS
!
PT21::
@RUN COBTST
*DBMS
@IF (ERROR) @GOTO PT34	!NOT DEBUG, NOT DBMS
@GOTO PT33		!NOT DEBUG, DBMS
!
!
PT31::			!DEBUG, DBMS
!
@LINK
*COBOL/MAP=
*@ALLDB
@IF (ERROR) @GOTO TRUBLE
@SAVE COBOL 0 677
@IF (ERROR) @GOTO TRUBLE
@GOTO LODON
!
!
PT32::			!DEBUG, NOT DBMS
!
@LINK
*COBOL/MAP=
*@ALLD
@IF (ERROR) @GOTO TRUBLE
@SAVE COBOL 0 677
@IF (ERROR) @GOTO TRUBLE
@GOTO LODON
!
!
PT33::			!NOT DEBUG, DBMS
!
@LINK
*COBOL/MAP=
*@ALLB
@IF (ERROR) @GOTO TRUBLE
@SAVE COBOL 0 677
@IF (ERROR) @GOTO TRUBLE
@GOTO LODON
!
!
PT34::			!NOT DEBUG, NOT DBMS
!
@LINK
*COBOL/MAP=
*@ALL
@IF (ERROR) @GOTO TRUBLE
@SAVE COBOL 0 677
@IF (ERROR) @GOTO TRUBLE
@GOTO LODON
PT40::
!HERE FOR COBOL-74 COMPILER
!SEE WHAT FLAVOUR OF COMPILER TO LOAD
!
@RUN COBTST
*DEBUG
@IF (ERROR) @GOTO PT41	!NOT DEBUG
@RUN COBTST
*DBMS
@IF (ERROR) @GOTO PT52	!DEBUG, NOT DBMS
@GOTO PT51		!DEBUG, DBMS
!
PT41::
@RUN COBTST
*DBMS
@IF (ERROR) @GOTO PT54	!NOT DEBUG, NOT DBMS
@GOTO PT53		!NOT DEBUG, DBMS
!
!
PT51::			!DEBUG, DBMS
!
@LINK
*CBL74/MAP=
*@ALLDB
@IF (ERROR) @GOTO TRUBLE
@SAVE CBL74 0 677
@IF (ERROR) @GOTO TRUBLE
@GOTO LODON
!
!
PT52::			!DEBUG, NOT DBMS
!
@LINK
*CBL74/MAP=
*@ALLD
@IF (ERROR) @GOTO TRUBLE
@SAVE CBL74 0 677
@IF (ERROR) @GOTO TRUBLE
@GOTO LODON
!
!
PT53::			!NOT DEBUG, DBMS
!
@LINK
*CBL74/MAP=
*@ALLB
@IF (ERROR) @GOTO TRUBLE
@SAVE CBL74 0 677
@IF (ERROR) @GOTO TRUBLE
@GOTO LODON
!
!
PT54::			!NOT DEBUG, NOT DBMS
!
@LINK
*CBL74/MAP=
*@ALL
@IF (ERROR) @GOTO TRUBLE
@SAVE CBL74 0 677
@IF (ERROR) @GOTO TRUBLE
@GOTO LODON
LODON::!LOADING IS DONE
!
!TEST FOR COMPLETION SINCE LINK DOES NOT KNOW ITS UNDER BATCH
!
@START
*/U
@IF (NOERROR) @GOTO TRUBLE !WE SAVED LINK NOT COBOL
!
@CHKPNT CK2K
CK2K::
@ERROR
@TAKE COBOL.CMD
@IF (ERROR) !IGNORE IT
!
!GENERATE GLOB LISTING
!
@COPY PURE.REL FOO.REL
!
!SEE IF GLOB COMMAND GIVES US AN ERROR
!
@GLOB
@IF (ERROR) @GOTO NOGLOB
!
!WE COULD HAVE ONE GLOB COMMAND FOR EACH CONFIGURATION
!BUT IT IS SIMPLER TO PUT THE OPTIONAL FILES IN ONE PLACE
!
@RUN COBTST
*DEBUG
@IF (ERROR) @GOTO NEXT
@APPEND HANDAN.REL,TRACER.REL FOO.REL
NEXT::
@RUN COBTST
*DBMS
@IF (ERROR) @GOTO NEXT
@APPEND SCHIO2.REL,STRHI.REL,CMLERR.REL,CMLIO.REL,CMLSYM.REL,CMLVOK.REL,DBDML.REL,DBGETF.REL FOO.REL
NEXT::
@RUN COBTST
*ANS68
@IF (ERROR) @GOTO V74	!COBOL-74
!
@GLOB
*CHREQV.REL,COBASM.REL,COMUNI.REL,INTERM.REL,LBLPRM.REL,P.REL,TABLES.REL
*ASCEBC.REL,ASCSIX.REL,IMPURE.REL,FOO.REL,SQUIRL.REL,BTREE.REL
*XPNPPL.REL,XPAND.REL,GETITM.REL,STINFL.REL,CLRNAM.REL
*TRYNAM.REL,PUTGEN.REL,PUTCPY.REL,PUTERA.REL,COBCOM.REL
*PUTLST.REL,COBOLB.REL,COBOLA.REL,CLEANC.REL,CTREE.REL
*FNDPOP.REL,GETTAG.REL,PSCAN.REL,PUTAS1.REL,PUTAS2.REL
*COBOLC.REL,CLEAND.REL,CLEANT.REL,DTREE.REL,COBOLD.REL
*BISGEN.REL,CMNGEN.REL,EXPGEN.REL,GETGEN.REL,IFGEN.REL
*IOGEN.REL,IPCGEN.REL,MATGEN.REL,MESGEN.REL,MOVGEN.REL
*MSCGEN.REL,PUTAS3.REL,RPWGEN.REL,SRTGEN.REL,STRGEN.REL
*XFRGEN.REL,COBOLE.REL,DIAGS.REL,GETASY.REL
*GETCPY.REL,PUTBIN.REL,SRTCRF.REL
*COBOLG.REL,COBOLF.REL,EBCASC.REL,COBOLK.REL
*OPCTAB.REL,COBOLO.REL,PMATCH.REL
*COBOL.GLB=
@GOTO NOGLOB
!
V74::!COBOL-74
@GLOB
*CHREQV.REL,COBASM.REL,COMUNI.REL,INTERM.REL,LBLPRM.REL,P.REL,TABLES.REL
*ASCEBC.REL,ASCSIX.REL,IMPURE.REL,FOO.REL,SQUIRL.REL,BTREE.REL
*XPNPPL.REL,XPAND.REL,GETITM.REL,STINFL.REL,CLRNAM.REL
*TRYNAM.REL,PUTGEN.REL,PUTCPY.REL,PUTERA.REL,COBCOM.REL
*PUTLST.REL,COBOLB.REL,COBOLA.REL,CLEANC.REL,CTREE.REL
*FNDPOP.REL,GETTAG.REL,PSCAN.REL,PUTAS1.REL,PUTAS2.REL
*COBOLC.REL,CLEAND.REL,CLEANT.REL,DTREE.REL,COBOLD.REL
*BISGEN.REL,CMNGEN.REL,EXPGEN.REL,GETGEN.REL,IFGEN.REL
*IOGEN.REL,IPCGEN.REL,MATGEN.REL,MESGEN.REL,MOVGEN.REL
*MSCGEN.REL,PUTAS3.REL,RPWGEN.REL,SRTGEN.REL,STRGEN.REL
*XFRGEN.REL,COBOLE.REL,DIAGS.REL,GETASY.REL
*GETCPY.REL,PUTBIN.REL,SRTCRF.REL
*COBOLG.REL,COBOLF.REL,EBCASC.REL,COBOLK.REL
*OPCTAB.REL,COBOLO.REL,PMATCH.REL
*CBL74.GLB=
!
NOGLOB::
@RUN COBTST
*ANS68
@IF (ERROR) @GOTO V74	!COBOL-74
@RUN COBTST
*FT68274
@IF (ERROR) @GOTO V68	!COBOL-68
!
!HERE WHEN WE HAVE THE CONVERSION UTILITY
!DELETE FILES WE DON'T NEED
@DELETE COBOL.MAP,COBOL.GLB
@IF (ERROR)	!IGNORE
!RENAME THE EXE FILE
@RENAME COBOL.EXE 68274.EXE
@IF (ERROR)	@GOTO TRUBLE
@VD 68274.EXE,
@CHECK SEQ
@
@GOTO CLNUP
!
V68::
@VD COBOL.EXE,COBOL.MAP,COBOL.GLB,
@CHECK SEQ
@
@GOTO CLNUP
!
V74::
@VD CBL74.EXE,CBL74.MAP,CBL74.GLB,
@CHECK SEQ
@
!
CLNUP::
! CLEAN UP AFTER BUILD
!
@DELETE FOO.REL
@VDIR COBASM.UNV,COBVER.UNV,FTDEFS.UNV,INTERM.UNV,LBLPRM.UNV,COMUNI.UNV,P.UNV,CHREQV.UNV,TABLES.UNV,
@CHECK SEQ
@
@VDIR DMLSYM.UNV,GENDCL.UNV,DBSDCL.UNV,STRING.UNV,STRDCL.UNV,
@CHECK SEQ
@
@VDIR ASCEBC.REL,CHREQV.REL,COBASM.REL,COMUNI.REL,INTERM.REL,LBLPRM.REL,P.REL,TABLES.REL,
@CHECK SEQ
@
@VDIR ASCSIX.REL,IMPURE.REL,PURE.REL,SQUIRL.REL,BTREE.REL,XPNPPL.REL,XPAND.REL,GETITM.REL,STINFL.REL,CLRNAM.REL,
@CHECK SEQ
@
@VDIR TRYNAM.REL,PUTGEN.REL,PUTCPY.REL,PUTERA.REL,COBCOM.REL,PUTLST.REL,COBOLB.REL,COBOLA.REL,CLEANC.REL,CTREE.REL,
@CHECK SEQ
@
@VDIR FNDPOP.REL,GETTAG.REL,PSCAN.REL,PUTAS1.REL,PUTAS2.REL,COBOLC.REL,CLEAND.REL,CLEANT.REL,DTREE.REL,COBOLD.REL,
@CHECK SEQ
@
@VDIR BISGEN.REL,CMNGEN.REL,EXPGEN.REL,GETGEN.REL,IFGEN.REL,IOGEN.REL,IPCGEN.REL,MATGEN.REL,MESGEN.REL,MOVGEN.REL,
@CHECK SEQ
@
@VDIR MSCGEN.REL,PUTAS3.REL,RPWGEN.REL,SRTGEN.REL,STRGEN.REL,XFRGEN.REL,COBOLE.REL,DIAGS.REL,GETASY.REL,
@CHECK SEQ
@
@VDIR GETCPY.REL,PUTBIN.REL,SRTCRF.REL,COBOLG.REL,COBOLF.REL,EBCASC.REL,COBOLK.REL,
@CHECK SEQ
@
@VDIR OPCTAB.REL,COBOLO.REL,PMATCH.REL,HANDAN.REL,TRACER.REL,
@CHECK SEQ
@
@VDIR CMLERR.REL,CMLIO.REL,CMLSYM.REL,CMLVOK.REL,DBDML.REL,DBGETF.REL,DBSDCL.REL,GENDCL.REL,STRDCL.REL,STRUNV.REL,
@CHECK SEQ
@
!
@DELETE CHREQV.REL,COBASM.REL,COMUNI.REL,FTDEFS.REL,INTERM.REL,LBLPRM.REL,P.REL,TABLES.REL,OPCTAB.REL
!
!IF DEBUG LEAVE REST OF REL FILES AROUND
!NEW, LEAVE REST OF REL FILES AROUND TO MAKE IT EASIER TO REBUILD
@GOTO DONE
!
@RUN COBTST
*DEBUG
@IF (NOERROR) @GOTO DONE	!DEBUG
!@GOTO DONE	!TEMP FOR IN-HOUSE USE
!
@DELETE ASCEBC.REL,ASCSIX.REL,IMPURE.REL,PURE.REL,SQUIRL.REL,BTREE.REL
@DELETE XPNPPL.REL,XPAND.REL,GETITM.REL,STINFL.REL,CLRNAM.REL
@DELETE TRYNAM.REL,PUTGEN.REL,PUTCPY.REL,PUTERA.REL,COBCOM.REL
@DELETE PUTLST.REL,COBOLB.REL,COBOLA.REL,CLEANC.REL,CTREE.REL
@DELETE FNDPOP.REL,GETTAG.REL,PSCAN.REL,PUTAS1.REL,PUTAS2.REL
@DELETE COBOLC.REL,CLEAND.REL,CLEANT.REL,DTREE.REL,COBOLD.REL
@DELETE BISGEN.REL,CMNGEN.REL,EXPGEN.REL,GETGEN.REL,IFGEN.REL
@DELETE IOGEN.REL,IPCGEN.REL,MATGEN.REL,MESGEN.REL,MOVGEN.REL
@DELETE MSCGEN.REL,PUTAS3.REL,RPWGEN.REL,SRTGEN.REL,STRGEN.REL
@DELETE XFRGEN.REL,COBOLE.REL,DIAGS.REL,GETASY.REL
@DELETE GETCPY.REL,PUTBIN.REL,SRTCRF.REL
@DELETE COBOLG.REL,COBOLF.REL,EBCASC.REL,COBOLK.REL
@DELETE COBOLO.REL,PMATCH.REL,COBTST.REL
@DELETE GENDCL.REL,DBSDCL.REL,STRUNV.REL,STRDCL.REL,CMLERR.REL,CMLIO.REL,CMLSYM.REL,CMLVOK.REL,DBDML.REL,DBGETF.REL
@IF (ERROR) @!NOT DBMS MOST LIKELY
!
DONE::	!ALL DONE
!
@PLEASE COBOL BUILD COMPLETE!
@EXP
@MODIFY BATCH */DEPEND:-1
@GOTO OK
%ERR::
TRUBLE::
@PLEASE -- COBOL CREATION NOT SUCCESSFUL!!!
@GOTO OK
TOPS10::
!
!REQUIRED FILES:
!
!SYS:!		COMPIL.EXE
!		CREF.EXE
!		DIRECT.EXE
!		GLOB.EXE
!		LINK.EXE+LNK???.EXE
!		MACRO.EXE
!		PIP.EXE
!		DDT.REL
!
!REL:		HELPER.REL
!
!UNV:		MACTEN.UNV
!		UUOSYM.UNV
!
![SELF]	COBOL.CTL	COBOL.DOC	COBOL.HLP	COBASM.MAC
!
!CS:	ASCEBC.MAC	ASCSIX.MAC	BISGEN.MAC	BTREE.MAC
!	CHREQV.MAC	CLEANC.MAC	CLEAND.MAC	CLEANT.MAC
!	CLRNAM.MAC	CMNGEN.MAC	COBCOM.MAC	COBVER.MAC
!	COBOLA.MAC	COBOLB.MAC	COBOLC.MAC	COBOLD.MAC
!	COBOLE.MAC	COBOLF.MAC	COBOLG.MAC	COBOLK.MAC
!	COBOLO.MAC	COMUNI.MAC	CTREE.MAC	DIAGS.MAC
!	DTREE.MAC	EBCASC.MAC	EXPGEN.MAC	FNDPOP.MAC
!	FTDEFS.MAC	GETASY.MAC	GETCPY.MAC	GETGEN.MAC
!	GETITM.MAC	GETTAG.MAC	IFGEN.MAC	IMPURE.MAC
!	INTERM.MAC	IOGEN.MAC	IPCGEN.MAC	LBLPRM.MAC
!	MATGEN.MAC	MESGEN.MAC	MOVGEN.MAC	MSCGEN.MAC
!	OPCTAB.MAC	P.MAC		PMATCH.MAC	PSCAN.MAC
!	PURE.MAC	PUTAS1.MAC	PUTAS2.MAC	PUTAS3.MAC
!	PUTBIN.MAC	PUTCPY.MAC	PUTERA.MAC	PUTGEN.MAC
!	PUTLST.MAC	RPWGEN.MAC	SQUIRL.MAC	SRTCRF.MAC
!	SRTGEN.MAC	STINFL.MAC	STRGEN.MAC	TABLES.MAC
!	TRYNAM.MAC	XFRGEN.MAC	XPAND.MAC	XPNPPL.MAC
!
!IF MAKING A DEBUG VERSION, THE FOLLOWING ARE ALSO REQUIRED
!
!	HANDAN.MAC	TRACER.MAC
!
!IF MAKING A MULTI-SEGMENT VERSION, THE FOLLOWING ARE ALSO REQUIRED
!
!	PURAB.MAC	PUREC.MAC	PURED.MAC	PUREE.MAC
!	PUREO.MAC	PURFG.MAC
!
!IF MAKING A DBMS COBOL, THE FOLLOWING ARE ALSO REQUIRED:
!
!	CMLSYM.MAC	DBDML.MAC	DBGETF.MAC	DBSDCL.MAC
!	DMLERR.MAC	DMLIO.MAC	DMLVOK.MAC	GENDCL.MAC
!	STRUNV.MAC	STRDCL.MAC
!	SCHIO1.REL	STRHI.REL
!
!TO LOAD COBOL ONE OF THE FOLOWING SETS OF CMD FILES ARE REQUIRED:
!
!MULTI-SEG, NOT DEBUG, NOT DBMS
!
!	PAB.CMD		PC.CMD		PD.CMD		PE.CMD
!	PO.CMD		PFG.CMD		PK.CMD
!
!MULTI-SEG, DEBUG, NOT DBMS
!
!	PABD.CMD	PCD.CMD		PDD.CMD		PED.CMD
!	POD.CMD		PFGD.CMD	PKD.CMD
!
!MULTI-SEGMENT, NOT DEBUG, DBMS
!
!	PABB.CMD	PCB.CMD		PDB.CMD		PE.CMD
!	PO.CMD		PFG.CMD		PK.CMD
!
!MULTI-SEG, DEBUG, DBMS
!
!	PABDB.CMD	PCDB.CMD	PDDB.CMD	PED.CMD
!	POD.CMD		PFGD.CMD	PKD.CMD
!
!ONE SEGMENT, NOT DEBUG, NOT DBMS
!
!	ALL.CMD
!
!ONE SEGMENT, DEBUG, NOT DBMS
!
!	ALLD.CMD
!
!ONE SEGMENT, NOT DEBUG, DBMS
!
!	ALLB.CMD
!
!ONE SEGMENT, DEBUG, DBMS
!
!	ALLDB.CMD
!
!TO TEST THE FEATURES TEST SWITCH SETTINGS THE FOLLOWING IS REQUIRED:
!
!	COBTST.MAC
!
!
!OUTPUT:	MULTI-SEGMENT			ONE SEGMENT
!
!FOR COBOL-68
!	COBOL.EXE	COBOL.MAP		COBOL.EXE
!	COBOLC.EXE	COBOLC.MAP		COBOL.MAP
!	COBOLD.EXE	COBOLD.MAP		COBOL.GLB
!	COBOLE.EXE	COBOLE.MAP
!	COBOLO.EXE	COBOLO.MAP
!	COBOLF.EXE	COBOLF.MAP
!	COBOLK.EXE	COBOLK.MAP
!	COBOL.GLB
!
!FOR COBOL-74
!	CBL74.EXE	CBL74.MAP		CBL74.EXE
!	CBL74C.EXE	CBL74C.MAP		CBL74.MAP
!	CBL74D.EXE	CBL74D.MAP		CBL74.GLB
!	CBL74E.EXE	CBL74E.MAP
!	CBL74O.EXE	CBL74O.MAP
!	CBL74F.EXE	CBL74F.MAP
!	CBL74K.EXE	CBL74K.MAP
!	CBL74.GLB
!
!OUTPUT LISTINGS:
!		COBOL.LOG
!
!
!
.CHKPNT CK1A
CK1A::
!
.ERROR
.SET WATCH VERSION
!SET UP THE DEFAULT LOGICAL NAMES
!
.SET DEFAULT PROTECTION 015
.ASSIGN DEC: SYS:
.ASSIGN DEC: UNV:
.ASSIGN DEC: REL:
.ASSIGN DSK: C68:
.ASSIGN DSK: C74:
!IF YOU CAN USE THE PATH COMMAND
.PATH CS:=CBL1:[10,131001]
.PATH SB:=CBL1:[10,131015]
.PATH LIB:/SEARCH=CS:,SB:
!OTHERWISE
!.R SETSRC
!*LIB:[10,131001]
!.ASS LIB: CS:
!.ASSIGN DSK: SB:
.IF (ERROR) !IGNORE IT
!
!SEE WHAT WE ARE USING
.R DIRECT
*TTY:=/CHECKSUM/WIDTH:90 SYS:PIP.EXE,MACRO.EXE,LINK.EXE,LNK???.EXE,DIRECT.EXE,COMPIL.EXE,CREF.EXE,GLOB.EXE,HELPER.REL,DDT.REL
.IF (ERROR) . !IGNORE ANY ERRORS.
.R DIRECT
*TTY:=/CHECKSUM/WIDTH:90 DSK:COBASM.MAC,CS:COBVER.MAC,CHREQV.MAC,COMUNI.MAC,FTDEFS.MAC,INTERM.MAC,LBLPRM.MAC,P.MAC,TABLES.MAC,OPCTAB.MAC
*TTY:=/CHECKSUM/WIDTH:90 CS:ASCEBC.MAC,ASCSIX.MAC,IMPURE.MAC,SQUIRL.MAC,BTREE.MAC
*TTY:=/CHECKSUM/WIDTH:90 CS:XPNPPL.MAC,XPAND.MAC,GETITM.MAC,STINFL.MAC,CLRNAM.MAC
*TTY:=/CHECKSUM/WIDTH:90 CS:TRYNAM.MAC,PUTGEN.MAC,PUTCPY.MAC,PUTERA.MAC,COBCOM.MAC
*TTY:=/CHECKSUM/WIDTH:90 CS:PUTLST.MAC,COBOLB.MAC,COBOLA.MAC,CLEANC.MAC,CTREE.MAC
*TTY:=/CHECKSUM/WIDTH:90 CS:FNDPOP.MAC,GETTAG.MAC,PSCAN.MAC,PUTAS1.MAC,PUTAS2.MAC
*TTY:=/CHECKSUM/WIDTH:90 CS:COBOLC.MAC,CLEAND.MAC,CLEANT.MAC,DTREE.MAC,COBOLD.MAC
*TTY:=/CHECKSUM/WIDTH:90 CS:BISGEN.MAC,CMNGEN.MAC,EXPGEN.MAC,GETGEN.MAC,IFGEN.MAC
*TTY:=/CHECKSUM/WIDTH:90 CS:IOGEN.MAC,IPCGEN.MAC,MATGEN.MAC,MESGEN.MAC,MOVGEN.MAC
*TTY:=/CHECKSUM/WIDTH:90 CS:MSCGEN.MAC,PUTAS3.MAC,RPWGEN.MAC,SRTGEN.MAC,STRGEN.MAC
*TTY:=/CHECKSUM/WIDTH:90 CS:XFRGEN.MAC,COBOLE.MAC,DIAGS.MAC,GETASY.MAC
*TTY:=/CHECKSUM/WIDTH:90 CS:GETCPY.MAC,PUTBIN.MAC,SRTCRF.MAC
*TTY:=/CHECKSUM/WIDTH:90 CS:COBOLG.MAC,COBOLF.MAC,EBCASC.MAC,COBOLK.MAC
*TTY:=/CHECKSUM/WIDTH:90 CS:COBOLO.MAC,PMATCH.MAC,HANDAN.MAC,TRACER.MAC,COBTST.MAC
*TTY:=/CHECKSUM/WIDTH:90 CS:GENDCL.MAC,DBSDCL.MAC,STRUNV.MAC,STRDCL.MAC
*TTY:=/CHECKSUM/WIDTH:90 CS:DMLERR.MAC,DMLIO.MAC,CMLSYM.MAC,DMLVOK.MAC,DBDML.MAC,DBGETF.MAC,SCHIO1.REL,STRHI.REL
*TTY:=/CHECKSUM/WIDTH:90 CS:PURE.MAC,PURAB.MAC,PUREC.MAC,PURED.MAC,PUREE.MAC,PUREO.MAC,PURFG.MAC
*TTY:=/CHECKSUM/WIDTH:90 CS:PAB.CMD,PC.CMD,PD.CMD,PE.CMD,PO.CMD,PFG.CMD,PK.CMD
*TTY:=/CHECKSUM/WIDTH:90 CS:PABD.CMD,PCD.CMD,PDD.CMD,PED.CMD,POD.CMD,PFGD.CMD,PKD.CMD
*TTY:=/CHECKSUM/WIDTH:90 CS:PABB.CMD,PCB.CMD,PDB.CMD,PABDB.CMD,PCDB.CMD,PDDB.CMD
*TTY:=/CHECKSUM/WIDTH:90 CS:COBOL.CTL,ALL.CMD,ALLB.CMD,ALLD.CMD,ALLDB.CMD
.IF (ERROR) . !IGNORE ANY ERRORS.
!
!ASSEMBLE SOURCES
!
!ASSEMBLE THE UNIVERSALS FIRST.
.TYPE LISTEM.MAC
.IF (ERROR) .GOTO NOLIS1
!
!HERE IF CREF LISTING WANTED
!
.R MACRO
*COBASM,COBASM/C=COBASM
*INTERM,INTERM/C=INTERM
*COBVER,COBVER/C=COBVER
*COMUNI,COMUNI/C=COMUNI
*FTDEFS,FTDEFS/C=FTDEFS
*LBLPRM,LBLPRM/C=LBLPRM
*P,P/C=P
*CHREQV,CHREQV/C=CHREQV
*TABLES,TABLES/C=TABLES
*OPCTAB,OPCTAB/C=OPCTAB
*COBTST=COBTST
.R LINK
*COBTST/GO
.SAVE COBTST
.IF (ERROR) .GOTO TRUBLE
!
!
!!NOW WE CAN ASSEMBLE THE REST OF THE SOURCES
.CHKPNT CK1B
CK1B::
.ERROR
.SET WATCH VERSION
!SET UP THE DEFAULT LOGICAL NAMES
!
.SET DEFAULT PROTECTION 015
.ASSIGN DEC: SYS:
.ASSIGN DEC: UNV:
.ASSIGN DEC: REL:
.ASSIGN DSK: C68:
.ASSIGN DSK: C74:
!IF YOU CAN USE THE PATH COMMAND
.PATH CS:=CBL1:[10,131001]
.PATH SB:=CBL1:[10,131015]
.PATH LIB:/SEARCH=CS:,SB:
!OTHERWISE
!.R SETSRC
!*LIB:[10,131001]
!.ASS LIB: CS:
!.ASSIGN DSK: SB:
.IF (ERROR) !IGNORE IT
.R MACRO
*ASCEBC,ASCEBC/C=ASCEBC
*ASCSIX,ASCSIX/C=ASCSIX
*BISGEN,BISGEN/C=BISGEN
*BTREE,BTREE/C=BTREE
*CLEANC,CLEANC/C=CLEANC
*CLEAND,CLEAND/C=CLEAND
*CLEANT,CLEANT/C=CLEANT
*CLRNAM,CLRNAM/C=CLRNAM
*CMNGEN,CMNGEN/C=CMNGEN
*COBCOM,COBCOM/C=COBCOM
*COBOLA,COBOLA/C=COBOLA
*COBOLB,COBOLB/C=COBOLB
*COBOLC,COBOLC/C=COBOLC
*COBOLD,COBOLD/C=COBOLD
*COBOLE,COBOLE/C=COBOLE
*COBOLF,COBOLF/C=COBOLF
*COBOLG,COBOLG/C=COBOLG
*COBOLK,COBOLK/C=COBOLK
*COBOLO,COBOLO/C=COBOLO
.IF (ERROR) .GOTO TRUBLE
!
.CHKPNT CK1C
CK1C::
.ERROR
.SET WATCH VERSION
!SET UP THE DEFAULT LOGICAL NAMES
!
.SET DEFAULT PROTECTION 015
.ASSIGN DEC: SYS:
.ASSIGN DEC: UNV:
.ASSIGN DEC: REL:
.ASSIGN DSK: C68:
.ASSIGN DSK: C74:
!IF YOU CAN USE THE PATH COMMAND
.PATH CS:=CBL1:[10,131001]
.PATH SB:=CBL1:[10,131015]
.PATH LIB:/SEARCH=CS:,SB:
!OTHERWISE
!.R SETSRC
!*LIB:[10,131001]
!.ASS LIB: CS:
!.ASSIGN DSK: SB:
.IF (ERROR) !IGNORE IT
.R MACRO
*CTREE,CTREE/C=CTREE
*DIAGS,DIAGS/C=DIAGS
*DTREE,DTREE/C=DTREE
*EBCASC,EBCASC/C=EBCASC
*EXPGEN,EXPGEN/C=EXPGEN
*FNDPOP,FNDPOP/C=FNDPOP
*GETASY,GETASY/C=GETASY
*GETCPY,GETCPY/C=GETCPY
*GETGEN,GETGEN/C=GETGEN
*GETITM,GETITM/C=GETITM
*GETTAG,GETTAG/C=GETTAG
*IFGEN,IFGEN/C=IFGEN
*IMPURE,IMPURE/C=IMPURE
*IOGEN,IOGEN/C=IOGEN
*IPCGEN,IPCGEN/C=IPCGEN
*MATGEN,MATGEN/C=MATGEN
*MESGEN,MESGEN/C=MESGEN
*MOVGEN,MOVGEN/C=MOVGEN
*MSCGEN,MSCGEN/C=MSCGEN
*PMATCH,PMATCH/C=PMATCH
*PSCAN,PSCAN/C=PSCAN
.RUN COBTST
*ONESEG
.IF (ERROR) .GOTO MSEG
.R MACRO
*PURE,PURE/C=PURE
.GOTO NEXT
MSEG::
.R MACRO
*PURAB,PURAB/C=PURAB,PURE
*PUREC,PUREC/C=PUREC,PURE
*PURED,PURED/C=PURED,PURE
*PUREE,PUREE/C=PUREE,PURE
*PUREO,PUREO/C=PUREO,PURE
*PURFG,PURFG/C=PURFG,PURE
NEXT::.IF (ERROR) .GOTO TRUBLE
!
.CHKPNT CK1D
CK1D::
.ERROR
.SET WATCH VERSION
!SET UP THE DEFAULT LOGICAL NAMES
!
.SET DEFAULT PROTECTION 015
.ASSIGN DEC: SYS:
.ASSIGN DEC: UNV:
.ASSIGN DEC: REL:
.ASSIGN DSK: C68:
.ASSIGN DSK: C74:
!IF YOU CAN USE THE PATH COMMAND
.PATH CS:=CBL1:[10,131001]
.PATH SB:=CBL1:[10,131015]
.PATH LIB:/SEARCH=CS:,SB:
!OTHERWISE
!.R SETSRC
!*LIB:[10,131001]
!.ASS LIB: CS:
!.ASSIGN DSK: SB:
.IF (ERROR) !IGNORE IT
.R MACRO
*PUTAS1,PUTAS1/C=PUTAS1
*PUTAS2,PUTAS2/C=PUTAS2
*PUTAS3,PUTAS3/C=PUTAS3
*PUTBIN,PUTBIN/C=PUTBIN
*PUTCPY,PUTCPY/C=PUTCPY
*PUTERA,PUTERA/C=PUTERA
*PUTGEN,PUTGEN/C=PUTGEN
*PUTLST,PUTLST/C=PUTLST
*RPWGEN,RPWGEN/C=RPWGEN
*SQUIRL,SQUIRL/C=SQUIRL
*SRTCRF,SRTCRF/C=SRTCRF
*SRTGEN,SRTGEN/C=SRTGEN
*STINFL,STINFL/C=STINFL
*STRGEN,STRGEN/C=STRGEN
*TRYNAM,TRYNAM/C=TRYNAM
*XFRGEN,XFRGEN/C=XFRGEN
*XPAND,XPAND/C=XPAND
*XPNPPL,XPNPPL/C=XPNPPL
.IF (ERROR) .GOTO TRUBLE
!
!NOW ASSEMBLE THE DEBUG MODULES
!
.RUN COBTST
*DEBUG
.IF (ERROR) .GOTO NODEB
.R MACRO
*HANDAN,HANDAN/C=HANDAN
*TRACER,TRACER/C=TRACER
.IF (ERROR) .GOTO TRUBLE
!
NODEB::
!NOW ASSEMBLE THE DBMS MODULES
!
.RUN COBTST
*DBMS
.IF (ERROR) .GOTO LZT !NOT DBMS
!ASSEMBLE THE UNIVERSALS FIRST
.R MACRO
*CMLSYM,CMLSYM/C=CMLSYM
*GENDCL,GENDCL/C=GENDCL
*DBSDCL,DBSDCL/C=DBSDCL
*STRUNV,STRUNV/C=STRUNV
*STRDCL,STRDCL/C=STRDCL
!
!NOW ASSEMBLE THE REST OF THE MODULES
.R MACRO
*DBDML,DBDML/C=DBDML
*DBGETF,DBGETF/C=DBGETF
*CMLVOK,CMLVOK/C=DMLVOK
*CMLERR,CMLERR/C=DMLERR
*CMLIO,CMLIO/C=DMLIO
.IF (ERROR) .GOTO TRUBLE
!
!NOW MAKE THE .LZT FILES
LZT::
.CHKPNT CK1E
CK1E::
.ERROR
.SET WATCH VERSION
!SET UP THE DEFAULT LOGICAL NAMES
!
.SET DEFAULT PROTECTION 015
.ASSIGN DEC: SYS:
.ASSIGN DEC: UNV:
.ASSIGN DEC: REL:
.ASSIGN DSK: C68:
.ASSIGN DSK: C74:
!IF YOU CAN USE THE PATH COMMAND
.PATH CS:=CBL1:[10,131001]
.PATH SB:=CBL1:[10,131015]
.PATH LIB:/SEARCH=CS:,SB:
!OTHERWISE
!.R SETSRC
!*LIB:[10,131001]
!.ASS LIB: CS:
!.ASSIGN DSK: SB:
.IF (ERROR) !IGNORE IT
.R CREF
*DSK:COBASM.LZT=COBASM
*DSK:INTERM.LZT=INTERM
*DSK:COBVER.LZT=COBVER
*DSK:COMUNI.LZT=COMUNI
*DSK:FTDEFS.LZT=FTDEFS
*DSK:LBLPRM.LZT=LBLPRM
*DSK:P.LZT=P
*DSK:CHREQV.LZT=CHREQV
*DSK:TABLES.LZT=TABLES
*DSK:OPCTAB.LZT=OPCTAB
*DSK:ASCEBC.LZT=ASCEBC
*DSK:ASCSIX.LZT=ASCSIX
*DSK:BISGEN.LZT=BISGEN
*DSK:BTREE.LZT=BTREE
*DSK:CLEANC.LZT=CLEANC
*DSK:CLEAND.LZT=CLEAND
*DSK:CLEANT.LZT=CLEANT
*DSK:CLRNAM.LZT=CLRNAM
*DSK:CMNGEN.LZT=CMNGEN
*DSK:COBCOM.LZT=COBCOM
*DSK:COBOLA.LZT=COBOLA
*DSK:COBOLB.LZT=COBOLB
*DSK:COBOLC.LZT=COBOLC
*DSK:COBOLD.LZT=COBOLD
*DSK:COBOLE.LZT=COBOLE
*DSK:COBOLF.LZT=COBOLF
*DSK:COBOLG.LZT=COBOLG
*DSK:COBOLK.LZT=COBOLK
*DSK:COBOLO.LZT=COBOLO
*DSK:CTREE.LZT=CTREE
*DSK:DIAGS.LZT=DIAGS
*DSK:DTREE.LZT=DTREE
*DSK:EBCASC.LZT=EBCASC
*DSK:EXPGEN.LZT=EXPGEN
*DSK:FNDPOP.LZT=FNDPOP
*DSK:GETASY.LZT=GETASY
*DSK:GETCPY.LZT=GETCPY
*DSK:GETGEN.LZT=GETGEN
*DSK:GETITM.LZT=GETITM
*DSK:GETTAG.LZT=GETTAG
*DSK:IFGEN.LZT=IFGEN
*DSK:IMPURE.LZT=IMPURE
*DSK:IOGEN.LZT=IOGEN
*DSK:IPCGEN.LZT=IPCGEN
*DSK:MATGEN.LZT=MATGEN
*DSK:MESGEN.LZT=MESGEN
*DSK:MOVGEN.LZT=MOVGEN
*DSK:MSCGEN.LZT=MSCGEN
*DSK:PMATCH.LZT=PMATCH
*DSK:PSCAN.LZT=PSCAN
.RUN COBTST
*ONESEG
.IF (ERROR) .GOTO MSEG
.R CREF
*DSK:PURE.LZT=PURE
.GOTO NEXT
MSEG::
.R CREF
*DSK:PURAB.LZT=PURAB
*DSK:PUREC.LZT=PUREC
*DSK:PURED.LZT=PURED
*DSK:PUREE.LZT=PUREE
*DSK:PUREO.LZT=PUREO
*DSK:PURFG.LZT=PURFG
NEXT::
.R CREF
*DSK:PUTAS1.LZT=PUTAS1
*DSK:PUTAS2.LZT=PUTAS2
*DSK:PUTAS3.LZT=PUTAS3
*DSK:PUTBIN.LZT=PUTBIN
*DSK:PUTCPY.LZT=PUTCPY
*DSK:PUTERA.LZT=PUTERA
*DSK:PUTGEN.LZT=PUTGEN
*DSK:PUTLST.LZT=PUTLST
*DSK:RPWGEN.LZT=RPWGEN
*DSK:SQUIRL.LZT=SQUIRL
*DSK:SRTCRF.LZT=SRTCRF
*DSK:SRTGEN.LZT=SRTGEN
*DSK:STINFL.LZT=STINFL
*DSK:STRGEN.LZT=STRGEN
*DSK:TRYNAM.LZT=TRYNAM
*DSK:XFRGEN.LZT=XFRGEN
*DSK:XPAND.LZT=XPAND
*DSK:XPNPPL.LZT=XPNPPL
.IF (ERROR) .!TROUBLE MAKING .LZT FILES
!
!NOW ASSEMBLE THE DEBUG MODULES
!
.RUN COBTST
*DEBUG
.IF (ERROR) .GOTO NODEB
.R CREF
*DSK:HANDAN.LZT=HANDAN
*DSK:TRACER.LZT=TRACER
.IF (ERROR) !TROUBLE MAKING .LZT FILES
!
NODEB::
.RUN COBTST
*DBMS
.IF (ERROR) .GOTO DONCRF !NOT DBMS
.R CREF
*DSK:CMLSYM.LZT=CMLSYM
*DSK:GENDCL.LZT=GENDCL
*DSK:DBSDCL.LZT=DBSDCL
*DSK:STRUNV.LZT=STRUNV
*DSK:STRDCL.LZT=STRDCL
*DSK:DBDML.LZT=DBDML
*DSK:DBGETF.LZT=DBGETF
*DSK:CMLVOK.LZT=CMLVOK
*DSK:CMLERR.LZT=CMLERR
*DSK:CMLIO.LZT=CMLIO
.IF (ERROR) .!TROUBLE MAKING .LZT FILES
.GOTO DONCRF
NOLIS1::
!HERE IF CREF LISTINGS NOT WANTED
.ERROR
.SET WATCH VERSION
!SET UP THE DEFAULT LOGICAL NAMES
!
.SET DEFAULT PROTECTION 015
.ASSIGN DEC: SYS:
.ASSIGN DEC: UNV:
.ASSIGN DEC: REL:
.ASSIGN DSK: C68:
.ASSIGN DSK: C74:
!IF YOU CAN USE THE PATH COMMAND
.PATH CS:=CBL1:[10,131001]
.PATH SB:=CBL1:[10,131015]
.PATH LIB:/SEARCH=CS:,SB:
!OTHERWISE
!.R SETSRC
!*LIB:[10,131001]
!.ASS LIB: CS:
!.ASSIGN DSK: SB:
.IF (ERROR) !IGNORE IT
.R MACRO
*COBASM=COBASM
*INTERM=INTERM
*COBVER=COBVER
*COMUNI=COMUNI
*FTDEFS=FTDEFS
*LBLPRM=LBLPRM
*P=P
*CHREQV=CHREQV
*TABLES=TABLES
*OPCTAB=OPCTAB
*COBTST=COBTST
.R LINK
*COBTST/GO
.SAVE COBTST
.IF (ERROR) .GOTO TRUBLE
!
!
!NOW WE CAN ASSEMBLE THE REST OF THE MODULES.
.CHKPNT CK1F
CK1F::
.ERROR
.SET WATCH VERSION
!SET UP THE DEFAULT LOGICAL NAMES
!
.SET DEFAULT PROTECTION 015
.ASSIGN DEC: SYS:
.ASSIGN DEC: UNV:
.ASSIGN DEC: REL:
.ASSIGN DSK: C68:
.ASSIGN DSK: C74:
!IF YOU CAN USE THE PATH COMMAND
.PATH CS:=CBL1:[10,131001]
.PATH SB:=CBL1:[10,131015]
.PATH LIB:/SEARCH=CS:,SB:
!OTHERWISE
!.R SETSRC
!*LIB:[10,131001]
!.ASS LIB: CS:
!.ASSIGN DSK: SB:
.IF (ERROR) !IGNORE IT
.R MACRO
*ASCEBC=ASCEBC
*ASCSIX=ASCSIX
*BISGEN=BISGEN
*BTREE=BTREE
*CLEANC=CLEANC
*CLEAND=CLEAND
*CLEANT=CLEANT
*CLRNAM=CLRNAM
*CMNGEN=CMNGEN
*COBCOM=COBCOM
*COBOLA=COBOLA
*COBOLB=COBOLB
*COBOLC=COBOLC
*COBOLD=COBOLD
*COBOLE=COBOLE
*COBOLF=COBOLF
*COBOLG=COBOLG
*COBOLK=COBOLK
*COBOLO=COBOLO
.IF (ERROR) .GOTO TRUBLE
!
.CHKPNT CK1G
CK1G::
.ERROR
.SET WATCH VERSION
!SET UP THE DEFAULT LOGICAL NAMES
!
.SET DEFAULT PROTECTION 015
.ASSIGN DEC: SYS:
.ASSIGN DEC: UNV:
.ASSIGN DEC: REL:
.ASSIGN DSK: C68:
.ASSIGN DSK: C74:
!IF YOU CAN USE THE PATH COMMAND
.PATH CS:=CBL1:[10,131001]
.PATH SB:=CBL1:[10,131015]
.PATH LIB:/SEARCH=CS:,SB:
!OTHERWISE
!.R SETSRC
!*LIB:[10,131001]
!.ASS LIB: CS:
!.ASSIGN DSK: SB:
.IF (ERROR) !IGNORE IT
.R MACRO
*CTREE=CTREE
*DIAGS=DIAGS
*DTREE=DTREE
*EBCASC=EBCASC
*EXPGEN=EXPGEN
*FNDPOP=FNDPOP
*GETASY=GETASY
*GETCPY=GETCPY
*GETGEN=GETGEN
*GETITM=GETITM
*GETTAG=GETTAG
*IFGEN=IFGEN
*IMPURE=IMPURE
*IOGEN=IOGEN
*IPCGEN=IPCGEN
*MATGEN=MATGEN
*MESGEN=MESGEN
*MOVGEN=MOVGEN
*MSCGEN=MSCGEN
*PMATCH=PMATCH
*PSCAN=PSCAN
.RUN COBTST
*ONESEG
.IF (ERROR) .GOTO MSEG
.R MACRO
*PURE=PURE
.GOTO NEXT
MSEG::
.R MACRO
*PURAB=PURAB,PURE
*PUREC=PUREC,PURE
*PURED=PURED,PURE
*PUREE=PUREE,PURE
*PUREO=PUREO,PURE
*PURFG=PURFG,PURE
NEXT::.IF (ERROR) .GOTO TRUBLE
!
.CHKPNT CK1H
CK1H::
.ERROR
.SET WATCH VERSION
!SET UP THE DEFAULT LOGICAL NAMES
!
.SET DEFAULT PROTECTION 015
.ASSIGN DEC: SYS:
.ASSIGN DEC: UNV:
.ASSIGN DEC: REL:
.ASSIGN DSK: C68:
.ASSIGN DSK: C74:
!IF YOU CAN USE THE PATH COMMAND
.PATH CS:=CBL1:[10,131001]
.PATH SB:=CBL1:[10,131015]
.PATH LIB:/SEARCH=CS:,SB:
!OTHERWISE
!.R SETSRC
!*LIB:[10,131001]
!.ASS LIB: CS:
!.ASSIGN DSK: SB:
.IF (ERROR) !IGNORE IT
.R MACRO
*PUTAS1=PUTAS1
*PUTAS2=PUTAS2
*PUTAS3=PUTAS3
*PUTBIN=PUTBIN
*PUTCPY=PUTCPY
*PUTERA=PUTERA
*PUTGEN=PUTGEN
*PUTLST=PUTLST
*RPWGEN=RPWGEN
*SQUIRL=SQUIRL
*SRTCRF=SRTCRF
*SRTGEN=SRTGEN
*STINFL=STINFL
*STRGEN=STRGEN
*TRYNAM=TRYNAM
*XFRGEN=XFRGEN
*XPAND=XPAND
*XPNPPL=XPNPPL
!
!NOW ASSEMBLE THE DEBUG MODULES
!
.RUN COBTST
*DEBUG
.IF (ERROR) .GOTO NODEB
.R MACRO
*HANDAN=HANDAN
*TRACER=TRACER
.IF (ERROR) .GOTO TRUBLE
!
NODEB::
!ASSEMBLE THE DBMS MODULES.
!
.RUN COBTST
*DBMS
.IF (ERROR) .GOTO DONCRF
!
!ASSEMBLE THE UNIVERSALS FIRST.
.R MACRO
*CMLSYM=CMLSYM
*GENDCL=GENDCL
*DBSDCL=DBSDCL
*STRUNV=STRUNV
*STRDCL=STRDCL
!
!NOW ASSEMBLE THE REST OF THE MODULES.
.R MACRO
*DBDML=DBDML
*DBGETF=DBGETF
*CMLVOK=DMLVOK
*CMLERR=DMLERR
*CMLIO=DMLIO
.IF (ERROR) .GOTO TRUBLE
.GOTO DONCRF
DONCRF:: !NOW START TO LOAD
!
.CHKPNT CK1J
CK1J::
.ERROR
.SET WATCH VERSION
!SET UP THE DEFAULT LOGICAL NAMES
!
.SET DEFAULT PROTECTION 015
.ASSIGN DEC: SYS:
.ASSIGN DEC: UNV:
.ASSIGN DEC: REL:
.ASSIGN DSK: C68:
.ASSIGN DSK: C74:
!IF YOU CAN USE THE PATH COMMAND
.PATH CS:=CBL1:[10,131001]
.PATH SB:=CBL1:[10,131015]
.PATH LIB:/SEARCH=CS:,SB:
!OTHERWISE
!.R SETSRC
!*LIB:[10,131001]
!.ASS LIB: CS:
!.ASSIGN DSK: SB:
.IF (ERROR) !IGNORE IT
!
!SEE WHICH COMPILER TO LOAD (68 OR 74)
!
.RUN COBTST
*ANS68
.IF (ERROR) .GOTO PV20	!COBOL-74
!
PT20::
!SEE WHAT FLAVOUR OF COMPILER TO LOAD
!
.RUN COBTST
*ONESEG
.IF (ERROR) .GOTO PT24	!MULTI-SEG
.RUN COBTST
*DEBUG
.IF (ERROR) .GOTO PT21	!ONESEG, NOT DEBUG
.RUN COBTST
*DBMS
.IF (ERROR) .GOTO PT32	!ONESEG, DEBUG, NOT DBMS
.GOTO PT31		!ONESEG, DEBUG, DBMS
!
PT21::
.RUN COBTST
*DBMS
.IF (ERROR) .GOTO PT34	!ONESEG, NOT DEBUG, NOT DBMS
.GOTO PT33		!ONESEG, NOT DEBUG, DBMS
!
PT24::
.RUN COBTST
*DEBUG
.IF (ERROR) .GOTO PT25	!MULTI-SEG, NOT DEBUG
.RUN COBTST
*DBMS
.IF (ERROR) .GOTO PT36	!MULTI-SEG, DEBUG, NOT DBMS
.GOTO PT35		!MULTI-SEG, DEBUG, DBMS
!
PT25::
.RUN COBTST
*DBMS
.IF (ERROR) .GOTO PT38	!MULTI-SEG, NOT DEBUG, NOT DBMS
.GOTO PT37		!MULTI-SEG, NOT DEBUG, DBMS
!
!
PT31::			!ONESEG, DEBUG, DBMS
!
.R LINK
*COBOL/MAP=
*@ALLDB
.IF (ERROR) .GOTO TRUBLE
.SSAVE COBOL
.IF (ERROR) .GOTO TRUBLE
.GOTO LODON
!
!
PT32::			!ONESEG, DEBUG, NOT DBMS
!
.R LINK
*COBOL/MAP=
*@ALLD
.IF (ERROR) .GOTO TRUBLE
.SSAVE COBOL
.IF (ERROR) .GOTO TRUBLE
.GOTO LODON
!
!
PT33::			!ONESEG, NOT DEBUG, DBMS
!
.R LINK
*COBOL/MAP=
*@ALLB
.IF (ERROR) .GOTO TRUBLE
.SSAVE COBOL
.IF (ERROR) .GOTO TRUBLE
.GOTO LODON
!
!
PT34::			!ONESEG, NOT DEBUG, NOT DBMS
!
.R LINK
*COBOL/MAP=
*@ALL
.IF (ERROR) .GOTO TRUBLE
.SSAVE COBOL
.IF (ERROR) .GOTO TRUBLE
.GOTO LODON
!
!
PT35::			!MULTI-SEG, DEBUG, DBMS
!
.R LINK
*COBOL/MAP=
*@PABDB
.IF (ERROR) .GOTO TRUBLE
.SSAVE COBOL
.IF (ERROR) .GOTO TRUBLE
!
.R LINK
*COBOLC/MAP=
*@PCDB
.IF (ERROR) .GOTO TRUBLE
.SSAVE DSK:COBOLC
.IF (ERROR) .GOTO TRUBLE
!
.R LINK
*COBOLD/MAP=
*@PDDB
.IF (ERROR) .GOTO TRUBLE
.SSAVE DSK:COBOLD
.IF (ERROR) .GOTO TRUBLE
!
.R LINK
*COBOLE/MAP=
*@PED
.IF (ERROR) .GOTO TRUBLE
.SSAVE DSK:COBOLE
.IF (ERROR) .GOTO TRUBLE
!
.R LINK
*COBOLO/MAP=
*@POD
.IF (ERROR) .GOTO TRUBLE
.SSAVE DSK:COBOLO
.IF (ERROR) .GOTO TRUBLE
!
.R LINK
*COBOLF/MAP=
*@PFGD
.IF (ERROR) .GOTO TRUBLE
.SSAVE DSK:COBOLF
.IF (ERROR) .GOTO TRUBLE
!
.R LINK
*COBOLK/MAP=
*@PKD
.IF (ERROR) .GOTO TRUBLE
.SSAVE DSK:COBOLK
.IF (ERROR) .GOTO TRUBLE
.GOTO LODON
!
!
PT36::			!MULTI-SEG, DEBUG, NOT DBMS
!
.R LINK
*COBOL/MAP=
*@PABD
.IF (ERROR) .GOTO TRUBLE
.SSAVE DSK:COBOL
.IF (ERROR) .GOTO TRUBLE
.R LINK
*COBOLC/MAP=
*@PCD
.IF (ERROR) .GOTO TRUBLE
.SSAVE DSK:COBOLC
.IF (ERROR) .GOTO TRUBLE
.R LINK
*COBOLD/MAP=
*@PDD
.IF (ERROR) .GOTO TRUBLE
.SSAVE DSK:COBOLD
.IF (ERROR) .GOTO TRUBLE
.R LINK
*COBOLE/MAP=
*@PED
.IF (ERROR) .GOTO TRUBLE
.SSAVE DSK:COBOLE
.IF (ERROR) .GOTO TRUBLE
.R LINK
*COBOLO/MAP=
*@POD
.IF (ERROR) .GOTO TRUBLE
.SSAVE DSK:COBOLO
.IF (ERROR) .GOTO TRUBLE
.R LINK
*COBOLF/MAP=
*@PFGD
.IF (ERROR) .GOTO TRUBLE
.SSAVE DSK:COBOLF
.IF (ERROR) .GOTO TRUBLE
.R LINK
*COBOLK/MAP=
*@PKD
.IF (ERROR) .GOTO TRUBLE
.SSAVE DSK:COBOLK
.IF (ERROR) .GOTO TRUBLE
.GOTO LODON
!
!
PT37::		!MULTI-SEGMENT, NOT DEBUG, DBMS
!
.R LINK
*COBOL/MAP=
*@PABB
.IF (ERROR) .GOTO TRUBLE
.SSAVE DSK:COBOL
.IF (ERROR) .GOTO TRUBLE
!
.R LINK
*COBOLC/MAP=
*@PCB
.IF (ERROR) .GOTO TRUBLE
.SSAVE DSK:COBOLC
.IF (ERROR) .GOTO TRUBLE
!
.R LINK
*COBOLD/MAP=
*@PDB
.IF (ERROR) .GOTO TRUBLE
.SSAVE DSK:COBOLD
.IF (ERROR) .GOTO TRUBLE
!
.R LINK
*COBOLE/MAP=
*@PE
.IF (ERROR) .GOTO TRUBLE
.SSAVE DSK:COBOLE
.IF (ERROR) .GOTO TRUBLE
!
.R LINK
*COBOLO/MAP=
*@PO
.IF (ERROR) .GOTO TRUBLE
.SSAVE DSK:COBOLO
.IF (ERROR) .GOTO TRUBLE
!
.R LINK
*COBOLF/MAP=
*@PFG
.IF (ERROR) .GOTO TRUBLE
.SSAVE DSK:COBOLF
.IF (ERROR) .GOTO TRUBLE
!
.R LINK
*COBOLK/MAP=
*@PK
.IF (ERROR) .GOTO TRUBLE
.SSAVE DSK:COBOLK
.IF (ERROR) .GOTO TRUBLE
.GOTO LODON
!
!
PT38::		!MULTI-SEG, NOT DEBUG, NOT DBMS
!
.R LINK
*COBOL/MAP=
*@PAB
.IF (ERROR) .GOTO TRUBLE
.SSAVE DSK:COBOL
.IF (ERROR) .GOTO TRUBLE
.R LINK
*COBOLC/MAP=
*@PC
.IF (ERROR) .GOTO TRUBLE
.SSAVE DSK:COBOLC
.IF (ERROR) .GOTO TRUBLE
.R LINK
*COBOLD/MAP=
*@PD
.IF (ERROR) .GOTO TRUBLE
.SSAVE DSK:COBOLD
.IF (ERROR) .GOTO TRUBLE
.R LINK
*COBOLE/MAP=
*@PE
.IF (ERROR) .GOTO TRUBLE
.SSAVE DSK:COBOLE
.IF (ERROR) .GOTO TRUBLE
.R LINK
*COBOLO/MAP=
*@PO
.IF (ERROR) .GOTO TRUBLE
.SSAVE DSK:COBOLO
.IF (ERROR) .GOTO TRUBLE
.R LINK
*COBOLF/MAP=
*@PFG
.IF (ERROR) .GOTO TRUBLE
.SSAVE DSK:COBOLF
.IF (ERROR) .GOTO TRUBLE
.R LINK
*COBOLK/MAP=
*@PK
.IF (ERROR) .GOTO TRUBLE
.SSAVE DSK:COBOLK
.IF (ERROR) .GOTO TRUBLE
.GOTO LODON
PV20::	!COBOL-74
!SEE WHAT FLAVOUR OF COMPILER TO LOAD
!
.RUN COBTST
*ONESEG
.IF (ERROR) .GOTO PV24	!MULTI-SEG
.RUN COBTST
*DEBUG
.IF (ERROR) .GOTO PV21	!ONESEG, NOT DEBUG
.RUN COBTST
*DBMS
.IF (ERROR) .GOTO PV32	!ONESEG, DEBUG, NOT DBMS
.GOTO PV31		!ONESEG, DEBUG, DBMS
!
PV21::
.RUN COBTST
*DBMS
.IF (ERROR) .GOTO PV34	!ONESEG, NOT DEBUG, NOT DBMS
.GOTO PV33		!ONESEG, NOT DEBUG, DBMS
!
PV24::
.RUN COBTST
*DEBUG
.IF (ERROR) .GOTO PV25	!MULTI-SEG, NOT DEBUG
.RUN COBTST
*DBMS
.IF (ERROR) .GOTO PV36	!MULTI-SEG, DEBUG, NOT DBMS
.GOTO PV35		!MULTI-SEG, DEBUG, DBMS
!
PV25::
.RUN COBTST
*DBMS
.IF (ERROR) .GOTO PV38	!MULTI-SEG, NOT DEBUG, NOT DBMS
.GOTO PV37		!MULTI-SEG, NOT DEBUG, DBMS
!
!
PV31::			!ONESEG, DEBUG, DBMS
!
.R LINK
*CBL74/MAP=
*@ALLDB
.IF (ERROR) .GOTO TRUBLE
.SSAVE CBL74
.IF (ERROR) .GOTO TRUBLE
.GOTO LODON
!
!
PV32::			!ONESEG, DEBUG, NOT DBMS
!
.R LINK
*CBL74/MAP=
*@ALLD
.IF (ERROR) .GOTO TRUBLE
.SSAVE CBL74
.IF (ERROR) .GOTO TRUBLE
.GOTO LODON
!
!
PV33::			!ONESEG, NOT DEBUG, DBMS
!
.R LINK
*CBL74/MAP=
*@ALLB
.IF (ERROR) .GOTO TRUBLE
.SSAVE CBL74
.IF (ERROR) .GOTO TRUBLE
.GOTO LODON
!
!
PV34::			!ONESEG, NOT DEBUG, NOT DBMS
!
.R LINK
*CBL74/MAP=
*@ALL
.IF (ERROR) .GOTO TRUBLE
.SSAVE CBL74
.IF (ERROR) .GOTO TRUBLE
.GOTO LODON
!
!
PV35::			!MULTI-SEG, DEBUG, DBMS
!
.R LINK
*CBL74/MAP=
*@PABDB
.IF (ERROR) .GOTO TRUBLE
.SSAVE CBL74
.IF (ERROR) .GOTO TRUBLE
!
.R LINK
*CBL74C/MAP=
*@PCDB
.IF (ERROR) .GOTO TRUBLE
.SSAVE DSK:CBL74C
.IF (ERROR) .GOTO TRUBLE
!
.R LINK
*CBL74D/MAP=
*@PDDB
.IF (ERROR) .GOTO TRUBLE
.SSAVE DSK:CBL74D
.IF (ERROR) .GOTO TRUBLE
!
.R LINK
*CBL74E/MAP=
*@PED
.IF (ERROR) .GOTO TRUBLE
.SSAVE DSK:CBL74E
.IF (ERROR) .GOTO TRUBLE
!
.R LINK
*CBL74O/MAP=
*@POD
.IF (ERROR) .GOTO TRUBLE
.SSAVE DSK:CBL74O
.IF (ERROR) .GOTO TRUBLE
!
.R LINK
*CBL74F/MAP=
*@PFGD
.IF (ERROR) .GOTO TRUBLE
.SSAVE DSK:CBL74F
.IF (ERROR) .GOTO TRUBLE
!
.R LINK
*CBL74K/MAP=
*@PKD
.IF (ERROR) .GOTO TRUBLE
.SSAVE DSK:CBL74K
.IF (ERROR) .GOTO TRUBLE
.GOTO LODON
!
!
PV36::			!MULTI-SEG, DEBUG, NOT DBMS
!
.R LINK
*CBL74/MAP=
*@PABD
.IF (ERROR) .GOTO TRUBLE
.SSAVE DSK:CBL74
.IF (ERROR) .GOTO TRUBLE
.R LINK
*CBL74C/MAP=
*@PCD
.IF (ERROR) .GOTO TRUBLE
.SSAVE DSK:CBL74C
.IF (ERROR) .GOTO TRUBLE
.R LINK
*CBL74D/MAP=
*@PDD
.IF (ERROR) .GOTO TRUBLE
.SSAVE DSK:CBL74D
.IF (ERROR) .GOTO TRUBLE
.R LINK
*CBL74E/MAP=
*@PED
.IF (ERROR) .GOTO TRUBLE
.SSAVE DSK:CBL74E
.IF (ERROR) .GOTO TRUBLE
.R LINK
*CBL74O/MAP=
*@POD
.IF (ERROR) .GOTO TRUBLE
.SSAVE DSK:CBL74O
.IF (ERROR) .GOTO TRUBLE
.R LINK
*CBL74F/MAP=
*@PFGD
.IF (ERROR) .GOTO TRUBLE
.SSAVE DSK:CBL74F
.IF (ERROR) .GOTO TRUBLE
.R LINK
*CBL74K/MAP=
*@PKD
.IF (ERROR) .GOTO TRUBLE
.SSAVE DSK:CBL74K
.IF (ERROR) .GOTO TRUBLE
.GOTO LODON
!
!
PV37::		!MULTI-SEGMENT, NOT DEBUG, DBMS
!
.R LINK
*CBL74/MAP=
*@PABB
.IF (ERROR) .GOTO TRUBLE
.SSAVE DSK:CBL74
.IF (ERROR) .GOTO TRUBLE
!
.R LINK
*CBL74C/MAP=
*@PCB
.IF (ERROR) .GOTO TRUBLE
.SSAVE DSK:CBL74C
.IF (ERROR) .GOTO TRUBLE
!
.R LINK
*CBL74D/MAP=
*@PDB
.IF (ERROR) .GOTO TRUBLE
.SSAVE DSK:CBL74D
.IF (ERROR) .GOTO TRUBLE
!
.R LINK
*CBL74E/MAP=
*@PE
.IF (ERROR) .GOTO TRUBLE
.SSAVE DSK:CBL74E
.IF (ERROR) .GOTO TRUBLE
!
.R LINK
*CBL74O/MAP=
*@PO
.IF (ERROR) .GOTO TRUBLE
.SSAVE DSK:CBL74O
.IF (ERROR) .GOTO TRUBLE
!
.R LINK
*CBL74F/MAP=
*@PFG
.IF (ERROR) .GOTO TRUBLE
.SSAVE DSK:CBL74F
.IF (ERROR) .GOTO TRUBLE
!
.R LINK
*CBL74K/MAP=
*@PK
.IF (ERROR) .GOTO TRUBLE
.SSAVE DSK:CBL74K
.IF (ERROR) .GOTO TRUBLE
.GOTO LODON
!
!
PV38::		!MULTI-SEG, NOT DEBUG, NOT DBMS
!
.R LINK
*CBL74/MAP=
*@PAB
.IF (ERROR) .GOTO TRUBLE
.SSAVE DSK:CBL74
.IF (ERROR) .GOTO TRUBLE
.R LINK
*CBL74C/MAP=
*@PC
.IF (ERROR) .GOTO TRUBLE
.SSAVE DSK:CBL74C
.IF (ERROR) .GOTO TRUBLE
.R LINK
*CBL74D/MAP=
*@PD
.IF (ERROR) .GOTO TRUBLE
.SSAVE DSK:CBL74D
.IF (ERROR) .GOTO TRUBLE
.R LINK
*CBL74E/MAP=
*@PE
.IF (ERROR) .GOTO TRUBLE
.SSAVE DSK:CBL74E
.IF (ERROR) .GOTO TRUBLE
.R LINK
*CBL74O/MAP=
*@PO
.IF (ERROR) .GOTO TRUBLE
.SSAVE DSK:CBL74O
.IF (ERROR) .GOTO TRUBLE
.R LINK
*CBL74F/MAP=
*@PFG
.IF (ERROR) .GOTO TRUBLE
.SSAVE DSK:CBL74F
.IF (ERROR) .GOTO TRUBLE
.R LINK
*CBL74K/MAP=
*@PK
.IF (ERROR) .GOTO TRUBLE
.SSAVE DSK:CBL74K
.IF (ERROR) .GOTO TRUBLE
.GOTO LODON
LODON::!LOADING DONE
!
.CHKPNT CK1K
CK1K::
.ERROR
.SET WATCH VERSION
!SET UP THE DEFAULT LOGICAL NAMES
!
.SET DEFAULT PROTECTION 015
.ASSIGN DEC: SYS:
.ASSIGN DEC: UNV:
.ASSIGN DEC: REL:
.ASSIGN DSK: C68:
.ASSIGN DSK: C74:
!IF YOU CAN USE THE PATH COMMAND
.PATH CS:=CBL1:[10,131001]
.PATH SB:=CBL1:[10,131015]
.PATH LIB:/SEARCH=CS:,SB:
!OTHERWISE
!.R SETSRC
!*LIB:[10,131001]
!.ASS LIB: CS:
!.ASSIGN DSK: SB:
.IF (ERROR) !IGNORE IT
!
!GENERATE GLOB LISTING
!WE COULD HAVE ONE GLOB COMMAND FOR EACH CONFIGURATION
!BUT IT IS SIMPLER TO PUT THE OPTIONAL FILES IN ONE PLACE
!
.RUN COBTST
*ONESEG
.IF (NOERROR) .GOTO ONE
.R PIP
*FOO.REL/B=PURAB.REL,PUREC.REL,PURED.REL,PUREE.REL,PURFG.REL,PUREO.REL
.GOTO NEXT
ONE::
.R PIP
*FOO.REL/B=PURE.REL
NEXT::
.RUN COBTST
*DEBUG
.IF (ERROR) .GOTO NEXT
.R PIP
*FOO.REL/B=FOO.REL,HANDAN.REL,TRACER.REL
NEXT::
.RUN COBTST
*DBMS
.IF (ERROR) .GOTO NEXT
.R PIP
!THIS DOES NOT WORK WITH CURRENT PIP, SO DO IT SLOWLY
!*FOO.REL/B=FOO.REL,LIB:SCHIO1.REL,STRHI.REL,DSK:CMLERR.REL,CMLIO.REL,CMLSYM.REL,CMLVOK.REL,DBDML.REL,DBGETF.REL
*FOO1.REL=LIB:SCHIO1.REL
*FOO2.REL=LIB:STRHI.REL
*FOO.REL/B=FOO.REL,FOO1.REL,FOO2.REL,CMLERR.REL,CMLIO.REL,CMLSYM.REL,CMLVOK.REL,DBDML.REL,DBGETF.REL
.DELETE FOO1.REL,FOO2.REL
NEXT::
!
.RUN COBTST
*ANS68
.IF (ERROR) .GOTO V74	!COBOL-74
.RUN COBTST
*FT68274
.IF (ERROR) .GOTO V68	!COBOL-68
!
!HERE WHEN WE HAVE THE CONVERSION UTILITY
!DELETE FILES WE DON'T NEED
.DELETE COBOL.MAP,COBOL.GLB,COBOLO.EXE
.IF (ERROR)	!IGNORE
!DELETE ANY EXISTING EXE FILES SO THAT THE RENAME WILL WORK
.DELETE 68274?.EXE
.IF (ERROR)	!IGNORE
!RENAME THE EXE FILE
.RENAME 68274?.EXE=COBOL?.EXE
.IF (ERROR)	.GOTO TRUBLE
!SEE WHAT WE GOT:
.R DIRECT
*TTY:=/CHECKSUM/WIDTH:90 68274?.EXE
.IF (ERROR) . !IGNORE ANY ERRORS.
!
.GOTO CLNUP
!
V68::
!
.R GLOB
*CHREQV.REL,COBASM.REL,COMUNI.REL,INTERM.REL,LBLPRM.REL,P.REL,TABLES.REL
*ASCEBC.REL,ASCSIX.REL,IMPURE.REL,FOO.REL,SQUIRL.REL,BTREE.REL
*XPNPPL.REL,XPAND.REL,GETITM.REL,STINFL.REL,CLRNAM.REL
*TRYNAM.REL,PUTGEN.REL,PUTCPY.REL,PUTERA.REL,COBCOM.REL
*PUTLST.REL,COBOLB.REL,COBOLA.REL,CLEANC.REL,CTREE.REL
*FNDPOP.REL,GETTAG.REL,PSCAN.REL,PUTAS1.REL,PUTAS2.REL
*COBOLC.REL,CLEAND.REL,CLEANT.REL,DTREE.REL,COBOLD.REL
*BISGEN.REL,CMNGEN.REL,EXPGEN.REL,GETGEN.REL,IFGEN.REL
*IOGEN.REL,IPCGEN.REL,MATGEN.REL,MESGEN.REL,MOVGEN.REL
*MSCGEN.REL,PUTAS3.REL,RPWGEN.REL,SRTGEN.REL,STRGEN.REL
*XFRGEN.REL,COBOLE.REL,DIAGS.REL,GETASY.REL
*GETCPY.REL,PUTBIN.REL,SRTCRF.REL
*COBOLG.REL,COBOLF.REL,EBCASC.REL,COBOLK.REL
*OPCTAB.REL,COBOLO.REL,PMATCH.REL
*COBOL.GLB=
!
!SEE WHAT WE GOT:
.R DIRECT
*TTY:=/CHECKSUM/WIDTH:90 COBOL?.EXE,COBOL?.MAP,COBOL.GLB
.IF (ERROR) . !IGNORE ANY ERRORS.
!
.GOTO CLNUP
!
V74::!COBOL-74
.R GLOB
*CHREQV.REL,COBASM.REL,COMUNI.REL,INTERM.REL,LBLPRM.REL,P.REL,TABLES.REL
*ASCEBC.REL,ASCSIX.REL,IMPURE.REL,FOO.REL,SQUIRL.REL,BTREE.REL
*XPNPPL.REL,XPAND.REL,GETITM.REL,STINFL.REL,CLRNAM.REL
*TRYNAM.REL,PUTGEN.REL,PUTCPY.REL,PUTERA.REL,COBCOM.REL
*PUTLST.REL,COBOLB.REL,COBOLA.REL,CLEANC.REL,CTREE.REL
*FNDPOP.REL,GETTAG.REL,PSCAN.REL,PUTAS1.REL,PUTAS2.REL
*COBOLC.REL,CLEAND.REL,CLEANT.REL,DTREE.REL,COBOLD.REL
*BISGEN.REL,CMNGEN.REL,EXPGEN.REL,GETGEN.REL,IFGEN.REL
*IOGEN.REL,IPCGEN.REL,MATGEN.REL,MESGEN.REL,MOVGEN.REL
*MSCGEN.REL,PUTAS3.REL,RPWGEN.REL,SRTGEN.REL,STRGEN.REL
*XFRGEN.REL,COBOLE.REL,DIAGS.REL,GETASY.REL
*GETCPY.REL,PUTBIN.REL,SRTCRF.REL
*COBOLG.REL,COBOLF.REL,EBCASC.REL,COBOLK.REL
*OPCTAB.REL,COBOLO.REL,PMATCH.REL
*CBL74.GLB=
!
!SEE WHAT WE GOT:
.R DIRECT
*TTY:=/CHECKSUM/WIDTH:90 CBL74?.EXE,CBL74?.MAP,CBL74.GLB
.IF (ERROR) . !IGNORE ANY ERRORS.
.GOTO CLNUP
!
CLNUP::
! CLEAN UP AFTER BUILD
!
.DELETE FOO.REL
.R DIRECT
*TTY:=/CHECKSUM/WIDTH:90 COBASM.UNV,COBVER.UNV,FTDEFS.UNV,INTERM.UNV,LBLPRM.UNV,COMUNI.UNV,P.UNV,CHREQV.UNV,TABLES.UNV
*TTY:=/CHECKSUM/WIDTH:90 DMLSYM.UNV,GENDCL.UNV,DBSDCL.UNV,STRING.UNV,STRDCL.UNV
*TTY:=/CHECKSUM/WIDTH:90 ASCEBC.REL,CHREQV.REL,COBASM.REL,COMUNI.REL,INTERM.REL,LBLPRM.REL,P.REL,TABLES.REL
*TTY:=/CHECKSUM/WIDTH:90 PURE.REL,PURAB.REL,PUREC.REL,PURED.REL,PUREE.REL,PUREO.REL,PURFG.REL
*TTY:=/CHECKSUM/WIDTH:90 ASCSIX.REL,IMPURE.REL,SQUIRL.REL,BTREE.REL,XPNPPL.REL,XPAND.REL,GETITM.REL,STINFL.REL,CLRNAM.REL
*TTY:=/CHECKSUM/WIDTH:90 TRYNAM.REL,PUTGEN.REL,PUTCPY.REL,PUTERA.REL,COBCOM.REL,PUTLST.REL,COBOLB.REL,COBOLA.REL,CLEANC.REL,CTREE.REL
*TTY:=/CHECKSUM/WIDTH:90 FNDPOP.REL,GETTAG.REL,PSCAN.REL,PUTAS1.REL,PUTAS2.REL,COBOLC.REL,CLEAND.REL,CLEANT.REL,DTREE.REL,COBOLD.REL
*TTY:=/CHECKSUM/WIDTH:90 BISGEN.REL,CMNGEN.REL,EXPGEN.REL,GETGEN.REL,IFGEN.REL,IOGEN.REL,IPCGEN.REL,MATGEN.REL,MESGEN.REL,MOVGEN.REL
*TTY:=/CHECKSUM/WIDTH:90 MSCGEN.REL,PUTAS3.REL,RPWGEN.REL,SRTGEN.REL,STRGEN.REL,XFRGEN.REL,COBOLE.REL,DIAGS.REL,GETASY.REL
*TTY:=/CHECKSUM/WIDTH:90 GETCPY.REL,PUTBIN.REL,SRTCRF.REL,COBOLG.REL,COBOLF.REL,EBCASC.REL,COBOLK.REL
*TTY:=/CHECKSUM/WIDTH:90 OPCTAB.REL,COBOLO.REL,PMATCH.REL,HANDAN.REL,TRACER.REL
*TTY:=/CHECKSUM/WIDTH:90 CMLERR.REL,CMLIO.REL,CMLSYM.REL,CMLVOK.REL,DBDML.REL,DBGETF.REL
!
.DELETE CHREQV.REL,COBASM.REL,COMUNI.REL,FTDEFS.REL,INTERM.REL,LBLPRM.REL,P.REL,TABLES.REL,OPCTAB.REL
!
!IF DEBUG LEAVE REST OF REL FILES AROUND
!NEW, LEAVE REST OF REL FILES AROUND TO MAKE IT EASIER TO REBUILD
.GOTO DONE
!
.RUN COBTST
*DEBUG
.IF (NOERROR) .GOTO DONE	!DEBUG
.GOTO DONE	!TEMP FOR IN-HOUSE USE
!
.DELETE PURE.REL,PURAB.REL,PUREC.REL,PURED.REL,PUREE.REL,PUREO.REL,PURFG.REL
.DELETE ASCEBC.REL,ASCSIX.REL,IMPURE.REL,SQUIRL.REL,BTREE.REL
.DELETE XPNPPL.REL,XPAND.REL,GETITM.REL,STINFL.REL,CLRNAM.REL
.DELETE TRYNAM.REL,PUTGEN.REL,PUTCPY.REL,PUTERA.REL,COBCOM.REL
.DELETE PUTLST.REL,COBOLB.REL,COBOLA.REL,CLEANC.REL,CTREE.REL
.DELETE FNDPOP.REL,GETTAG.REL,PSCAN.REL,PUTAS1.REL,PUTAS2.REL
.DELETE COBOLC.REL,CLEAND.REL,CLEANT.REL,DTREE.REL,COBOLD.REL
.DELETE BISGEN.REL,CMNGEN.REL,EXPGEN.REL,GETGEN.REL,IFGEN.REL
.DELETE IOGEN.REL,IPCGEN.REL,MATGEN.REL,MESGEN.REL,MOVGEN.REL
.DELETE MSCGEN.REL,PUTAS3.REL,RPWGEN.REL,SRTGEN.REL,STRGEN.REL
.DELETE XFRGEN.REL,COBOLE.REL,DIAGS.REL,GETASY.REL
.DELETE GETCPY.REL,PUTBIN.REL,SRTCRF.REL
.DELETE COBOLG.REL,COBOLF.REL,EBCASC.REL,COBOLK.REL
.DELETE COBOLO.REL,PMATCH.REL,HANDAN.REL,TRACER.REL,COBTST.REL
.DELETE GENDCL.REL,DBSDCL.REL,STRUNV.REL,STRDCL.REL
.DELETE CMLERR.REL,CMLIO.REL,CMLSYM.REL,CMLVOK.REL,DBDML.REL,DBGETF.REL
.DELETE PURAB.REL,PUREC.REL,PURED.REL,PUREE.REL,PUREO.REL,PURFG.REL
.IF (ERROR) .!NOT DBMS MOST LIKELY
!
DONE::
!
!TELL OPERATOR HOW WE DID
.PLEASE -- COBOL CREATION SUCCESSFUL
!
!WE CANNOT MIX GALAXY 2 AND GALAXY 4.1
!SO
.DEAS SYS
.IF (ERROR) !
!
.SUB INP:*=/MODIFY/DEPEND:-1
.GOTO OK
%ERR::
TRUBLE::
.PLEASE -- COBOL CREATION NOT SUCCESSFUL!!!
OK::!END OF COBOL.CTL