Trailing-Edge
-
PDP-10 Archives
-
BB-H506E-SM
-
cobol/source/libol.ctl
There are 11 other files named libol.ctl in the archive. Click here to see a list.
! UPD ID= 3375 on 1/30/81 at 10:38 AM by WRIGHT
!LIBOL.CTL COBOL-74 V12C
!
!USED TO MAKE C74OTS FROM LIBOL'S SOURCE FILES.
!THIS FILE RUNS ON EITHER TOPS-20 OR TOPS-10 ON ALL SUPPORTED MONITORS
!SUBMIT WITH COMMAND SUBMIT LIBOL/TIME:0:30:0
!
!COPYRIGHT (C) DIGITAL EQUIPMENT CORPORATION 1979, 1985
!ALL RIGHTS RESERVED.
!
!THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY ONLY BE USED
! OR COPIED IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE.
!
!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.
!
!***** NOTE ***** TOPS-10 SYSTEMS
!PRIOR TO 7.01 MIC DOES NOT WORK UNDER BATCH - DO NOT SUPPLY A MIC FILE.
!ALSO 7.01 USERS CAN USE THE PATH COMMAND TO CREATE COMPLEX LOGICAL NAME
!ALA TOPS-20. THIS FILE WILL SUPPORT SUCH NAMES, IF YOU CANNOT USE PATH
!THEN ALL FILES SPECIFIED AS BEING IN LOGICAL NAMES MUST BE IN DSK:.
!NOTE THE SOURCES CAN BE IN A SEPARATE LIB: AREA.
!
!IF LISTINGS ARE DESIRED, THE EMPTY FILE
!LISTEM.MAC SHOULD BE IN DSK:
!
!IF YOU ALREADY HAVE A SORT FROM A PREVIOUS BUILD AND WISH TO INCLUDE
!IT IN THE OTS WITHOUT HAVING TO RUN SORT.CTL AGAIN
! ON TOPS-20 THEN LEAVE SRTCBL.REL IN SBUILD:
! ON TOPS-10 IF YOU USE PATH LEAVE SRTCBL.REL IN SBUILD:
! ELSE COPY SRTCBL.REL TO DSK:
!
!IF YOU WITH TO INCLUDE DBMS MODULE FROM A PREVIOUS BUILD OF DBMS
!WITHOUT HAVING TO RUN DBMS.CTL AGAIN THEN
! ON TOPS-20 LEAVE THE REL FILES IN DBMBLD: (DBMS-BUILD:)
! ON TOPS-10 IF YOU USE PATH LEAVE THE REL FILES IN DBMBLD:
! ELSE COPY THE REL FILES TO DSK:
!THIS FILE LOOKS FOR DBSCOB.REL TO LOAD THE DBMS MODULES.
!
!FOR COBOL-68 SET ANS68==1 AND ANS74==0 IN COBASM.MAC
!FOR COBOL-74 SET ANS68==0 AND ANS74==1 IN COBASM.MAC
!
!
!TEST FOR WHICH SYSTEM
@GOTO TOPS20 !TOPS20 VERSION
.GOTO TOPS10 !TOPS10 VERSION
TOPS20::
!REQUIRED FILES:
!<FIELD-IMAGE> CREF.EXE
! LINK.EXE
! MACRO.EXE
! MAKLIB.EXE
! MACREL.REL
! MACSYM.UNV
! MONSYM.UNV
! UUOSYM.UNV
!
!<NEW> PA1050.EXE
!
!<UNSUPPORTED> GLOB.EXE
!
!<SELF> LIBOL.CTL
! ACCEPT.MAC ALBSTB.MAC ALF.MAC ARGS.MAC
! CANCEL.MAC CBLIO.MAC CDD.MAC CHREQV.MAC
! CMP.MAC COPYRT.MAC COPYRT.TXT COBASM.MAC
! COBFUN.MAC COBST.MAC COBVER.MAC COMPD.MAC
! COMUNI.MAC COVRLY.MAC
! DSORT.MAC DEBSTB.MAC DIV11.MAC DPADD.MAC
! DPDIV.MAC DPMUL.MAC DPSUB.MAC DSPFP.MAC
! EASTBL.MAC EDIT.MAC EDITB.MAC EXAM.MAC
! EXPON.MAC FIX.MAC FLGDF.MAC FLOAT.MAC
! FTDEFS.MAC GC.MAC GD.MAC INSPEC.MAC
! INTERM.MAC KEY.MAC KPROG.MAC LBLERR.MAC
! LBLPRM.MAC
! LCM20.MAC LIBREL.MAC LIBSHR.MAC LILOWS.MAC
! LINE.MAC LSU.MAC MAGNEG.MAC METIO.MAC
! METUNV.MAC MOVE.MAC NSTRNG.MAC NTBSTB.MAC
! NUBSTB.MAC NUM.MAC NUMEQV.MAC OSTRNG.MAC
! PC.MAC PD.MAC PERF.MAC PNZ.MAC
! PUTRES.MAC REMOVL.MAC RESOLV.MAC RMSIO.MAC
! SETRET.MAC
! SIZ23.MAC SIZE1.MAC SPAC.MAC SUBSCR.MAC
! TODAY.MAC TRACED.MAC USRDSP.MAC ZERC.MAC
!
! TCSINT.UNV TCSSYM.UNV
!
!LINK CONTROL FILES
! L12C68.CMD L12C6D.CMD L12C74.CMD L12C7D.CMD
!
!TO INCLUDE SORT
!SORT-BUILD: SRTCBL.REL
!
!TO INCLUDE DBMS
!DBMS-BUILD:
! DBSCOB.REL DBS20.REL DBSANY.REL SCHIO2.REL
!
!TO TEST THE FEATURES TEST SWITCH SETTINGS THE FOLLOWING IS REQUIRED:
!
!<SELF> COBTST.MAC
!
!OUTPUT: LIBOL.LOG
! -68 LIBOL.REL LIBO12.EXE LIBOL.GLB
! -74 C74LIB.REL C74O12.EXE C74OTS.GLB
!
@CHKPNT CK2A
CK2A::
@ERROR
@TAKE COBOL.CMD
@IF (ERROR) !IGNORE IT
!MAKE A RECORD OF WHAT IS BEING USED.
@GET SYS:PA1050
@INFO VERSION
@GET SYS:MACRO
@INFO VERSION
@GET SYS:MAKLIB
@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:MACRO.EXE,SYS:MAKLIB.EXE,SYS:LINK.EXE,SYS:CREF.EXE,SYS:GLOB.EXE,SYS:MACSYM.UNV,SYS:MONSYM.UNV,SYS:UUOSYM.UNV,SYS:PA1050.EXE,SYS:MACREL.REL,
@CHECK SEQ
@
!
@VD COPYRT.MAC,COPYRT.TXT,COBASM.MAC,COBVER.MAC,INTERM.MAC,LBLPRM.MAC,COMUNI.MAC,CHREQV.MAC,NUMEQV.MAC,FTDEFS.MAC,FLGDF.MAC,METUNV.MAC,ACCEPT.MAC,ALBSTB.MAC,ALF.MAC,ARGS.MAC,
@CHECK SEQ
@
@VD CANCEL.MAC,CBLIO.MAC,CDD.MAC,CMP.MAC,COBFUN.MAC,COBST.MAC,COMPD.MAC,COVRLY.MAC,DSORT.MAC,DEBSTB.MAC,DIV11.MAC,
@CHECK SEQ
@
@VD DPADD.MAC,DPDIV.MAC,DPMUL.MAC,DPSUB.MAC,DSPFP.MAC,EASTBL.MAC,EDIT.MAC,EDITB.MAC,EXAM.MAC,EXPON.MAC,FIX.MAC,FLOAT.MAC,
@CHECK SEQ
@
@VD GC.MAC,GD.MAC,INSPEC.MAC,KEY.MAC,KPROG.MAC,LBLERR.MAC,LCM20.MAC,LIBREL.MAC,LIBSHR.MAC,LILOWS.MAC,LINE.MAC,LSU.MAC,MAGNEG.MAC,METIO.MAC,MOVE.MAC,
@CHECK SEQ
@
@VD NUM.MAC,NTBSTB.MAC,NUBSTB.MAC,PC.MAC,PD.MAC,PERF.MAC,PNZ.MAC,PUTRES.MAC,REMOVL.MAC,RESOLV.MAC,RMSIO.MAC,SETRET.MAC,SIZ23.MAC,SIZE1.MAC,
@CHECK SEQ
@
@VD SPAC.MAC,OSTRNG.MAC,NSTRNG.MAC,SUBSCR.MAC,TODAY.MAC,TRACED.MAC,USRDSP.MAC,ZERC.MAC,TCSINT.UNV,TCSSYM.UNV,
@CHECK SEQ
@
@VD LIBOL.CTL,L12C68.CMD,L12C6D.CMD,L12C74.CMD,L12C7D.CMD,
@CHECK SEQ
@
@VD SBUILD:SRTCBL.REL,
@CHECK SEQ
@
!
!ASSEMBLE SOURCES:
!
!ASSEMBLE THE UNIVERSALS FIRST.
@ERROR %
@TYPE LISTEM.MAC
@IF (ERROR) @GOTO NOLIS1
@ERROR
!
!HERE FOR CREF LISTINGS
!
@MACRO
*COPYRT,COPYRT/C=COPYRT
*COBASM,COBASM/C=COBASM
*INTERM,INTERM/C=INTERM
*COBVER,COBVER/C=COBVER
*COMUNI,COMUNI/C=COMUNI
*FTDEFS,FTDEFS/C=FTDEFS
*LBLPRM,LBLPRM/C=LBLPRM
*CHREQV,CHREQV/C=CHREQV
*NUMEQV,NUMEQV/C=NUMEQV
*FLGDF,FLGDF/C=FLGDF
*METUNV,METUNV/C=METUNV
!GET MACRO AGAIN OR TOO MANY UNIVERSALS MESSAGE
@MACRO
*COBTST=COBTST
!
! LOAD THE FEATURE TEST SWITCH TESTER
!
@LINK
*COBTST/GO
@SAVE COBTST
@IF (ERROR) @GOTO TRUBLE
!
!
!NOW WE CAN ASSEMBLE THE SOURCES.
@CHKPNT CK2B
CK2B::
@ERROR
@TAKE COBOL.CMD
@IF (ERROR) !IGNORE IT
@MACRO
*ACCEPT,ACCEPT/C=ACCEPT
*ALBSTB,ALBSTB/C=ALBSTB
*ALF,ALF/C=ALF
*ARGS,ARGS/C=ARGS
*CANCEL,CANCEL/C=CANCEL
*CBLIO,CBLIO/C=CBLIO
@IF (ERROR) @GOTO TRUBLE
!
@CHKPNT CK2C
CK2C::
@ERROR
@TAKE COBOL.CMD
@IF (ERROR) !IGNORE IT
@MACRO
*CDD,CDD/C=CDD
*CMP,CMP/C=CMP
*COBFUN,COBFUN/C=COBFUN
*COBST,COBST/C=COBST
*COMPD,COMPD/C=COMPD
*COVRLY,COVRLY/C=COVRLY
*DSORT,DSORT/C=DSORT
*DEBSTB,DEBSTB/C=DEBSTB
*DIV11,DIV11/C=DIV11
*DPADD,DPADD/C=DPADD
*DPDIV,DPDIV/C=DPDIV
*DPMUL,DPMUL/C=DPMUL
*DPSUB,DPSUB/C=DPSUB
*DSPFP,DSPFP/C=DSPFP
@MACRO
*EASTBL,EASTBL/C=EASTBL
*EDIT,EDIT/C=EDIT
*EDITB,EDITB/C=EDITB
*EXAM,EXAM/C=EXAM
*EXPON,EXPON/C=EXPON
*FIX,FIX/C=FIX
*FLOAT,FLOAT/C=FLOAT
*GC,GC/C=GC
*GD,GD/C=GD
*INSPEC,INSPEC/C=INSPEC
*KEY,KEY/C=KEY
*KPROG,KPROG/C=KPROG
@MACRO !TOO MANY UNIVERSALS OTHERWISE
*LBLERR,LBLERR/C=LBLERR
*LCM20,LCM20/C=LCM20
*LIBREL,LIBREL/C=LIBREL
@RUN COBTST
*ANS68
@IF (ERROR) @GOTO L74 !COBOL-74
@MACRO
*LIBSHR,LIBSHR/C=LIBSHR
@GOTO NEXT
L74::
@MACRO
*C74SHR,LIBSHR/C=LIBSHR
NEXT::
@IF (ERROR) @GOTO TRUBLE
!
!
@CHKPNT CK2D
CK2D::
@ERROR
@TAKE COBOL.CMD
@IF (ERROR) !IGNORE IT
@MACRO
*LILOWS,LILOWS/C=LILOWS
*LINE,LINE/C=LINE
*LSU,LSU/C=LSU
*MAGNEG,MAGNEG/C=MAGNEG
*METIO,METIO/C=METIO
*MOVE,MOVE/C=MOVE
*NUM,NUM/C=NUM
*NTBSTB,NTBSTB/C=NTBSTB
*NUBSTB,NUBSTB/C=NUBSTB
*PC,PC/C=PC
*PD,PD/C=PD
*PERF,PERF/C=PERF
*PNZ,PNZ/C=PNZ
*PUTRES,PUTRES/C=PUTRES
*REMOVL,REMOVL/C=REMOVL
*RESOLV,RESOLV/C=RESOLV
@IF (ERROR) @GOTO TRUBLE
@RU COBTST
*ANS74
@IF (ERROR) @GOTO SKPRSI
@MACRO
*RMSIO,RMSIO/C=RMSIO
@IF (ERROR) @GOTO TRUBLE
SKPRSI::
@MACRO
*SETRET,SETRET/C=SETRET
*SIZ23,SIZ23/C=SIZ23
*SIZE1,SIZE1/C=SIZE1
*SPAC,SPAC/C=SPAC
*OSTRNG,OSTRNG/C=OSTRNG
*NSTRNG,NSTRNG/C=NSTRNG
*SUBSCR,SUBSCR/C=SUBSCR
*TODAY,TODAY/C=TODAY
*TRACED,TRACED/C=TRACED
*USRDSH,USRDSH/C=TTY:,DSK:USRDSP
*SHR==1
=
=
*USRDSL,USRDSL/C=USRDSP
*ZERC,ZERC/C=ZERC
@IF (ERROR) @GOTO TRUBLE
!
!CREF THE SOURCES
@CHKPNT CK2E
CK2E::
@ERROR
@TAKE COBOL.CMD
@IF (ERROR) !IGNORE IT
@CREF
*DSK:COPYRT.LZT=COPYRT
*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:CHREQV.LZT=CHREQV
*DSK:NUMEQV.LZT=NUMEQV
*DSK:FLGDF.LZT=FLGDF
*DSK:METUNV.LZT=METUNV
*DSK:ACCEPT.LZT=ACCEPT
*DSK:ALBSTB.LZT=ALBSTB
*DSK:ALF.LZT=ALF
*DSK:ARGS.LZT=ARGS
*DSK:CANCEL.LZT=CANCEL
*DSK:CBLIO.LZT=CBLIO
*DSK:CDD.LZT=CDD
*DSK:CMP.LZT=CMP
*DSK:COBFUN.LZT=COBFUN
*DSK:COBST.LZT=COBST
*DSK:COMPD.LZT=COMPD
*DSK:COVRLY.LZT=COVRLY
*DSK:DSORT.LZT=DSORT
*DSK:DEBSTB.LZT=DEBSTB
*DSK:DIV11.LZT=DIV11
*DSK:DPADD.LZT=DPADD
*DSK:DPDIV.LZT=DPDIV
*DSK:DPMUL.LZT=DPMUL
*DSK:DPSUB.LZT=DPSUB
*DSK:DSPFP.LZT=DSPFP
*DSK:EASTBL.LZT=EASTBL
*DSK:EDIT.LZT=EDIT
*DSK:EDITB.LZT=EDITB
*DSK:EXAM.LZT=EXAM
*DSK:EXPON.LZT=EXPON
*DSK:FIX.LZT=FIX
*DSK:FLOAT.LZT=FLOAT
*DSK:GC.LZT=GC
*DSK:GD.LZT=GD
*DSK:INSPEC.LZT=INSPEC
*DSK:KEY.LZT=KEY
*DSK:KPROG.LZT=KPROG
*DSK:LBLERR.LZT=LBLERR
*DSK:LCM20.LZT=LCM20
*DSK:LIBREL.LZT=LIBREL
*DSK:LIBSHR.LZT=LIBSHR
*DSK:LILOWS.LZT=LILOWS
*DSK:LINE.LZT=LINE
*DSK:LSU.LZT=LSU
*DSK:MAGNEG.LZT=MAGNEG
*DSK:METIO.LZT=METIO
*DSK:MOVE.LZT=MOVE
*DSK:NUM.LZT=NUM
*DSK:NTBSTB.LZT=NTBSTB
*DSK:NUBSTB.LZT=NUBSTB
*DSK:PC.LZT=PC
*DSK:PD.LZT=PD
*DSK:PERF.LZT=PERF
*DSK:PNZ.LZT=PNZ
*DSK:PUTRES.LZT=PUTRES
*DSK:REMOVL.LZT=REMOVL
*DSK:RESOLV.LZT=RESOLV
@IF (ERROR) @GOTO TRUBLE
@RUN COBTST
*ANS74
@IF (ERROR) @GOTO SKCRI1
@CREF
*DSK:RMSIO.LZT=RMSIO
SKCRI1::
@CREF
*DSK:SETRET.LZT=SETRET
*DSK:SIZ23.LZT=SIZ23
*DSK:SIZE1.LZT=SIZE1
*DSK:SPAC.LZT=SPAC
*DSK:OSTRNG.LZT=OSTRNG
*DSK:NSTRNG.LZT=NSTRNG
*DSK:SUBSCR.LZT=SUBSCR
*DSK:TODAY.LZT=TODAY
*DSK:TRACED.LZT=TRACED
*DSK:USRDSH.LZT=USRDSH
*DSK:USRDSL.LZT=USRDSL
*DSK:ZERC.LZT=ZERC
@IF (ERROR) !TROUBLE CREATING .LZT FILES
@GOTO DONCRF
NOLIS1::
!HERE FOR NO CREF LISTINGS
@ERROR
@MACRO
*COPYRT=COPYRT
*COBASM=COBASM
*INTERM=INTERM
*COBVER=COBVER
*COMUNI=COMUNI
*FTDEFS=FTDEFS
*LBLPRM=LBLPRM
*CHREQV=CHREQV
*NUMEQV=NUMEQV
*FLGDF=FLGDF
*METUNV=METUNV
!GET MACRO AGAIN OR TOO MANY UNIVERSALS MESSAGE
@MACRO
*COBTST=COBTST
!
! LOAD THE FEATURE TEST SWITCH TESTER
!
@LINK
*COBTST/GO
@SAVE COBTST
@IF (ERROR) @GOTO TRUBLE
@CHKPNT CK2F
CK2F::
@ERROR
@TAKE COBOL.CMD
@IF (ERROR) !IGNORE IT
@MACRO
*ACCEPT=ACCEPT
*ALBSTB=ALBSTB
*ALF=ALF
*ARGS=ARGS
*CANCEL=CANCEL
*CBLIO=CBLIO
@IF (ERROR) @GOTO TRUBLE
!
@CHKPNT CK2G
CK2G::
@ERROR
@TAKE COBOL.CMD
@IF (ERROR) !IGNORE IT
@MACRO
*CDD=CDD
*CMP=CMP
*COBFUN=COBFUN
*COBST=COBST
*COMPD=COMPD
*COVRLY=COVRLY
*DSORT=DSORT
*DEBSTB=DEBSTB
*DIV11=DIV11
*DPADD=DPADD
*DPDIV=DPDIV
*DPMUL=DPMUL
*DPSUB=DPSUB
*DSPFP=DSPFP
@MACRO !OR TOO MANY UNIVERSALS
*EASTBL=EASTBL
*EDIT=EDIT
*EDITB=EDITB
*EXAM=EXAM
*EXPON=EXPON
*FIX=FIX
*FLOAT=FLOAT
*GC=GC
*GD=GD
*INSPEC=INSPEC
*KEY=KEY
*KPROG=KPROG
@MACRO !TOO MANY UNIVERSALS OTHERWISE
*LBLERR=LBLERR
*LCM20=LCM20
*LIBREL=LIBREL
@RUN COBTST
*ANS68
@IF (ERROR) @GOTO L74 !COBOL-74
@MACRO
*LIBSHR=LIBSHR
@GOTO NEXT
L74::
@MACRO
*C74SHR=LIBSHR
NEXT::
@IF (ERROR) @GOTO TRUBLE
!
@CHKPNT CK2H
CK2H::
@ERROR
@TAKE COBOL.CMD
@IF (ERROR) !IGNORE IT
@MACRO
*LILOWS=LILOWS
*LINE=LINE
*LSU=LSU
*MAGNEG=MAGNEG
*METIO=METIO
*MOVE=MOVE
*NUM=NUM
*NTBSTB=NTBSTB
*NUBSTB=NUBSTB
*PC=PC
*PD=PD
*PERF=PERF
*PNZ=PNZ
*PUTRES=PUTRES
*REMOVL=REMOVL
*RESOLV=RESOLV
@IF (ERROR) @GOTO TRUBLE
@RUN COBTST
*ANS74
@IF (ERROR) @GOTO SKPRMI
@MACRO
*RMSIO=RMSIO
@IF (ERROR) @GOTO TRUBLE
SKPRMI::
@MACRO
*SETRET=SETRET
*SIZ23=SIZ23
*SIZE1=SIZE1
*SPAC=SPAC
*OSTRNG=OSTRNG
*NSTRNG=NSTRNG
*SUBSCR=SUBSCR
*TODAY=TODAY
*TRACED=TRACED
*USRDSH=TTY:,DSK:USRDSP
*SHR==1
=
=
*USRDSL=USRDSP
*ZERC=ZERC
@IF (ERROR) @GOTO TRUBLE
@GOTO DONCRF
DONCRF::
!
! APPEND THE COPYRIGHT STATEMENT TO ALL THE UNV FILES TO PROTECT THEM
!
@APPEND COPYRT.TXT COPYRT.UNV
@APPEND COPYRT.TXT COBASM.UNV
@APPEND COPYRT.TXT INTERM.UNV
@APPEND COPYRT.TXT COBVER.UNV
@APPEND COPYRT.TXT COMUNI.UNV
@APPEND COPYRT.TXT FTDEFS.UNV
@APPEND COPYRT.TXT LBLPRM.UNV
@APPEND COPYRT.TXT CHREQV.UNV
@APPEND COPYRT.TXT NUMEQV.UNV
@APPEND COPYRT.TXT FLGDF.UNV
!
@CHKPNT CK2J
CK2J::
@ERROR
@TAKE COBOL.CMD
@IF (ERROR) !IGNORE IT
!
!CHECKSUM ALL LIBOL REL FILES
!
@VDIR COBST.REL,CBLIO.REL,LIBREL.REL,REMOVL.REL,TRACED.REL,LINE.REL,OSTRNG.REL,NSTRNG.REL,LSU.REL,
@CHECK SEQ
@
@VDIR ACCEPT.REL,ARGS.REL,PUTRES.REL,CANCEL.REL,GD.REL,GC.REL,PD.REL,PC.REL,FLOAT.REL,
@CHECK SEQ
@
@VDIR FIX.REL,CDD.REL,METIO.REL,MOVE.REL,EXPON.REL,COMPD.REL,
@CHECK SEQ
@
@VDIR CMP.REL,SPAC.REL,ZERC.REL,ALF.REL,PNZ.REL,NUM.REL,DSPFP.REL,DIV11.REL,
@CHECK SEQ
@
@VDIR DPDIV.REL,DPADD.REL,DPSUB.REL,DPMUL.REL,MAGNEG.REL,SUBSCR.REL,TODAY.REL,
@CHECK SEQ
@
@VDIR SIZE1.REL,SIZ23.REL,EXAM.REL,INSPEC.REL,EDIT.REL,PERF.REL,COVRLY.REL,
@CHECK SEQ
@
@VDIR KEY.REL,KPROG.REL,LBLERR.REL,DSORT.REL,SETRET.REL,COBFUN.REL,EASTBL.REL,ALBSTB.REL,DEBSTB.REL,
@CHECK SEQ
@
@VDIR EDITB.REL,NUBSTB.REL,NTBSTB.REL,LCM20.REL,USRDSL.REL,USRDSH.REL,
@CHECK SEQ
@
@VDIR COBASM.REL,COMUNI.REL,INTERM.REL,LBLPRM.REL,CHREQV.REL,NUMEQV.REL,FTDEFS.REL,FLGDF.REL,METUNV.REL,RESOLV.REL,
@CHECK SEQ
@
!
!CHECKSUM ALL LIBOL UNIVERSAL FILES
!
@VDIR COPYRT.UNV,COBASM.UNV,COBVER.UNV,COMUNI.UNV,INTERM.UNV,LBLPRM.UNV,CHREQV.UNV,NUMEQV.UNV,FTDEFS.UNV,FLGDF.UNV,METUNV.UNV,
@CHECK SEQ
@
!
!SEE IF COBOL-68 OR COBOL-74
!
@RUN COBTST
*ANS68
@IF (ERROR) @GOTO L74 !COBOL-74
L68:: !COBOL-68 BUILD
!CREATE LIBOL.REL
!
@COPY COBST.REL LIBOL.REL
@APPEND LILOWS.REL,CBLIO.REL,LBLERR.REL,LIBREL.REL,REMOVL.REL,TRACED.REL,LINE.REL,OSTRNG.REL,NSTRNG.REL,LSU.REL LIBOL.REL
@APPEND ACCEPT.REL,ARGS.REL,PUTRES.REL,CANCEL.REL,GD.REL,GC.REL,PD.REL,PC.REL,FLOAT.REL LIBOL.REL
@APPEND FIX.REL,CDD.REL,MOVE.REL,EXPON.REL,COMPD.REL LIBOL.REL
@APPEND CMP.REL,SPAC.REL,ZERC.REL,ALF.REL,PNZ.REL,NUM.REL,DSPFP.REL,DIV11.REL LIBOL.REL
@APPEND DPDIV.REL,DPADD.REL,DPSUB.REL,DPMUL.REL,MAGNEG.REL,SUBSCR.REL,TODAY.REL LIBOL.REL
@APPEND SIZE1.REL,SIZ23.REL,EXAM.REL,EDIT.REL,PERF.REL,COVRLY.REL,METIO.REL LIBOL.REL
@APPEND KEY.REL,KPROG.REL,DSORT.REL,SETRET.REL,COBFUN.REL,EASTBL.REL,ALBSTB.REL,DEBSTB.REL LIBOL.REL
@APPEND EDITB.REL,NUBSTB.REL,NTBSTB.REL,LCM20.REL,USRDSL.REL,USRDSH.REL,RESOLV.REL LIBOL.REL
@APPEND SYS:MACREL.REL LIBOL.REL
!
!
!SEE IF WE NEED TO INCLUDE REAL SORT
NORMIO::
@ERROR %
@VDIR SBUILD:SRTCBL.REL
@IF (ERROR) @GOTO NOSORT
@ERROR
@MAKLIB
*LIBOL.REL=LIBOL.REL/MAST:SORT,SBUILD:SRTCBL.REL/REP:SORT
@IF (ERROR) @GOTO TRUBLE
!
NOSORT::
@ERROR
!
!SEE IF WE NEED TO INCLUDE REAL DBMS MODULES
@ERROR %
@VDIR DBMBLD:DBSCOB.REL
@IF (ERROR) @GOTO NODBMS
!
@ERROR
QCOBOL:: !FROM DBMS.CTL
!
@ERROR
!
!ADD THE DBMS MODULES TO LIBOL.REL
!
@MAKLIB
*CBDSTP.TMP=LIBOL/EXTRACT:(%DBSTP,DBSTP$) ;[1056]
*LIBOL=LIBOL/DELETE:RESOLV
*LIBOL=LIBOL/DELETE:RSVGAT
*LIBOL=LIBOL/DELETE:%DBSTP ;[1056]
*LIBOL=LIBOL/DELETE:DBSTP$ ;[1056]
*COBFUN.TMP=LIBOL/EXTR:COBFUN
*LIBOL=LIBOL/DELETE:COBFUN
*LIBOL=LIBOL,DBMBLD:DBSCOB/APPEND,DBS20/APPEND,DSK:COBFUN.TMP/APPEND, -
*DBMBLD:DBSANY/APPEND,SCHIO2/APPEND,DSK:CBDSTP.TMP/APPEND ;[1056]
@IF (ERROR) @GOTO TRUBLE
*LIBOL=LIBOL/INDEX
@IF (ERROR) @GOTO TRUBLE
!
@DEL CBDSTP.TMP,COBFUN.TMP ;[1056]
!
@LINK
*@L12C6D.CMD
@IF (ERROR) @GOTO TRUBLE
@SAVE DSK:LIBO12 0 1,400 777 ;[1101]
@IF (ERROR) @GOTO TRUBLE
!
!!! LIBRARIES SO BIG MAKE SURE OLD COPY WENT AWAY
@EXPUNGE
@IF (ERROR)!
@GOTO GLOB
!
NODBMS::
@ERROR
!
!INDEX LIBOL.REL
!
@MAKLIB
*LIBOL.REL=LIBOL.REL/INDEX
@IF (ERROR) @GOTO TRUBLE
!
!
!CREATE LIBO12.EXE
!
@LINK
*@L12C68
@IF (ERROR) @GOTO TRUBLE
@INFO MEM
@EXAMINE 600000
@IF (ERROR) @GOTO TRUBLE !WRONG VERSION OF PA1050 USED
!
!NOW SAVE IT. NOTE WE MUST GET RID OF PAGE 400 (A LINK BUG)
!BUT SAVE PAGE 0 AS IT MAKES IT EASIER TO PATCH
!
@SAVE DSK:LIBO12 0 1,400 777 ;[1101]
@IF (ERROR) @GOTO TRUBLE
!
GLOB::
@GLOB
@IF (ERROR) @GOTO NEXT !GLOB IS NOT SUPPORTED
*LIBSHR,LIBOL
*LIBOL.GLB=
NEXT::
!
!SEE WHAT WE GOT:
@VD DSK:LIBO*.*,LIBSHR.REL,
@CHECK SEQ
@
@IF (ERROR) @ !IGNORE ANY ERRORS.
!
@GOTO DONE
L74:: !COBOL-74 BUILD
!CREATE C74LIB.REL
!
@COPY COBST.REL C74LIB.REL
@APPEND LILOWS.REL,CBLIO.REL,RMSIO.REL,LBLERR.REL,LIBREL.REL,REMOVL.REL,TRACED.REL,LINE.REL,OSTRNG.REL,NSTRNG.REL,LSU.REL C74LIB.REL
@APPEND ACCEPT.REL,ARGS.REL,PUTRES.REL,CANCEL.REL,GD.REL,GC.REL,PD.REL,PC.REL,FLOAT.REL C74LIB.REL
@APPEND FIX.REL,CDD.REL,MOVE.REL,EXPON.REL,COMPD.REL C74LIB.REL
@APPEND CMP.REL,SPAC.REL,ZERC.REL,ALF.REL,PNZ.REL,NUM.REL,DSPFP.REL,DIV11.REL C74LIB.REL
@APPEND DPDIV.REL,DPADD.REL,DPSUB.REL,DPMUL.REL,MAGNEG.REL,SUBSCR.REL,TODAY.REL C74LIB.REL
@APPEND SIZE1.REL,SIZ23.REL,INSPEC.REL,EDIT.REL,PERF.REL,COVRLY.REL,METIO.REL C74LIB.REL
@APPEND KEY.REL,KPROG.REL,DSORT.REL,SETRET.REL,COBFUN.REL,EASTBL.REL,ALBSTB.REL,DEBSTB.REL C74LIB.REL
@APPEND EDITB.REL,NUBSTB.REL,NTBSTB.REL,LCM20.REL,USRDSL.REL,USRDSH.REL,RESOLV.REL C74LIB.REL
@APPEND SYS:MACREL.REL C74LIB.REL
IF (ERROR) @GOTO TRUBLE
!
!SEE IF WE NEED TO INCLUDE REAL SORT
@ERROR %
@VDIR SBUILD:SRTCBL.REL
@IF (ERROR) @GOTO NOSORT
@ERROR
@MAKLIB
*C74LIB.REL=C74LIB.REL/MAST:SORT,SBUILD:SRTCBL.REL/REP:SORT
@IF (ERROR) @GOTO TRUBLE
!
NOSORT::
@ERROR
!
!SEE IF WE NEED TO INCLUDE REAL DBMS MODULES
@ERROR %
@VDIR DBMBLD:DBSCOB.REL
@IF (ERROR) @GOTO NODBMS
!
@ERROR
!
!
QCBL74:: !FROM DBMS.CTL
!
@ERROR
!
@MAKLIB
*CBDSTP.TMP=C74LIB/EXTRACT:(%DBSTP,DBSTP$) ;[1056]
*C74LIB=C74LIB/DELETE:RESOLV
*C74LIB=C74LIB/DELETE:RSVGAT
*C74LIB=C74LIB/DELETE:%DBSTP ;[1056]
*C74LIB=C74LIB/DELETE:DBSTP$ ;[1056]
*COBFUN.TMP=C74LIB/EXTR:COBFUN
*C74LIB=C74LIB/DELETE:COBFUN
*C74LIB=C74LIB,DBMBLD:DBSCOB/APPEND,DBS20/APPEND,DSK:COBFUN.TMP/APPEND, -
*DBMBLD:DBSANY/APPEND,SCHIO2/APPEND,DSK:CBDSTP.TMP/APPEND ;[1056]
@IF (ERROR) @GOTO TRUBLE
*C74LIB=C74LIB/INDEX
@IF (ERROR) @GOTO TRUBLE
!
@DEL CBDSTP.TMP,COBFUN.TMP ;[1056]
!
@LINK
*@L12C7D.CMD
@IF (ERROR) @GOTO TRUBLE
@SAVE DSK:C74O12 0 1,400 777 ;[1101]
@IF (ERROR) @GOTO TRUBLE
!
!!! LIBRARIES SO BIG MAKE SURE OLD COPY WENT AWAY
@EXPUNGE
@IF (ERROR)!
@GOTO GLOB
!
NODBMS::
@ERROR
!
!INDEX C74LIB.REL
!
@MAKLIB
*C74LIB.REL=C74LIB.REL/INDEX
@IF (ERROR) @GOTO TRUBLE!
!
!CREATE C74O12.EXE
!
@LINK
*@L12C74
@IF (ERROR) @GOTO TRUBLE
@INFO MEM
@EXAMINE 600000
@IF (ERROR) @GOTO TRUBLE !WRONG VERSION OF PA1050 USED
!
!NOW SAVE IT. NOTE WE MUST GET RID OF PAGE 400 (A LINK BUG)
!BUT SAVE PAGE 0 AS IT MAKES IT EASIER TO PATCH
!
@SAVE DSK:C74O12 0 1,400 777 ;[1101]
@IF (ERROR) @GOTO TRUBLE
!
GLOB::
@GLOB
@IF (ERROR) @GOTO NEXT !GLOB IS NOT SUPPORTED
*C74SHR,C74LIB
*C74OTS.GLB=
!
NEXT::
!
!SEE WHAT WE GOT:
@VD DSK:C74*.*,
@CHECK SEQ
@
@IF (ERROR) @ !IGNORE ANY ERRORS.
@GOTO DONE
DONE:: !ALL DONE
@CHKPNT CK2K
CK2K::
@ERROR
@TAKE COBOL.CMD
@IF (ERROR) !IGNORE IT
!
!
!DELETE UNNEEDED FILES
!
@DELETE CHREQV.REL,COBASM.REL,COMUNI.REL,FLGDF.REL,FTDEFS.REL,INTERM.REL,LBLPRM.REL,NUMEQV.REL,METUNV.REL
@DELETE COBST.REL,CBLIO.REL,LIBREL.REL,REMOVL.REL,TRACED.REL,LINE.REL,OSTRNG.REL,NSTRNG.REL,LSU.REL,LILOWS.REL
@DELETE ACCEPT.REL,ARGS.REL,PUTRES.REL,CANCEL.REL,GD.REL,GC.REL,PD.REL,PC.REL,FLOAT.REL
@DELETE FIX.REL,CDD.REL,MOVE.REL,EXPON.REL,COMPD.REL
@DELETE CMP.REL,SPAC.REL,ZERC.REL,ALF.REL,PNZ.REL,NUM.REL,DSPFP.REL,DIV11.REL
@DELETE DPDIV.REL,DPADD.REL,DPSUB.REL,DPMUL.REL,MAGNEG.REL,SUBSCR.REL,TODAY.REL
@DELETE SIZE1.REL,SIZ23.REL,EXAM.REL,INSPEC.REL,EDIT.REL,PERF.REL,COVRLY.REL,METIO.REL
@DELETE KEY.REL,KPROG.REL,LBLERR.REL,DSORT.REL,SETRET.REL,COBFUN.REL,EASTBL.REL,ALBSTB.REL,DEBSTB.REL
@DELETE EDITB.REL,NUBSTB.REL,NTBSTB.REL,LCM20.REL,USRDSL.REL,USRDSH.REL,RESOLV.REL
@RU COBTST
*ANS74
@IF (ERROR) @GOTO SKPRMI
@DELETE RMSIO.REL
SKPRMI::
@IF (ERROR) !ERRORS DELETING LIBOL FILES.
!
!TELL THE OPERATOR HOW WE DID.
!
@PLEASE -- LIBOL CREATION SUCCESSFUL
@EXP
@MODIFY BATCH */DEPEND:-1
@GOTO OK
%ERR::
TRUBLE:: @PLEASE -- LIBOL CREATION UNSUCCESSFUL!!!!!!!
@GOTO OK
TOPS10::
!
!REQUIRED FILES:
! (LATEST RELEASED VERSIONS)
!
!SYS: COMPIL.EXE
! CREF.EXE
! DIRECT.EXE
! GLOB.EXE
! LINK.EXE+LNK???.EXE
! MACRO.EXE
! MAKLIB.EXE
! PIP.EXE
!
!UNV: MACTEN.UNV
! UUOSYM.UNV
!
![SELF] LIBOL.CTL COBASM.MAC
!
!CS: ACCEPT.MAC ALBSTB.MAC ALF.MAC ARGS.MAC
! CANCEL.MAC CBLIO.MAC CDD.MAC CHREQV.MAC
! CMP.MAC COBFUN.MAC COBST.MAC COBVER.MAC
! COMPD.MAC COMUNI.MAC COPYRT.MAC COPYRT.TXT
! COVRLY.MAC DSORT.MAC DEBSTB.MAC DIV11.MAC
! DPADD.MAC DPDIV.MAC DPMUL.MAC DPSUB.MAC
! DSPFP.MAC EASTBL.MAC EDIT.MAC EDITB.MAC
! EXAM.MAC EXPON.MAC FIX.MAC FLGDF.MAC
! FLOAT.MAC FTDEFS.MAC GC.MAC GD.MAC
! INSPEC.MAC INTERM.MAC KEY.MAC KPROG.MAC
! LBLERR.MAC LBLPRM.MAC LCM10.MAC LCMIPC.MAC
! LIBREL.MAC LIBSHR.MAC LILOWS.MAC LINE.MAC
! LSU.MAC MAGNEG.MAC METIO.MAC METUNV.MAC
! MOVE.MAC NSTRNG.MAC NTBSTB.MAC NUBSTB.MAC
! NUM.MAC NUMEQV.MAC OSTRNG.MAC PC.MAC
! PD.MAC PERF.MAC PNZ.MAC PUTRES.MAC
! REMOVL.MAC RESOLV.MAC RMSIO.MAC SETRET.MAC
! SIZ23.MAC SIZE1.MAC
! SPAC.MAC SUBSCR.MAC TODAY.MAC TRACED.MAC
! USRDSP.MAC ZERC.MAC
!
!TO TEST THE FEATURES TEST SWITCH SETTINGS THE FOLLOWING IS REQUIRED:
!
! COBTST.MAC
!
!OUTPUT: LIBOL.LOG
! -68 LIBOL.REL LIBO12.EXE LIBOL.GLB
! -74 C74LIB.REL C74O12.EXE C74OTS.GLB
!
!MAKE A RECORD OF WHAT IS BEING USED.
.CHKPNT CK1A
CK1A::
.ERROR
.SET WATCH VERSION
!SET UP THE DEFAULT LOGICAL NAMES
!
.DO COBOL.MIC
.IF (ERROR) !IGNORE IT
!
!SEE WHAT WE ARE USING
.R DIRECT
*TTY:=/CHECKSUM/WIDTH:90 SYS:PIP.EXE,MACRO.EXE,DIRECT.EXE,COMPIL.EXE,CREF.EXE,GLOB.EXE,MAKLIB.EXE,UUOSYM.UNV,MACTEN.UNV
.IF (ERROR) . !IGNORE ANY ERRORS.
.R DIRECT
*TTY:=/CHECKSUM/WIDTH:90 DSK:COBASM.MAC,CS:COBVER.MAC,COPYRT.MAC,COPYRT.TXT,INTERM.MAC,LBLPRM.MAC,COMUNI.MAC,CHREQV.MAC,NUMEQV.MAC,FTDEFS.MAC,FLGDF.MAC,METUNV.MAC
*TTY:=/CHECKSUM/WIDTH:90 CS:LILOWS.MAC,COBST.MAC,CBLIO.MAC,LIBREL.MAC,REMOVL.MAC,TRACED.MAC,LINE.MAC,OSTRNG.MAC,NSTRNG.MAC,LSU.MAC
*TTY:=/CHECKSUM/WIDTH:90 CS:ACCEPT.MAC,ARGS.MAC,PUTRES.MAC,CANCEL.MAC,GD.MAC,GC.MAC,PD.MAC,PC.MAC,FLOAT.MAC
*TTY:=/CHECKSUM/WIDTH:90 CS:FIX.MAC,CDD.MAC,MOVE.MAC,EXPON.MAC,COMPD.MAC
*TTY:=/CHECKSUM/WIDTH:90 CS:CMP.MAC,SPAC.MAC,ZERC.MAC,ALF.MAC,PNZ.MAC,NUM.MAC,DSPFP.MAC,DIV11.MAC
*TTY:=/CHECKSUM/WIDTH:90 CS:DPDIV.MAC,DPADD.MAC,DPSUB.MAC,DPMUL.MAC,MAGNEG.MAC,SUBSCR.MAC,TODAY.MAC
*TTY:=/CHECKSUM/WIDTH:90 CS:SIZE1.MAC,SIZ23.MAC,EXAM.MAC,INSPEC.MAC,EDIT.MAC,PERF.MAC,COVRLY.MAC
*TTY:=/CHECKSUM/WIDTH:90 CS:KEY.MAC,KPROG.MAC,LBLERR.MAC,DSORT.MAC,SETRET.MAC,COBFUN.MAC,EASTBL.MAC,ALBSTB.MAC,DEBSTB.MAC
*TTY:=/CHECKSUM/WIDTH:90 CS:EDITB.MAC,NUBSTB.MAC,NTBSTB.MAC,LCM10.MAC,LCMIPC.MAC,METIO.MAC,USRDSP.MAC,RESOLV.MAC
*TTY:=/CHECKSUM/WIDTH:90 LIBOL.CTL
*TTY:=/CHECKSUM/WIDTH:90 SB:SRTCBL.REL
.IF (ERROR) . !IGNORE ANY ERRORS.
!ASSEMBLE SOURCES:
!
!ASSEMBLE THE UNIVERSALS FIRST.
.TYPE LISTEM.MAC
.IF (ERROR) .GOTO NOLIS1
!
!HERE FOR CREF LISTINGS
!
.R MACRO
*COPYRT,COPYRT/C=COPYRT
*COBASM,COBASM/C=COBASM
*INTERM,INTERM/C=INTERM
*COBVER,COBVER/C=COBVER
*COMUNI,COMUNI/C=COMUNI
*FTDEFS,FTDEFS/C=FTDEFS
*LBLPRM,LBLPRM/C=LBLPRM
*CHREQV,CHREQV/C=CHREQV
*NUMEQV,NUMEQV/C=NUMEQV
*FLGDF,FLGDF/C=FLGDF
*METUNV,METUNV/C=METUNV
!GET MACRO AGAIN OR TOO MANY UNIVERSALS MESSAGE
.R MACRO
*COBTST=COBTST
!
! LOAD THE FEATURE TEST SWITCH TESTER
!
.R LINK
*COBTST/GO
.SAVE COBTST
.IF (ERROR) .GOTO TRUBLE
!
!
!NOW WE CAN ASSEMBLE THE SOURCES.
.CHKPNT CK1B
CK1B::
.ERROR
.SET WATCH VERSION
!SET UP THE DEFAULT LOGICAL NAMES
!
.DO COBOL.MIC
.IF (ERROR) !IGNORE IT
.R MACRO
*ACCEPT,ACCEPT/C=ACCEPT
*ALBSTB,ALBSTB/C=ALBSTB
*ALF,ALF/C=ALF
*ARGS,ARGS/C=ARGS
*CANCEL,CANCEL/C=CANCEL
*CBLIO,CBLIO/C=CBLIO
.IF (ERROR) .GOTO TRUBLE
!
.CHKPNT CK1C
CK1C::
.ERROR
.SET WATCH VERSION
!SET UP THE DEFAULT LOGICAL NAMES
!
.DO COBOL.MIC
.IF (ERROR) !IGNORE IT
.R MACRO
*CDD,CDD/C=CDD
*CMP,CMP/C=CMP
*COBFUN,COBFUN/C=COBFUN
*COBST,COBST/C=COBST
*COMPD,COMPD/C=COMPD
*COVRLY,COVRLY/C=COVRLY
*DSORT,DSORT/C=DSORT
*DEBSTB,DEBSTB/C=EBSTB
*DIV11,DIV11/C=DIV11
*DPADD,DPADD/C=DPADD
*DPDIV,DPDIV/C=DPDIV
*DPMUL,DPMUL/C=DPMUL
*DPSUB,DPSUB/C=DPSUB
*DSPFP,DSPFP/C=DSPFP
.R MACRO !OR TOO MANY UNIVERSALS MESSAGE
*EASTBL,EASTBL/C=EASTBL
*EDIT,EDIT/C=EDIT
*EDITB,EDITB/C=EDITB
*EXAM,EXAM/C=EXAM
*EXPON,EXPON/C=EXPON
*FIX,FIX/C=FIX
*FLOAT,FLOAT/C=FLOAT
*GC,GC/C=GC
*GD,GD/C=GD
*INSPEC,INSPEC/C=INSPEC
*KEY,KEY/C=KEY
*KPROG,KPROG/C=KPROG
.R MACRO !TOO MANY UNIVERSALS OTHERWISE
*LBLERR,LBLERR/C=LBLERR
*LCM10,LCM10/C=LCM10
*LCMIPC,LCMIPC/C=LCMIPC
*LIBREL,LIBREL/C=LIBREL
.RUN COBTST
*ANS68
.IF (ERROR) .GOTO L74 !COBOL-74
.R MACRO
*LIBSHR,LIBSHR/C=LIBSHR
.GOTO NEXT
L74::
.R MACRO
*C74SHR,LIBSHR/C=LIBSHR
NEXT::
.IF (ERROR) .GOTO TRUBLE
!
!
.CHKPNT CK1D
CK1D::
.ERROR
.SET WATCH VERSION
!SET UP THE DEFAULT LOGICAL NAMES
!
.DO COBOL.MIC
.IF (ERROR) !IGNORE IT
.R MACRO
*LILOWS,LILOWS/C=LILOWS
*LINE,LINE/C=LINE
*LSU,LSU/C=LSU
*MAGNEG,MAGNEG/C=MAGNEG
*METIO,METIO/C=METIO
*MOVE,MOVE/C=MOVE
*NUM,NUM/C=NUM
*NTBSTB,NTBSTB/C=NTBSTB
*NUBSTB,NUBSTB/C=NUBSTB
*PC,PC/C=PC
*PERF,PERF/C=PERF
*PNZ,PNZ/C=PNZ
*PUTRES,PUTRES/C=PUTRES
*REMOVL,REMOVL/C=REMOVL
*RESOLV,RESOLV/C=RESOLV
.RUN COBTST
*ANS74
.IF (ERROR) .GOTO SKPRSI
.R MACRO
*RMSIO,RMSIO/C=RMSIO
SKPRSI::
.R MACRO
*SETRET,SETRET/C=SETRET
*SIZ23,SIZ23/C=SIZ23
*SIZE1,SIZE1/C=SIZE1
*SPAC,SPAC/C=SPAC
*OSTRNG,OSTRNG/C=OSTRNG
*NSTRNG,NSTRNG/C=NSTRNG
*SUBSCR,SUBSCR/C=SUBSCR
*TODAY,TODAY/C=TODAY
*TRACED,TRACED/C=TRACED
*USRDSH,USRDSH/C=TTY:,DSK:USRDSP
*SHR==1
=
=
*USRDSL,USRDSL/C=USRDSP
*ZERC,ZERC/C=ZERC
.IF (ERROR) .GOTO TRUBLE
!
!CREF THE SOURCES
.CHKPNT CK1E
CK1E::
.SET WATCH VERSION
.R CREF
*DSK:COPYRT.LZT=COPYRT
*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:CHREQV.LZT=CHREQV
*DSK:NUMEQV.LZT=NUMEQV
*DSK:FLGDF.LZT=FLGDF
*DSK:METUNV.LZT=METUNV
*DSK:ACCEPT.LZT=ACCEPT
*DSK:ALBSTB.LZT=ALBSTB
*DSK:ALF.LZT=ALF
*DSK:ARGS.LZT=ARGS
*DSK:CANCEL.LZT=CANCEL
*DSK:CBLIO.LZT=CBLIO
*DSK:CDD.LZT=CDD
*DSK:CMP.LZT=CMP
*DSK:COBFUN.LZT=COBFUN
*DSK:COBST.LZT=COBST
*DSK:COMPD.LZT=COMPD
*DSK:COVRLY.LZT=COVRLY
*DSK:DSORT.LZT=DSORT
*DSK:DEBSTB.LZT=DEBSTB
*DSK:DIV11.LZT=DIV11
*DSK:DPADD.LZT=DPADD
*DSK:DPDIV.LZT=DPDIV
*DSK:DPMUL.LZT=DPMUL
*DSK:DPSUB.LZT=DPSUB
*DSK:DSPFP.LZT=DSPFP
*DSK:EASTBL.LZT=EASTBL
*DSK:EDIT.LZT=EDIT
*DSK:EDITB.LZT=EDITB
*DSK:EXAM.LZT=EXAM
*DSK:EXPON.LZT=EXPON
*DSK:FIX.LZT=FIX
*DSK:FLOAT.LZT=FLOAT
*DSK:GC.LZT=GC
*DSK:GD.LZT=GD
*DSK:INSPEC.LZT=INSPEC
*DSK:KEY.LZT=KEY
*DSK:KPROG.LZT=KPROG
*DSK:LBLERR.LZT=LBLERR
*DSK:LCM10.LZT=LCM10
*DSK:LCMIPC.LZT=LCMIPC
*DSK:LIBREL.LZT=LIBREL
*DSK:LIBSHR.LZT=LIBSHR
*DSK:LILOWS.LZT=LILOWS
*DSK:LINE.LZT=LINE
*DSK:LSU.LZT=LSU
*DSK:MAGNEG.LZT=MAGNEG
*DSK:METIO.LZT=METIO
*DSK:MOVE.LZT=MOVE
*DSK:NUM.LZT=NUM
*DSK:NTBSTB.LZT=NTBSTB
*DSK:NUBSTB.LZT=NUBSTB
*DSK:PC.LZT=PC
*DSK:PD.LZT=PD
*DSK:PERF.LZT=PERF
*DSK:PNZ.LZT=PNZ
*DSK:PUTRES.LZT=PUTRES
*DSK:REMOVL.LZT=REMOVL
*DSK:RESOLV.LZT=RESOLV
.RUN COBTST
*ANS74
.IF (ERROR) .GOTO SKPRSI
.R CREF
*DSK:RMSIO.LZT=RMSIO
SKPRSI::
.R CREF
*DSK:SETRET.LZT=SETRET
*DSK:SIZ23.LZT=SIZ23
*DSK:SIZE1.LZT=SIZE1
*DSK:SPAC.LZT=SPAC
*DSK:OSTRNG.LZT=OSTRNG
*DSK:NSTRNG.LZT=NSTRNG
*DSK:SUBSCR.LZT=SUBSCR
*DSK:TODAY=TODAY
*DSK:TRACED.LZT=TRACED
*DSK:USRDSH.LZT=USRDSH
*DSK:USRDSL.LZT=USRDSL
*DSK:ZERC.LZT=ZERC
.IF (ERROR) .!TROUBLE CREATING .LZT FILES
.GOTO DONCRF
NOLIS1::
!HERE FOR NO CREF LISTINGS
.R MACRO
*COPYRT=COPYRT
*COBASM=COBASM
*INTERM=INTERM
*COBVER=COBVER
*COMUNI=COMUNI
*FTDEFS=FTDEFS
*LBLPRM=LBLPRM
*CHREQV=CHREQV
*NUMEQV=NUMEQV
*FLGDF=FLGDF
*METUNV=METUNV
!GET MACRO AGAIN OR TOO MANY UNIVERSALS MESSAGE
.R MACRO
*COBTST=COBTST
!
! LOAD THE FEATURE TEST SWITCH TESTER
!
.R LINK
*COBTST/GO
.SAVE COBTST
.IF (ERROR) .GOTO TRUBLE
.CHKPNT CK1F
CK1F::
.ERROR
.SET WATCH VERSION
!SET UP THE DEFAULT LOGICAL NAMES
!
.DO COBOL.MIC
.IF (ERROR) !IGNORE IT
.R MACRO
*ACCEPT=ACCEPT
*ALBSTB=ALBSTB
*ALF=ALF
*ARGS=ARGS
*CANCEL=CANCEL
*CBLIO=CBLIO
.IF (ERROR) .GOTO TRUBLE
!
.CHKPNT CK1G
CK1G::
.ERROR
.SET WATCH VERSION
!SET UP THE DEFAULT LOGICAL NAMES
!
.DO COBOL.MIC
.IF (ERROR) !IGNORE IT
.R MACRO
*CDD=CDD
*CMP=CMP
*COBFUN=COBFUN
*COBST=COBST
*COMPD=COMPD
*COVRLY=COVRLY
*DSORT=DSORT
*DEBSTB=DEBSTB
*DIV11=DIV11
*DPADD=DPADD
*DPDIV=DPDIV
*DPMUL=DPMUL
*DPSUB=DPSUB
*DSPFP=DSPFP
.R MACRO
*EASTBL=EASTBL
*EDIT=EDIT
*EDITB=EDITB
*EXAM=EXAM
*EXPON=EXPON
*FIX=FIX
*FLOAT=FLOAT
*GC=GC
*GD=GD
*INSPEC=INSPEC
*KEY=KEY
*KPROG=KPROG
.R MACRO !TOO MANY UNIVERSALS OTHERWISE
*LBLERR=LBLERR
*LCM10=LCM10
*LCMIPC=LCMIPC
*LIBREL=LIBREL
.RUN COBTST
*ANS68
.IF (ERROR) .GOTO L74 !COBOL-74
.R MACRO
*LIBSHR=LIBSHR
.GOTO NEXT
L74::
.R MACRO
*C74SHR=LIBSHR
NEXT::
.IF (ERROR) .GOTO TRUBLE
!
.CHKPNT CK1H
CK1H::
.ERROR
.SET WATCH VERSION
!SET UP THE DEFAULT LOGICAL NAMES
!
.DO COBOL.MIC
.IF (ERROR) !IGNORE IT
.R MACRO
*LILOWS=LILOWS
*LINE=LINE
*LSU=LSU
*MAGNEG=MAGNEG
*METIO=METIO
*MOVE=MOVE
*NUM=NUM
*NTBSTB=NTBSTB
*NUBSTB=NUBSTB
*PC=PC
*PD=PD
*PERF=PERF
*PNZ=PNZ
*PUTRES=PUTRES
*REMOVL=REMOVL
*RESOLV=RESOLV
.RUN COBTST
*ANS74
.IF (ERROR) .GOTO SKPRSI
.R MACRO
*RMSIO=RMSIO
SKPRSI::
.R MACRO
*SETRET=SETRET
*SIZ23=SIZ23
*SIZE1=SIZE1
*SPAC=SPAC
*OSTRNG=OSTRNG
*NSTRNG=NSTRNG
*SUBSCR=SUBSCR
*TODAY=TODAY
*TRACED=TRACED
*USRDSH=TTY:,DSK:USRDSP
*SHR==1
=
=
*USRDSL=USRDSP
*ZERC=ZERC
.IF (ERROR) .GOTO TRUBLE
.GOTO DONCRF
DONCRF::
!
! APPEND THE COPYRIGHT STATEMENT TO ALL THE UNV FILES TO PROTECT THEM
!
.COPY COPYRT.UNV=COPYRT.UNV,COPYRT.TXT
.COPY COBASM.UNV=COBASM.UNV,COPYRT.TXT
.COPY INTERM.UNV=INTERM.UNV,COPYRT.TXT
.COPY COBVER.UNV=COBVER.UNV,COPYRT.TXT
.COPY COMUNI.UNV=COMUNI.UNV,COPYRT.TXT
.COPY FTDEFS.UNV=FTDEFS.UNV,COPYRT.TXT
.COPY LBLPRM.UNV=LBLPRM.UNV,COPYRT.TXT
.COPY CHREQV.UNV=CHREQV.UNV,COPYRT.TXT
.COPY NUMEQV.UNV=NUMEQV.UNV,COPYRT.TXT
.COPY FLGDF.UNV=FLGDF.UNV,COPYRT.TXT
!
.CHKPNT CK1J
CK1J::
.ERROR
.SET WATCH VERSION
!
!SEE IF COBOL-68 OR COBOL-74
!
.RUN COBTST
*ANS68
.IF (ERROR) .GOTO L74 !COBOL-74
!
!CREATE LIBOL.REL
!
.R PIP
*LIBOL.REL/B=COBST.REL,LILOWS.REL,CBLIO.REL,LBLERR.REL,LIBREL.REL,REMOVL.REL,TRACED.REL,LINE.REL,OSTRNG.REL,NSTRNG.REL,LSU.REL
*LIBOL.REL/B=LIBOL.REL,ACCEPT.REL,ARGS.REL,PUTRES.REL,CANCEL.REL,GD.REL,GC.REL,PD.REL,PC.REL,FLOAT.REL
*LIBOL.REL/B=LIBOL.REL,FIX.REL,CDD.REL,MOVE.REL,EXPON.REL,COMPD.REL
*LIBOL.REL/B=LIBOL.REL,CMP.REL,SPAC.REL,ZERC.REL,ALF.REL,PNZ.REL,NUM.REL,DSPFP.REL,DIV11.REL
*LIBOL.REL/B=LIBOL.REL,DPDIV.REL,DPADD.REL,DPSUB.REL,DPMUL.REL,MAGNEG.REL,SUBSCR.REL,TODAY.REL
*LIBOL.REL/B=LIBOL.REL,SIZE1.REL,SIZ23.REL,EXAM.REL,EDIT.REL,PERF.REL,COVRLY.REL,METIO.REL
*LIBOL.REL/B=LIBOL.REL,KEY.REL,KPROG.REL,DSORT.REL,SETRET.REL,COBFUN.REL,EASTBL.REL,ALBSTB.REL,DEBSTB.REL
*LIBOL.REL/B=LIBOL.REL,EDITB.REL,NUBSTB.REL,NTBSTB.REL,LCM10.REL,LCMIPC.REL,USRDSL.REL,USRDSH.REL,RESOLV.REL
.IF (ERROR) .GOTO TRUBLE
!
!SEE IF WE NEED TO INCLUDE REAL SORT
.ERROR %
.DIR SRTCBL.REL
.IF (ERROR) .GOTO NOSORT
.ERROR
.R MAKLIB
*LIBOL.REL=LIBOL.REL/MAST:SORT,SRTCBL.REL/REP:SORT
.IF (ERROR) .GOTO TRUBLE
!
NOSORT::
.ERROR
!
!INDEX LIBOL.REL
!
.R MAKLIB
*LIBOL.REL=LIBOL.REL/INDEX
.IF (ERROR) .GOTO TRUBLE
!
!
!CREATE LIBO12.EXE
!
.R LINK
*LIBOL.MAP/MAP=LIBSHR,LIBOL/SEARCH/GO
.IF (ERROR) .GOTO TRUBLE
.SSAVE DSK:LIBO12
.IF (ERROR) .GOTO TRUBLE
!
!CREATE LIBOL.GLB
!
.R GLOB
*LIBOL.GLB=LIBSHR.REL,LIBOL.REL
.IF (ERROR) .GOTO TRUBLE
!SEE WHAT WE GOT:
.R DIRECT
*TTY:=/CHECKSUM/WIDTH:90 LIB???.*,*.UNV
.IF (ERROR) . !IGNORE ANY ERRORS.
!
.GOTO DONE
L74:: !COBOL-74 BUILD
!CREATE C74LIB.REL & C74OTS
!
.R PIP
*C74LIB.REL/B=COBST.REL,LILOWS.REL,CBLIO.REL,RMSIO.REL,LBLERR.REL,LIBREL.REL,REMOVL.REL,TRACED.REL,LINE.REL,OSTRNG.REL,NSTRNG.REL,LSU.REL
*C74LIB.REL/B=C74LIB.REL,ACCEPT.REL,ARGS.REL,PUTRES.REL,CANCEL.REL,GD.REL,GC.REL,PD.REL,PC.REL,FLOAT.REL
*C74LIB.REL/B=C74LIB.REL,FIX.REL,CDD.REL,MOVE.REL,EXPON.REL,COMPD.REL
*C74LIB.REL/B=C74LIB.REL,CMP.REL,SPAC.REL,ZERC.REL,ALF.REL,PNZ.REL,NUM.REL,DSPFP.REL,DIV11.REL
*C74LIB.REL/B=C74LIB.REL,DPDIV.REL,DPADD.REL,DPSUB.REL,DPMUL.REL,MAGNEG.REL,SUBSCR.REL,TODAY.REL
*C74LIB.REL/B=C74LIB.REL,SIZE1.REL,SIZ23.REL,INSPEC.REL,EDIT.REL,PERF.REL,COVRLY.REL,METIO.REL
*C74LIB.REL/B=C74LIB.REL,KEY.REL,KPROG.REL,DSORT.REL,SETRET.REL,COBFUN.REL,EASTBL.REL,ALBSTB.REL,DEBSTB.REL
*C74LIB.REL/B=C74LIB.REL,EDITB.REL,NUBSTB.REL,NTBSTB.REL,LCM10.REL,LCMIPC.REL,USRDSL.REL,USRDSH.REL,RESOLV.REL
.IF (ERROR) .GOTO TRUBLE
!
!SEE IF WE NEED TO INCLUDE REAL SORT
.ERROR %
.DIR SRTCBL.REL
.IF (ERROR) .GOTO NOSORT
.ERROR
.R MAKLIB
*C74LIB.REL=C74LIB.REL/MAST:SORT,SRTCBL.REL/REP:SORT
.IF (ERROR) .GOTO TRUBLE
!
NOSORT::
.ERROR
!
!INDEX C74LIB.REL
!
.R MAKLIB
*C74LIB.REL=C74LIB.REL/INDEX
.IF (ERROR) .GOTO TRUBLE
!
!
!CREATE C74O12.EXE
!
.R LINK
*C74OTS.MAP/MAP=C74SHR,C74LIB/SEARCH/GO
.IF (ERROR) .GOTO TRUBLE
.SSAVE DSK:C74O12
.IF (ERROR) .GOTO TRUBLE
!
!CREATE C74OTS.GLB
!
.R GLOB
*C74OTS.GLB=C74SHR.REL,C74LIB.REL
.IF (ERROR) .GOTO TRUBLE
!SEE WHAT WE GOT:
.R DIRECT
*TTY:=/CHECKSUM/WIDTH:90 C74???.*,*.UNV
.IF (ERROR) . !IGNORE ANY ERRORS.
!
.GOTO DONE
DONE:: !ALL DONE
.CHKPNT CK1K
CK1K::
.ERROR
.SET WATCH VERSION
!SET UP THE DEFAULT LOGICAL NAMES
!
.DO COBOL.MIC
.IF (ERROR) !IGNORE IT
!
!DELETE LIBOL REL FILES NO LONGER NEEDED
!
.R PIP
*DSK:/D=COBASM.REL,COMUNI.REL,INTERM.REL,LBLPRM.REL,CHREQV.REL,NUMEQV.REL,FTDEFS.REL,FLGDF.REL,METUNV.REL
*DSK:/D=LILOWS.REL,COBST.REL,CBLIO.REL,LIBREL.REL,REMOVL.REL,TRACED.REL,LINE.REL,OSTRNG.REL,NSTRNG.REL,LSU.REL
*DSK:/D=ACCEPT.REL,ARGS.REL,PUTRES.REL,CANCEL.REL,GD.REL,GC.REL,PD.REL,PC.REL,FLOAT.REL
*DSK:/D=FIX.REL,CDD.REL,MOVE.REL,EXPON.REL,COMPD.REL
*DSK:/D=CMP.REL,SPAC.REL,ZERC.REL,ALF.REL,PNZ.REL,NUM.REL,DSPFP.REL,DIV11.REL
*DSK:/D=DPDIV.REL,DPADD.REL,DPSUB.REL,DPMUL.REL,MAGNEG.REL,SUBSCR.REL,TODAY.REL
*DSK:/D=SIZE1.REL,SIZ23.REL,EXAM.REL,INSPEC.REL,EDIT.REL,PERF.REL,COVRLY.REL,METIO.REL
*DSK:/D=KEY.REL,KPROG.REL,LBLERR.REL,DSORT.REL,SETRET.REL,COBFUN.REL,EASTBL.REL,ALBSTB.REL,DEBSTB.REL
*DSK:/D=EDITB.REL,NUBSTB.REL,NTBSTB.REL,LCM10.REL,LCMIPC.REL,USRDSL.REL,USRDSH.REL,RESOLV.REL
.RUN COBTST
*ANS74
.IF (ERROR) .GOTO SKPRSI
.R PIP
*DSK:/D=RMSIO.REL
SKPRSI::
.IF (ERROR) . !TOO BAD
!
!
!TELL THE OPERATOR HOW WE DID.
!
.PLEASE -- LIBOL 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 -- LIBOL CREATION UNSUCCESSFUL!!!!!!!
OK::!END OF LIBOL.CTL