BASIC3
.PROC,BASIC3*I,\
*CALL COMPC 
*CALL COMUSER 
*CALL COMLIST 
*CALL COMTOB
*CALL COMIA 
*CALL COMTOL
*CALL COMD1 
*CALL COMXOPL 
*CALL COMPROC 
. 
  
* BASIC3 - BASIC  3 
*CALL     PSRLEV
* 
  
.*
.*  START BASIC3 VIA SUBPROC. 
.*
BEGIN(SUBPROC,INSTALL,BASIC3,,LIST,MAPTYPE,IA,TOBLD,TOLIST,USERF) 
REVERT.        BASIC3.
EXIT. 
REVERT(ABORT)  BASIC3.
  
  
.DATA,ZZZPROC 
.PROC,BASIC3. 
*CALL     PSRLEV
BEGIN(PRDIN,INSTALL,PRDNAME=BAS3,#PN=PN,#PR=PR,DISK=0)
BEGIN(UP,INSTALL,RANDOM,PCPL=CPRD,#PC=PC,#CC=CC,PCDECK=BAS) 
RFL(65000)
BEGIN(COMPCOM,INSTALL)
RENAME(OLDPL=AUXPL) 
RETURN(IN)
NOTE(IN);*C COMCARG.COMCZTB 
UPDATE(Q,I=IN,N=XTEXT,C=0,L=0)
RETURN(OLDPL) 
BEGIN(PRDAUX,INSTALL,PRDNAME=OPL,#PNO=PN99,#PRO=PR99) 
RENAME(OPL=AUXPL) 
COMPASS(A,I,X=XTEXT,S=PSSTEXT,S=IPTEXT,S=NOSTEXT,B=BASRTS,L=LIST) 
SYMPL(ET=T,I,B=BASRTS,L=LIST) 
COMPASS(A,I,L=LIST) 
BEGIN(GETULIB,INSTALL,FORTRAN,SYMLIB,SYSLIB)
RETURN(OPL,XTEXT) 
REWIND(BASRTS,LGO)
COPYLM(LGO,BASRTS,BASLGO) 
RETURN(LGO,BASRTS)
GTR(BASLGO,LIB)REL/BASEGEN-BASRTS,REL/BASLIB-BASENDP
COPYBR(BASLGO,REL1,4) 
COPYBF(BASLGO,REL2) 
LDSET(ERR=ALL,PRESET=DEBUG) 
LOAD(REL1)
SATISFY.
LDSET(ERR=ALL,PRESET=DEBUG) 
LOAD(REL2)
NOGO(BASICX)
COMPASS(A,I,S=IPTEXT,S=NOSTEXT,L=LIST)
RETURN(#INSTALL)
LOAD(LGO) 
NOGO(#INSTALL)
RETURN(LGO) 
REWIND(BASICX)
COPYBR(BASICX,TAPE1)
COPYBR(BASICX,TAPE3,4)
COPYBR(BASICX,TAPE2)
REWIND(TAPE1,TAPE2,TAPE3) 
#INSTALL. 
REWIND(TAPE1,TAPE3) 
COPYBR(TAPE1,BASIC) 
COPYBR(TAPE3,BASIC,4) 
RENAME(LGO=BASIC) 
RETURN(#INSTALL)
BEGIN(SAVELIB,INSTALL,LIB=LIB,LIBNAME=BASLIB) 
BEGIN(PRDOUT,INSTALL,PRDNAME=BAS3,#PNO=PNO,#PRO=PRO)
BEGIN(GENDIR,INSTALL,LIB=10)
BEGIN(SAVELGO,INSTALL,PRDNAME=BAS3) 
BEGIN(END,INSTALL,MFT=R1G+) 
REVERT.  BASIC3.
EXIT. 
REVERT(ABORT)  BASIC3.
*WEOR 
