.PROC,GENREL*I,
PRC " - name of file containing restore procedure" = (*F,LIBRARY,*N=LIBRARY),
LIB " - name of file containing NVELIB"            = (*F,*N=NVELIB),
NVE " - name of file containing NOS/VE DS file"    = (*F,*N=TPXXXK),
DSP " - name of file containing Dual State code"   = (*F,*N=NOSBINS),
NVR " - name of file containing relocatables"      = (*F,*N=NVERELS),
SCP " - name of file containing prologs"           = (*F,*N=SITECP),
DCF " - name of file containing DCF decks"         = (*F,*N=DCFILE),
NVP " - name of file containing NVEPROL"           = (*F,*N=NVEPROL),
CRL " - name of file containing NOS CYBIL RTL"     = (*F,*N=CYBCLIB),
UN  " - name of user catalog containing files"     = (*F,*N=),
VSN "Volume Serial Number of tape"                 = (*N=,
                                     *S6(ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789)),
D   " - tape density"                              = (HD,PE,GE,*N=PE),
V   " - verify files on tape"                      = (YES,NO,*N=NO,*K=YES),
F   " - format of tape"                            = (*N=I,SI,I),
.
.HELP
 The GENREL procedure GENerates a new RELease tape containing updated
 Dual State binary routines.

 Parameter   Default   Description
   Name       Value

   PRC       LIBRARY   Location of RESTORE procedure. Either file name
                       or keyword LIBRARY. The keyword LIBRARY means
                       extract the procedure from the LIB file.
   LIB       NVELIB    Name of NVELIB file containing procedures etc.
   NVE       TPXXXK    Name of NOS/VE system binaries file.
   DSP       NOSBINS   Name of Dual State (Real State) binaries file.
   NVR       NVERELS   Name of Dual State (Real State) relocatables file.
   SCP       SITECP    Name of file containing configuration prolog and
                       other files.
   DCF       DCFILE    Name of file containing sets of system core commands.
   NVP       NVEPROL   Name of file containing NVEPROL.
   CRL       CYBCLIB   Name of file containing NOS CYBIL run time library.
   UN        null      Name of user catalog containing files.
   D         PE        Density of tape to write.
   V         no,yes    Verify files on tape flag.
   F         I         Format of release tape

.HELP,PRC
 The PRC parameter specifies the location of the RESTORE procedure. This
 may be a file or the keyword LIBRARY to indicate that the procedure
 should be extracted from the LIB file.
.HELP,LIB
 The LIB parameter specifies the file containing the NVELIB routines.
.HELP,NVE
 The NVE parameter specifies the file containing the NOS/VE deadstart file.
.HELP,DSP
 The DSP parameter specifies the file containing the Dual State routines.
.HELP,NVR
 The NVR parameter specifies the file containing the Dual State relocatables.
.HELP,SCP
 The SCP parameter specifies the file containing the prolog files.
.HELP,DCF
 The DCF parameter specifies the file containing the DCF decks.
.HELP,NVP
 The NVP parameter specifies the file containing NVEPROL.
.HELP,CRL
 The CRL parameter specifies the file containing the CYBIL run time library.
.HELP,UN
 The UN parameter specifies the user catalog containing the files.
.HELP,F
 The F parameter specifies the format of the release tape.
.ENDHELP
GETFILE(YYYLIB,LIB,UN,READ,YES)
GETFILE(YYYNVE,NVE,UN,READ,YES)
GETFILE(YYYDSP,DSP,UN,READ,YES)
GETFILE(YYYNVR,NVR,UN,READ,YES)
GETFILE(YYYSCP,SCP,UN,READ,YES)
GETFILE(YYYDCF,DCF,UN,READ,YES)
GETFILE(YYYNVP,NVP,UN,READ,YES)
GETFILE(YYYCRL,CRL,UN,READ,YES)
.IFE($PRC$.EQ.$LIBRARY$,GTRLIB)
  $GTR(YYYLIB,YYYPRC)PROC/RESTORE
.ELSE(GTRLIB)
  GETFILE(YYYPRC,PRC,UN,READ,YES)
.ENDIF(GTRLIB)
$REWIND(YYYPRC,YYYLIB,YYYNVE,YYYDSP,YYYHNT)
$UNLOAD(TAPE)
$LABEL(TAPE,#D=D,#F=F,LB=KU,PO=W,#VSN=VSN)
$COPYBF(YYYPRC,TAPE)
$COPYBF(YYYLIB,TAPE)
$COPYBF(YYYDSP,TAPE)
$COPYBF(YYYNVP,TAPE)
$COPYBF(YYYNVE,TAPE)
$COPYBF(YYYSCP,TAPE)
$COPYBF(YYYDCF,TAPE)
$COPYBF(YYYNVR,TAPE)
$COPYBF(YYYCRL,TAPE)
.IFE($V$.EQ.$YES$,VERIFYTAPE)
  $REWIND(TAPE,YYYPRC,YYYLIB,YYYNVE,YYYDSP)
  $REWIND(YYYNVP,YYYSCP,YYYDCF,YYYNVR,YYYCRL)
  $VERIFY(TAPE,YYYPRC,N=1,A)
  $VERIFY(TAPE,YYYLIB,N=1,A)
  $VERIFY(TAPE,YYYDSP,N=1,A)
  $VERIFY(TAPE,YYYNVP,N=1,A)
  $VERIFY(TAPE,YYYNVE,N=1,A)
  $VERIFY(TAPE,YYYSCP,N=1,A)
  $VERIFY(TAPE,YYYDCF,N=1,A)
  $VERIFY(TAPE,YYYNVR,N=1,A)
  $VERIFY(TAPE,YYYCRL,N=1,A)
.ENDIF(VERIFYTAPE)
$UNLOAD(TAPE,YYYPRC,YYYLIB,YYYNVE,YYYDSP)
$UNLOAD(YYYNVP,YYYSCP,YYYDCF,YYYNVR,YYYCRL)
$REVERT.  RELEASE TAPE BUILT SUCCESSFULLY
$EXIT.
$REVERT(ABORT) TAPE BUILD FAILED CHECK DAYFILE
/EOR
