SETUP 
.PROC,SETUP*I,\ 
NEWPL   ' SAVE NEW DECKOPL            (NO/YES) '=(*N=,NO=,YES,*K=YES),
MOD     ' MODSET FILE NAME: LOCAL OR PFN       '=(*N=,*F),
DF63    ' DEFINE 63 CHARACTER SET     (NO/YES) '=(*N=DF63,YES=63CSET, 
                                                  NO=DF63,*K=63CSET), 
CV63    ' CONVERT DECKOPL TO 63 FORM  (NO/YES) '=(*N=$.$,YES=$,CV=63.$, 
                                                  NO=$.$,*K=$,CV=63.$), 
INSTALL ' PROCEDURE FILE NAME  DEFAULT-INSTALL '=(*N=,*K=INSTALL,*F), 
DECKOPL ' DECKOPL FILE NAME    DEFAULT-DECKOPL '=(*N=DECKOPL,*F), 
PFILE                                           =(*N=#FILE,*F), 
. 
.HELP 
 THE PARAMETERS ARE ALL OPTIONAL.  IF NONE ARE SPECIFIED, 
 THEN NO WORK IS DONE.
  
 PARAMETERS ARE KEYWORD SPECIFICATION ONLY, EXCEPT FOR: 
   MOD - REQUIRES A VALUE IF USED.
   INSTALL - EITHER KEYWORD OR KEYWORD=VALUE. 
  
.HELP,NEWPL 
  NEWPL     DECKOPL IS REPLACED WITH NPL.  USE ONLY IN CONJUNCTION
            WITH 'CV63' AND/OR 'MOD'. 
.HELP,DF63
  DF63      A '*DEFINE 63CSET' IS APPLIED TO DECKOPL TO OBTAIN ALL
            CODE NECESSARY FOR A 63 CHAR SET INSTALLATION.  'INSTALL' 
            MUST ALSO BE USED TO CREATE/REPLACE THE FILE 'INSTALL'. 
.HELP,CV63
  CV63      GENERATES 'NPL' AND 'COMPILE' FILES IN 63 CHAR SET FORMAT.
            IF 'NEWPL' THEN 'NPL' REPLACES 'DECKOPL'. PERMANENT CHANGE
            IF 'INSTALL' OR 'INSTALL=FILNAME' SPECIFIED, THEN 'INSTALL' 
            IS CREATED/REPLACED IN 63 CHAR SET FORMAT.
.HELP,MOD 
  MOD=FN    WHERE 'FN' IS THE LOCAL, INDIRECT OR DIRECT FILE THAT 
            CONTAINS MODSETS TO BE APPLIED TO DECKOPL.
            IF 'NEWPL' IS SPECIFIED, THEN THE CHANGE IS PERMANENT.
            IF 'INSTALL' THEN INSTALL WILL CONTAIN THE CHANGES. 
.HELP,INSTALL 
            IF AND ONLY IF THIS PARAMETER IS SPECIFIED, WILL THE
            PROCFIL NAMED 'FN' BE CREATED/REPLACED.  THE DEFAULT NAME 
            FOR THIS FILE IS 'INSTALL'. 
.ENDHELP
*CALL     PSRLEV
  
  
COPYEI,MODIR,MODIR1.
  
IFE,$MOD$.NE.$$,MODPAR. 
  IFE,.NOT.FILE(MOD,AS),GETMOD. 
    GET,MOD/NA. 
    IFE,.NOT.FILE(MOD,AS),GETMOD. 
      ATTACH,MOD/NA.
      IFE,.NOT.FILE(MOD,AS),GETMOD. 
      REVERT(ABORT) FILE MOD NOT FOUND. 
  ELSE,GETMOD.
    REWIND,MOD. 
    COPYEI,MOD,MODIR1.
    .IF,($MOD$.NE.$$),RETMOD. 
       .IF,FILE(MOD,.NOT.AS),RETMOD.
         RETURN,MOD.
    .ENDIF,RETMOD.
  ENDIF,GETMOD. 
ENDIF,MODPAR. 
  
REWIND,MODIR1.
ATTACH,OPL=DECKOPL. 
  
IFE,$NEWPL$.EQ.$YES$.OR.$MOD$.NE.$$.OR.$INSTALL$.NE.$$,MODIF. 
MODIFY,F,LO=E,N,Z,L=LIST_CV63_/*NOSEQ/*READ MODIR1,*
ENDIF,MODIF.
  
UNLOAD,OPL. 
  
IFE,$CV63$.NE.$.$.AND.$INSTALL$.NE.$$,CFIL63. 
  REWIND,MODIR. 
MODIFY,P=NPL,F,LO=E,Z./*READ,MODIR,*
ENDIF,CFIL63. 
  
IFE,$NEWPL$.EQ.$YES$,SAVENPL. 
  ATTACH(DECKOPL/M=W) 
  REWIND(DECKOPL,NPL) 
  COPYEI(NPL,DECKOPL) 
  RETURN,DECKOPL,NPL. 
ENDIF,SAVENPL.
  
IFE,$INSTALL$.NE.$$,GENLIB. 
  PURGE,XXXXINS/NA. 
  DEFINE,XXXXINS. 
  COPY,COMPILE,ZXC,TC=I,PO=M. 
  RENAME,COMPILE=ZXC. 
  LIBEDIT,P=COMPILE,N=XXXXINS,B=0,Z./*BUILD INSTALL 
  PURGE,INSTALL/NA. 
  CHANGE,INSTALL=XXXXINS. 
  RETURN,COMPILE,INSTALL,XXXXINS. 
ELSE,GENLIB.
  NOTE.+ #INSTALL FILE NOT CREATED BY THIS RUN. 
ENDIF,GENLIB. 
  
RETURN,SETUP,MODIR1,MODIR,NPL.
REVERT.  SETUP. 
EXIT. 
REVERT(ABORT)  SETUP. 
.DATA,MODIR.
SETUP** 
*#NOSEQ 
*#DEFINE DF63 
*WEOR 
