RHP 
.PROC,RHP*I,\ 
SUBSYS  ' SUBSYSTEM TYPE  (RHF, NAM OR BOTH)   '=(*N=RHF,RHF,NAM, 
                                                  BOTH,*K=RHF), 
TRACE   ' ENABLE AIP/FIP TRACE CODE  (NO/YES)  '=(*N=NO,NO,YES,*K=YES), 
DEBUG   ' ENABLE APPLICATION DEBUG CODE        '=(*N=NO,NO,YES,*K=YES), 
*CALL COMPC 
*CALL COMUSER 
*CALL COMLIST 
*CALL COMTOB
*CALL COMIA 
*CALL COMTOL
*CALL COMD3 
*CALL COMX3 
*CALL COMXOPL 
*CALL COMPROC 
. 
  
* RHP - INSTALL REMOTE HOST PRODUCTS. 
*CALL     PSRLEV
  
.*      USES LCNLIB CREATED BY RHF
  
  
.*
.*  START RHP VIA SUBPROC.
.*
BEGIN(SUBPROC,INSTALL,RHP,,LIST,MAPTYPE,IA,TOBLD,TOLIST,USERF)
REVERT.        RHP. 
EXIT. 
REVERT(ABORT)  RHP. 
  
  
.DATA,ZZZPROC 
.PROC,RHP.
*CALL     PSRLEV
BEGIN(PRDAUX,INSTALL,PRDNAME=RHC1,#PNO=PN3,#PRO=PR3)
BEGIN(PRDIN,INSTALL,PRDNAME=RHP1,#PN=PN,#PR=PR,DISK=0)
BEGIN(UP,INSTALL,RANDOM,PCPL=CPRD,#PC=PC,#CC=CC,PCDECK=RHP,NUMAUX=1)
BEGIN(PRDAUX,INSTALL,PRDNAME=OPL,#PNO=PN99,#PRO=PR99) 
RENAME(OPL=AUXPL) 
SYMPL(I,ET=T,L=0,B=TXTA,S=SYMLIB)                          RHC TEXTS
SYMPL(I,ET=T,L=0,Y=TXTA,B=TXTPB,S=SYMLIB)                  RHP TEXTS
SYMPL(I,ET=T,L=0,Y=TXTA,Y=TXTPB,B=TXTPC,S=SYMLIB)          RHP TEXTS
SYMPL(I,ET=T,L=0,Y=TXTA,Y=TXTPB,Y=TXTPC,B=TXTPD,S=SYMLIB)  RHP TEXTS
SYMPL(I,ET=T,LR=LIST,Y=TXTA,Y=TXTPB,Y=TXTPC,Y=TXTPD,B=FTUBIN,S=SYMLIB)
COMPASS(A,I,X=OPL,S=NOSTEXT,S=SYSTEXT,S=PSSTEXT,B=FTUBIN,L=LIST) RHP
LIBGEN(F=FTUBIN,P=FTULIB)  APPLICATION ROUTINE LIBRARY
BEGIN(GETULIB,INSTALL,SYMLIB,SYSLIB)
IFE($SUBSYS$.EQ.$RHF$.OR.$SUBSYS$.EQ.$BOTH$,L1) 
BEGIN(GETULIB,INSTALL,LCNLIB) 
ENDIF,L1. 
IFE($SUBSYS$.EQ.$NAM$.OR.$SUBSYS$.EQ.$BOTH$,L2) 
BEGIN(GETULIB,INSTALL,NETXIO,NETXIOD) 
ENDIF,L2. 
COPYBF(COMPILE,SKELPRC)   APPLICATION SKELETON DECKS
BEGIN(MFLSKEL,SKELPRC,DIRSLFN=XXXSKEL,#SUBSYS=SUBSYS,#TRACE=TRACE,
#DEBUG=DEBUG) 
.IF,$SUBSYS$.NE.$BOTH$,L3.
BEGIN(PFSSKEL,SKELPRC,#SUBSYS=SUBSYS,DIRSLFN=XXXSKEL, 
#TRACE=TRACE,#DEBUG=DEBUG)
BEGIN(QTFSKEL,SKELPRC,#SUBSYS=SUBSYS,DIRSLFN=XXXSKEL, 
#TRACE=TRACE,#DEBUG=DEBUG)
BEGIN(QFSSKEL,SKELPRC,#SUBSYS=SUBSYS,DIRSLFN=XXXSKEL, 
#TRACE=TRACE,#DEBUG=DEBUG)
.ELSE,L3. 
BEGIN(PFSSKEL,SKELPRC,#SUBSYS=RHF,DIRSLFN=XXXSKEL,#TRACE=TRACE, 
#DEBUG=DEBUG) 
BEGIN(PFSSKEL,SKELPRC,#SUBSYS=NAM,DIRSLFN=XXXSKEL,#TRACE=TRACE, 
#DEBUG=DEBUG) 
BEGIN(QTFSKEL,SKELPRC,#SUBSYS=RHF,DIRSLFN=XXXSKEL,#TRACE=TRACE, 
#DEBUG=DEBUG) 
BEGIN(QTFSKEL,SKELPRC,#SUBSYS=NAM,DIRSLFN=XXXSKEL,#TRACE=TRACE, 
#DEBUG=DEBUG) 
BEGIN(QFSSKEL,SKELPRC,#SUBSYS=RHF,DIRSLFN=XXXSKEL,#TRACE=TRACE, 
#DEBUG=DEBUG) 
BEGIN(QFSSKEL,SKELPRC,#SUBSYS=NAM,DIRSLFN=XXXSKEL,#TRACE=TRACE, 
#DEBUG=DEBUG) 
.ENDIF,L3.
BEGIN(MFQSKEL,SKELPRC,DIRSLFN=XXXSKEL)                MFQUEUE SKELETON
BEGIN(ASMDIRS,SKELPRC,XXXSKEL,SKELLGO)    ASSEMBLE SKELETON DECKS 
LDSET(ERR=ALL,PRESET=ZERO)
LOAD(SKELLGO/R) 
NOGO(LGO)    MFLINK, PTFS, QTF, QTFS, MFQUEUE 
COPYBF(COMPILE,LGO)   QTFPROC 
BKSP(LGO) 
COPYBF(COMPILE,LGO)   RESERVED FOR FUTURE USE 
BKSP(LGO) 
SKIPF(COMPILE,1)
COPYBF(COMPILE,RHPSTRT)  NAMSTART PROCEDURES
.IF,$SUBSYS$.EQ.$NAM$.OR.$SUBSYS$.EQ.$BOTH$,L4. 
BEGIN(PFGOUT,INSTALL,PRDNAME=RHP1,LFN=RHPSTRT)
REWIND(RHPSTRT) 
RETURN(ZZZZDIR) 
NOTE(ZZZZDIR,NR)+JOB(JOBQTF,QT,SY,NS) 
NOTE(ZZZZDIR,NR)+JOB(JOBQTFS,QS,SY,NS)
NOTE(ZZZZDIR,NR)+JOB(JOBPTFS,PS,SY,NS)
BEGIN(ACCESS,INSTALL,PRODUCT,R) 
SYSGEN(UPSTRT,RHPSTRT,,ZZZZDIR) 
RETURN(PRODUCT) 
RETURN(ZZQTFS,ZZPTFS) 
.ENDIF,L4.
BEGIN(PRDOUT,INSTALL,PRDNAME=RHP1,#PNO=PNO,#PRO=PRO)
BEGIN(GENDIR,INSTALL,LIB=51)
BEGIN(SAVELGO,INSTALL,PRDNAME=RHP1) 
BEGIN(END,INSTALL,MFT=R1G+) 
REVERT.        RHP  *************************** 
EXIT. 
REVERT(ABORT)  RHP  *************************** 
*WEOR 
