.PROC,GENNBE*I,
UN "Installation user name"            = (*N=,*F),
ULIB "Flag User Library install"       = (*K=1,*N=0),
BL "File of system routines"           = (*N=NBEBINS,*F),
NL "File of NVE subsystem routines"    = (*N=NVELIBB,*F),
PID "ID of user libraries"             = (*N=CCT,*F),
UP "PP user library"                   = (*N=USERPP,*F),
US "NUCLEUS user library"              = (*N=USERNUC,*F),
UO "SYSOVL user library"               = (*N=USEROV,*F),
UV "NVELIB user library"               = (*N=USERNVE,*F),
.
.HELP
 The GENNBE procedure installs the NOS/VE 170 state release files
 onto the running NOS/BE system, or onto user libraries used to
 prepare NOS/BE deadstart tapes.

 Parameter   Default   Description
   Name       Value

  [un]                 User name used as ID to access release files
  [bl]        nbebins  File containing system routines
  [nl]        nvelib   File containing NVE subsystem routines
  [ulib]      ulib     keyword denoting user library installation
  [pid]       cct      id used to access user libraries
  [up]        userpp   pp user library
  [us]        usernuc  nucleus user library
  [uo]        userov   sysovl user library
  [uv]        usernve  nvelib user library

.HELP,UN
 The UN parameter specifies the User Name under which the NOS/VE system
 is being installed. Used as a permanent file ID to access the release files.
.HELP,ULIB
 The ULIB parameter specifies that the release files are to be installed
 on to user libraries instead of the running system.
.HELP,BL
 The BL parameter specifies the name of the file of system programs being
 installed in the NOS/BE NUCLEUS and PP libraries.
.HELP,NL
 The NL parameter specifies the name of the file of programs used to create
 the NVELIB system library.
.HELP,PID
 The PID parameter specifies the permanent file id of the user libraries.
.HELP,UP
 The UP parameter specifies the name of the user library containing the
 NOS/BE pp programs.
.HELP,US
 The US parameter specifies the name of the user library containing the
 NOS/BE NUCLEUS programs.
.HELP,UO
 The UO parameter specifies the name of the user library containing the
 NOS/BE SYSOVL programs.
.HELP,UV
 The UV parameter specifies the name of the user library containing the
 NVELIB programs.
.ENDHELP
*IF ($string($name(wev$target_operating_system))='NOSBE')
GETFILE,BL,BL,UN,READ,A=YES.
GETFILE,NL,NL,UN,READ,A=YES.
.IFE,ULIB,USERL.
  GETFILE,UP,UP,PID,W,A=YES.
  GETFILE,US,US,PID,W,A=YES.
  GETFILE,UO,UO,PID,W,A=YES.
  GETFILE,UV,UV,PID,W,A=YES.
  SKIP,NOULIB.
    EXIT,U.
    REVERT,ABORT. USER LIBRARY MISSING
  ENDIF,NOULIB.
.ENDIF,USERL.
GTR,BL,NBEPPS.PP/*     SDA
GTR,BL,NBEABS.ABS/*    RHAQEP-FASLAVE
GTR,NL,NVEABS.ABS/*    DSMDST-EXTRACT
GTR,NL,SYMRELS.REL/*   IC7MMLI-WREPLNK
GTR,NL,PROCS.PROC/*    ACCFILE-TRM180
EDITLIB(SYSTEM,ERROR=3,I=DIR)
REVERT. NOS/VE C170 MODULES INSTALLED
EXIT.
REVERT,ABORT. GENNBE EDITLIB FAILED.
.DATA,DIR.
.IFE,ULIB,USERD.
LIBRARY(UP,OLD)
REPLACE(SDA,NBEPPS)
FINISH.
LIBRARY(US,OLD)
REPLACE(SETVE,PROCS)
REPLACE(NVE,PROCS)
REPLACE(RUNIRHF,PROCS)
REPLACE(VEIAF,PROCS)
REPLACE(RHAQEP,NBEABS)
REPLACE(RHAPFP,NBEABS)
REPLACE(FASLAVE,NBEABS)
FINISH.
LIBRARY(UO,OLD)
REPLACE(IIAPAS,NBEABS)
FINISH.
LIBRARY(UV,OLD)
REWIND(PROCS)
REPLACE(*,PROCS)
DELETE(SETVE)
DELETE(NVE)
DELETE(RUNIRHF)
DELETE(VEIAF)
DELETE(IC7MMLI)
DELETE(RUNJOBS)
REPLACE(*,SYMRELS)
REPLACE(*,NVEABS)
FINISH.
.ELSE,USERD.
READY(SYSTEM)
REPLACE(SDA,NBEPPS)
LIBRARY(NUCLEUS,OLD)
REPLACE(SETVE,PROCS,AL=7777)
REPLACE(NVE,PROCS,AL=7777)
REPLACE(RUNIRHF,PROCS,AL=1)
REPLACE(VEIAF,PROCS,AL=1)
REPLACE(RHAQEP,NBEABS,AL=1)
REPLACE(RHAPFP,NBEABS,AL=1)
REPLACE(FASLAVE,NBEABS,AL=1)
FINISH.
LIBRARY(SYSOVL,OLD)
REPLACE(IIAPAS,NBEABS,AL=1)
FINISH.
REWIND(PROCS)
LIBRARY(NVELIB,OLD)
REPLACE(*,PROCS,AL=1)
DELETE(SETVE)
DELETE(NVE)
DELETE(RUNIRHF)
DELETE(VEIAF)
DELETE(RUNJOBS)
DELETE(IC7MMLI)
REPLACE(*,SYMRELS,AL=0)
REPLACE(GTR,NVEABS,AL=1,FL=25000,FLO=1)
REPLACE(EXTRACT,NVEABS,AL=1,FL=30000)
REPLACE(NOTE,NVEABS,AL=1,FL=13300)
REPLACE(NVEPFU,NVEABS,AL=1,FL=15600)
REPLACE(DSMDST,NVEABS,AL=1)
REPLACE(DSMRUN,NVEABS,AL=1)
REPLACE(DSMTRM,NVEABS,AL=1)
REPLACE(COPYS,NVEABS,AL=1)
FINISH.
COMPLETE.
.ENDIF,USERD.
ENDRUN.
*ELSE
COMMENT. THIS PROCEDURE IS FOR NOS/BE ONLY.
*IFEND
/EOR
