;RPG20.CTL Control file to create standard TOPS-20 RPGII compiler ; ;Copyright (C) 1976 Bob Currier and Cerritos College ; ; ;Include file LISTEM.MAC in users area if listings are desired ; @ERROR % @TYPE LISTEM.MAC @IF (NOERROR) @GOTO LISTEM @ERROR ; ;Assemble sources with no listings ; @MACRO *RPGA20=RPGA20 *INTERM=INTERM *RPGUNV=RPGUNV *CLEANT=RPGIIP,CLEANT *DIAGS=RPGIIP,RPGERR,DIAGS *GENCOM=RPGIIP,GENCOM *GETASY=RPGIIP,GETASY *GETCPY=RPGIIP,GETCPY *GETERA=RPGIIP,GETERA *GETGEN=RPGIIP,GETGEN *GETSRC=RPGIIP,GETSRC IMP:: @MACRO *IMPURE=RPGIIP,IMPURE *LOOKUP=RPGIIP,LOOKUP *PREDIT=RPGIIP,PREDIT *PURAB=RPGIIP,PURAB,PURE *PUREC=RPGIIP,PUREC,PURE *PURED=RPGIIP,PURED,PURE *PUREE=RPGIIP,PUREE,PURE *PURFG=RPGIIP,PURFG,PURE *PUTAS1=RPGIIP,PUTAS1 *PUTAS2=RPGIIP,PUTAS2 *PUTAS3=RPGIIP,PUTAS3 *PUTBIN=RPGIIP,PUTBIN *PUTERA=RPGIIP,PUTERA *PUTGEN=RPGIIP,PUTGEN *PUTLST=RPGIIP,PUTLST *RPGCOM=RPGIIP,RPGCOM *RPGIIA=RPGIIP,RPGIIA *RPGIIB=RPGIIP,RPGIIB *RPGIIC=RPGIIP,RPGIIC RPGD:: @MACRO *RPGIID=RPGIIP,RPGIID *RPGIIE=RPGIIP,RPGIIE *RPGIIF=RPGIIP,RPGIIF *RPGIIG=RPGIIP,RPGIIG *RPGIIK=RPGIIP,RPGIIK SRT:: @MACRO *SRTTAB=RPGIIP,SRTTAB *STINFL=RPGIIP,STINFL *TRYNAM=RPGIIP,TRYNAM *XPAND=RPGIIP,XPAND *XPNPPL=RPGIIP,XPNPPL @GOTO LIBA ; ;Assemble sources with listings ; LISTEM:: @ERROR @MACRO *RPGA20,RPGA20/C=RPGA20 *INTERM,INTERM/C=INTERM *RPGUNV,RPGUNV/C=RPGUNV *CLEANT,CLEANT/C=RPGIIP,CLEANT *DIAGS,DIAGS/C=RPGIIP,RPGERR,DIAGS *GENCOM,GENCOM/C=RPGIIP,GENCOM *GETASY,GETASY/C=RPGIIP,GETASY *GETCPY,GETCPY/C=RPGIIP,GETCPY *GETERA,GETERA/C=RPGIIP,GETERA *GETGEN,GETGEN/C=RPGIIP,GETGEN *GETSRC,GETSRC/C=RPGIIP,GETSRC *IMPURE,IMPURE/C=RPGIIP,IMPURE *LOOKUP,LOOKUP/C_RPGIIP,LOOKUP *PREDIT,PREDIT/C_RPGIIP,PREDIT *PURAB,PURAB/C=RPGIIP,PURAB,PURE *PUREC,PUREC/C=RPGIIP,PUREC,PURE *PURED,PURED/C=RPGIIP,PURED,PURE *PUREE,PUREE/C=RPGIIP,PUREE,PURE *PURFG,PURFG/C=RPGIIP,PURFG,PURE *PUTAS1,PUTAS1/C=RPGIIP,PUTAS1 *PUTAS2,PUTAS2/C=RPGIIP,PUTAS2 *PUTAS3,PUTAS3/C=RPGIIP,PUTAS3 *PUTBIN,PUTBIN/C=RPGIIP,PUTBIN *PUTERA,PUTERA/C=RPGIIP,PUTERA *PUTGEN,PUTGEN/C=RPGIIP,PUTGEN *PUTLST,PUTLST/C=RPGIIP,PUTLST *RPGCOM,RPGCOM/C=RPGIIP,RPGCOM *RPGIIA,RPGIIA/C=RPGIIP,RPGIIA *RPGIIB,RPGIIB/C=RPGIIP,RPGIIB *RPGIIC,RPGIIC/C=RPGIIP,RPGIIC *RPGIID,RPGIID/C=RPGIIP,RPGIID *RPGIIE,RPGIIE/C=RPGIIP,RPGIIE *RPGIIF,RPGIIF/C=RPGIIP,RPGIIF *RPGIIG,RPGIIG/C=RPGIIP,RPGIIG *RPGIIK,RPGIIK/C=RPGIIP,RPGIIK *SRTTAB,SRTTAB/C=RPGIIP,SRTTAB *STINFL,STINFL/C=RPGIIP,STINFL *TRYNAM,TRYNAM/C=RPGIIP,TRYNAM *XPAND,XPAND/C=RPGIIP,XPAND *XPNPPL,XPNPPL/C=RPGIIP,XPNPPL @IF (ERROR) GOTO TRUBLE ; ;Create the CREFed listings ; @CREF *CLEANT.LST=CLEANT *DIAGS.LST=DIAGS *GENCOM.LST=GENCOM *GETASY.LST=GETASY *GETCPY.LST=GETCPY *GETERA.LST=GETERA *GETGEN.LST=GETGEN *GETSRC.LST=GETSRC *IMPURE.LST=IMPURE *INTERM.LST=INTERM *LOOKUP.LST=LOOKUP *PREDIT.LST=PREDIT *PURAB.LST=PURAB *PUREC.LST=PUREC *PURED.LST=PURED *PUREE.LST=PUREE *PURFG.LST=PURFG *PUTAS1.LST=PUTAS1 *PUTAS2.LST=PUTAS2 *PUTAS3.LST=PUTAS3 *PUTBIN.LST=PUTBIN *PUTERA.LST=PUTERA *PUTGEN.LST=PUTGEN *PUTLST.LST=PUTLST *RPGA20.LST=RPGA20 *RPGCOM.LST=RPGCOM *RPGIIA.LST=RPGIIA *RPGIIB.LST=RPGIIB *RPGIIC.LST=RPGIIC *RPGIID.LST=RPGIID *RPGIIE.LST=RPGIIE *RPGIIF.LST=RPGIIF *RPGIIG.LST=RPGIIG *RPGIIK.LST=RPGIIK *RPGUNV.LST=RPGUNV *SRTTAB.LST=SRTTAB *STINFL.LST=STINFL *TRYNAM.LST=TRYNAM *XPAND.LST=XPAND *XPNPPL.LST=XPNPPL @IF (ERROR) @GOTO TRUBLE ; ;Continue here after assemble and/or listings ; ; ;Create library file LIBA.REX ; LIBA::; @COPY LOOKUP.REL LIBA.REX @APPEND GENCOM.REL,CLEANT.REL,SRTTAB.REL,GETCPY.REL,PREDIT.REL,PUTAS1.REL,PUTAS2.REL,PUTAS3.REL LIBA.REX @APPEND PUTGEN.REL,PUTBIN.REL,GETASY.REL,GETERA.REL,GETGEN.REL,GETSRC.REL,DIAGS.REL LIBA.REX @APPEND TRYNAM.REL,STINFL.REL,XPNPPL.REL,IMPURE.REL,RPGCOM.REL,PUTLST.REL LIBA.REX @APPEND PURAB.REL,PUREC.REL,PURED.REL,PUREE.REL LIBA.REX @APPEND PURFG.REL,PUTERA.REL,XPAND.REL LIBA.REX @IF (ERROR) @GOTO TRUBLE ; ;Throw away local symbols, write index ; @MAKLIB *LIBA.REX=LIBA.REX/NOLOCAL/INDEX @IF (ERROR) @GOTO TRUBLE ; ;Load the compiler ; ONESG:: @ERROR @LINK */HASHSIZE:1374 *RPGII.MAP/MAP=RPGIIA,RPGIIB,RPGIIC,RPGIID,RPGIIE,RPGIIF,RPGIIG,RPGIIK *PURAB,LIBA.REX/SEARCH/START:RPGIIA/GO @SAVE RPGII @IF (ERROR) @GOTO TRUBLE CONT::;CONTINUE ; ;Delete all unwanted files ; @DELETE GENCOM.REL,CLEANT.REL,SRTTAB.REL,GETCPY.REL,LOOKUP.REL,PREDIT.REL,PUTAS1.REL,PUTAS2.REL,PUTAS3.REL,INTERM.REL,RPGA20.REL @DELETE PUTGEN.REL,PUTBIN.REL,GETASY.REL,GETERA.REL,GETGEN.REL,GETSRC.REL,DIAGS.REL @DELETE TRYNAM.REL,STINFL.REL,XPNPPL.REL,IMPURE.REL,RPGCOM.REL,PUTLST.REL @DELETE PURAB.REL,PUREC.REL,PURED.REL,PUREE.REL,PURFG.REL,PUTERA.REL,XPAND.REL @GOTO OK TRUBLE: OK::;END OF RPGII.CTL