========> [VAX83B.ECS]AAAREADME.TXT;1 <========






           ECS Contributions to the Spring '83 VAX SIG Tape




               The Engineering Computer Station is part of the  School
          of  Engineering  of  the University of Massachusetts Amherst
          campus, if anyone is really baffled by the name.

               The Engineering Computer Station  is  submitting  three
          items  which we have found EXTREMELY useful.  Unfortunately,
          only the executables are being made available, due  to  time
          constraints.  Anyone who wants more information about any of
          these programs, or the sources,  may  contact  me  for  more
          data.

               The  first  of  the  programs  is  called  INFORM.   It
          permits,  when  installed  properly,  any  user  to  send  a
          one-line message to any other interactive user on either the
          local  host  or on a host connected via DECnet (R).  It uses
          bit 0 of the location  CTL$GL_SITESPEC  for  the  /NORECEIVE
          capability.  All files pertaining to this program are in the
          subdirectory named [.INFORM].

               The second program is the Group  Quota  Manager,  which
          performs correlations between usernames, account names (from
          the UAF ACCOUNT field), and disk  quotas.   It  creates  and
          uses  a  small indexed file on the MFD of each disk on which
          it is used.  These files are  in  the  [.GQM]  subdirectory.
          NOTE:   A  new  version  of this is in the works, which will
          understand wildcards (a major lose in the current version).

               The final program is called BECOME.  It  is  a  command
          which  permits  a suitably privileged user (CMKRNL required)
          to assume virtually every attribute of any user in the  UAF.
          This  includes  quotas,  privileges, account-name, username,
          processname, UIC, SYS$LOGIN  directory,  and  login  command
          file (this last is sometimes flakey).  These are assumed for
          the CURRENT  process,  so  it  can  be  used  to  see  if  a
          particular  user  has  enough  oomph  to perform some action
          (quotas, privileges, &c.).  The files associated  with  this
          are in the [.BECOME] subdirectory.




               These programs, binaries and source, are the  exclusive
          property of the Engineering Computer Station.  No guarantees
          as to their performance are given.  These  programs  may  be
          used  by  any  site  for  internal  use  ONLY,  and  may  be
          re-distributed  to  any  requesting  site,   provided   this
                                                                Page 2


          copyright  notice  accompanies  them and that they are being
          distributed free-of-charge.




               Please send any bug reports, suggestions, or flames  to
          me at


                    Ken Coar
                    Engineering Computer Station
                    100 Engineering Building East
                    University of Massachusetts
                    Amherst, MA   01003


          Alternatively, I  may  be  reached  via  netmail  on  CSnet,
          ARPANET, or Usenet at COAR.UMASS-ECE@UDEL-RELAY>.

               Enjoy, folks!



                                        Ken A L Coar
========> [VAX83B.ECS.BECOME]AAAREADME.TXT;1 <========






                          The BECOME Command

               The BECOME command allows a privileged user  to  assume
          almost  any  attributes of any user in the UAF.  The program
          requires CMKRNL privilege, since the information it  changes
          is in protected memory.

               There is help for BECOME in the file  BECOME.HLP.   The
          program   is   pretty   much  self-explanatory,  I  believe.
          /USERNAME and /UIC are the defaults, which may be changed by
          editing  the BECOME.CLD file.  If you plan to put the BECOME
          executable somewhere other than SYS$SYSTEM,  the  .CLD  file
          will need to be edited to reflect the new location.

               BECOME is a command, and the command definition for  it
          is  in  the aforementioned .CLD file.  See the AAAREADME.1ST
          file  for  INFORM  for  information  about  installing   the
          command.

               We have found BECOME very useful at ECS, since we  have
          a  number  of  'development' accounts (privileged) which are
          very project-specific.   BECOME  allows  us  to  keep  these
          quotas  and privileges separate without having the danger of
          the  account  being  broken  into  -  since  they  are   set
          /FLAGS=DISUSER  in the UAF!  Also, BECOME is very useful for
          moving files around without having to look up a UIC and then
          set it.

               BECOME tries to grab CMKRNL, so if your  AUTHPRIV  mask
          specifies either CMKRNL or SETPRV (regardless of the CURPRIV
          mask), you can use it.  When munging privileges, it modifies
          ONLY the CURPRIV mask.

               A word of caution, and a note  on  our  implementation:
          DO  NOT  INSTALL  BECOME!   It  is a very dangerous program,
          having essentially the same implicit hazards of  SETPRV  and
          DETACH,  and  should be used ONLY by responsible people.  At
          ECS, we have two sets of  commands:   those  the  users  can
          execute, and those available to the staff.  The latter are a
          superset of the former.  The users are  not  even  aware  of
          such  programs  as  BECOME, as the help is in a help library
          pointed to by a GROUP logical name  available  only  to  the
          staff groups.  The command set is set up by the system login
          procedure  (SYS$SYLOGIN),  and  the  staff  command  set  is
          protected from world access.

               BECOME is usable only on VMS systems  running  V3.0  or
          higher.
========> [VAX83B.ECS.GQM]AAAREADME.TXT;1 <========






                    The Group Quota Manager (GQM)

               The Group  Quota  Manager  (GQM)  program  was  written
          because  I saw a crying need to get SOME sort of correlation
          between usernames and disk quotas.  It was written under VMS
          V2.2,  so  there are some things it lacks (such as prompting
          help).  On the  other  hand,  some  V3.0  enhancements  were
          added, so GQM understands volume sets.

               In order for GQM to work, diskquotas must be enabled on
          the  target  device.   Once  that has been done, a series of
          initialisation commands must be issued to GQM, and then  the
          diskquotas  may  be maintained by GQM indefinitely, and with
          much less agony than with DISKQUOTA.

               GQM also helps track down UIC's which  own  space,  but
          aren't  associated with a username.  See the last section of
          this file for more information.

               GQM should be INSTALLed with SYSPRV,  so  that  it  may
          access  its database file (in the MFD, and described later).
          It does not yet look for commands  from  the  command  line.
          (Next  release...)  The  file GQMHELP.HLB should be moved to
          SYS$HELP, and where GQM.EXE goes is entirely  up  to  you  -
          there  are  no  dependencies beyond the location of the help
          file.

               A minor note, to start off with:  GQM may  seem  kludgy
          in  some  ways,  and  you  can get some bizarre errors under
          certain circumstances, but IT WILL NOT MUNG ANY  DISKS.   It
          doesn't  have  prompting  help (as noted above), and doesn't
          understand  wildcards,  and  implements  only   write-access
          security.   These  will  be  forthcoming in the next release
          (hopefully ready for the Fall VAX SIG tape).   So  hold  on,
          folks.

               Okey.  Once quotas have been  enabled  with  DISKQUOTA,
          here  are  the commands you must issue to get GQM primed for
          operation (It is assumed that DRA1:   is  the  name  of  the
          target disk, and that GQM resides in SYS$SYSTEM):


                    $ RUN SYS$SYSTEM:GQM
                    GQM> USE DRA1:

          (At this point, you may or may not receive a message about a
          created  file.   The  file  involved  is [000000]AQUOTA.SYS,
          which is used to keep track of account allocations.)

                    GQM> REBUILD
                    GQM> MAXIMIZE ACCOUNTS
                                                                Page 2


          (Here is where one of those bizarre  errors  may  raise  its
          head.   You  may  get  a  message about an internal RMS bug,
          which I have been unable to track down.  If you do, it means
          that  the  MAXIMISE operation is incomplete, and that you'll
          have to finish it by hand.  Oh well.)

               GQM  performs  two  levels  of  correlation:   UIC   to
          USERNAME,  and  USERNAME to ACCOUNT.  The account is derived
          from the field of that name in the UAF.   If  you  use  that
          field for some other purpose, you may not be able to use GQM
          to its full extent.  But at least you will  have  the  first
          level of correlation available, and can ignore the second.

               Here's what  GQM  does:   Each  account  (as  described
          above)  is  granted  a  certain  allocation  by  the  system
          manager, or the  equivalent.   Privileged  users  (discussed
          momentarily)  may  apportion  this  among any and all of the
          users IN that account, but the total may never  exceed  this
          allocation.   So,  a  research  group  may  be granted 10000
          blocks, and the wrangling over how it will be  split  up  is
          taken out of the system manager's hands (and hair).

               The privilege which allows a user to muck  around  with
          the  apportionment of space WITHIN HIS OWN ACCOUNT is SHMEM.
          Until  such  time  as  DEC  (R)   implements   site-specific
          privilege  bits,  we'll  have  to  stick  with a little-used
          existing bit.  There are three  levels  of  security  access
          implemented by GQM, which determine how much a user can mung
          allocations.

               The highest access, which I  have  labeled  SYSTEM,  is
          granted  to  all users who:  have SYSPRV, OR have BYPASS, OR
          have a UIC group LEQ the SYSGEN  parameter  MAXSYSGROUP.   A
          user who falls into this category can mung the quotas to his
          heart's content, with GQM'S blessing.  This  means  you  can
          remove  and  add  users  to  the  disk,  and  modify ACCOUNT
          allocations.

               The next level is  called  ACCOUNT  level  access,  and
          allows  the  user  to reapportion quota space WITHIN HIS OWN
          ACCOUNT ONLY.  Users with SHMEM  fall  into  this  category.
          SYSTEM  access  implies  ACCOUNT  access.  Commonly, this is
          available only  to  the  [mmm,000]  user  for  a  particular
          account.

               The least-privileged access is called USER  level,  and
          allows  the  user  to look at the quota allocations, but not
          make any changes.  The previous  access  levels  imply  USER
          access, obviously.

               This is where a hole comes  in:   anyone  can  look  at
          anyone else's quota and usage.  Fixed in the next release...
                                                                Page 3


               The REBUILD function of GQM is very important.   It  is
          this  function which does the actual calculating of how much
          is actually allocated to what accounts.  All other  commands
          assume this value is correct, and merely modify it.  REBUILD
          must be issued any time a user is switched from one  account
          to  another,  and  when  a  disk  is  made available for GQM
          processing, but should not be necessary any other time.  But
          it's  not  a  bad idea to do one every month or so, to catch
          any oversights.

               The last major function of GQM deals with the  vagrants
          -  the  name  by  which I refer to UIC's which own space (or
          have a quota), but  are  not  associated  with  a  username.
          These  often occur when a username is deleted without having
          the files deleted as well, or when reading  UNIX  (R)  'tar'
          tapes, and occasionally with BACKUP.

               The command LIST VAGRANTS will show a list  of  all  of
          these  ownerless  UIC's, and how much space is used by each.
          The REMOVE VAGRANT command will allow you to  discard  these
          when   you  have  released  or  re-owned  all  file  storage
          associated with them.  Vagrants are treated as  errors,  and
          listed by the REBUILD command.

               Well, that's an overview of GQM.  Read  the  help,  and
          experiment.  You cannot harm your disks with it.  Good luck!



                                        Ken A L Coar
========> [VAX83B.ECS.INFORM]AAAREADME.TXT;1 <========






                          The INFORM Command

               The INFORM command allows any user to send  a  one-line
          message  to any other interactive user on the current system
          or on another system available via DECnet (R).

               Examples of its use are in the HLP file that comes with
          this   submission.    It   uses   bit   0  of  the  location
          CTL$GL_SITESPEC to indicate the  status  of  the  /NORECEIVE
          flag.   To  be  used by any user, INFORM should be INSTALLed
          with (CMKRNL, OPER, WORLD, NETMBX).  The CMKRNL  allows  the
          program  to  write to the above location, which is protected
          at URKW.  OPER allows use of  the  $BRDCST  system  service,
          whereby  the  message  is  actually  sent.  WORLD allows the
          program to find the target of the message, and NETMBX allows
          it   to  talk  to  DECnet  (R),  regardless  of  the  user's
          privileges.

               If  you  plan  to  use  INFORM  with  DECnet  (R),  the
          following commands should add it to the permanent database:

                    $ RUN SYS$SYSTEM:NCP
                    NCP>DEFINE OBJECT INFORM NUMBER 128 FILE INFORM

          You may substitute any number you like for the 128,  if  you
          are  already using that object number.  Note that numbers in
          the range 128-255 are reserved to customers, while the 0-127
          range is reserved to DEC (R).

               The file INFORM.COM should be moved to  the  SYS$SYSTEM
          directory,  and edited to reflect the actual location of the
          INFORM executable (should you choose to place  it  somewhere
          other  than  SYS$SYSTEM).   This file is used by the network
          capability of INFORM.  NOTE:  Each node which should be able
          to  receive  INFORM  messages  MUST  have  the  above object
          definition.  The object number may differ from node to node,
          but the name must remain the same.

               INFORM is a command, and the  command  definition  file
          for  it is included in INFORM.CLD.  This file must be edited
          if you plan to locate the INFORM executable  elsewhere  than
          SYS$SYSTEM.   Refer  to  the  Utilities Reference Manual for
          more information on command definition.  If you  don't  care
          about  standards  and  whatnot,  the following commands will
          make INFORM available to all users who log in subsequent  to
          their (the commands') execution:


                    $ SET COMMAND INFORM   -
                          /TABLES=SYS$SHARE:DCLTABLES -
                          /OUTPUT=SYS$SHARE:DCLTABLES
                                                                Page 2


                    $ RUN SYS$SYSTEM:INSTALL
                    INSTALL> SYS$SHARE:DCLTABLES /REPLACE
                    INSTALL> /EXIT


               INFORM may be used ONLY on VMS systems running V3.0  or
          higher.
========> [VAX83B.EVERHART]AAAREADME.TXT;1 <========


        [312,*] COLLECTION - SPRING 1983

        This collection is being submitted for RSX and VAX users who will
find different parts useful. Highlights:

[312,315]       - New version of DGT, a tape utility. New enhancement is the ability
                to read or list Unix TAR format tapes of blocking factors up to
                the Unix standard of 20. Can selectively extract files from these
                tapes too. Also still positions tapes, writes EOF, rewinds,
                reads/writes cardimages (or other length fixed factor files),
                reads DG RDOS tapes, etc. etc. etc. as before. An EXE is supplied
                for use with VMS.
                Also present is my latest/greatest BIGTPC with a switch to let it
                attempt to copy past the end-tape foil to get the double EOF on
                multireel backup sets. Jim Neeland's mod to support
                TU78's is merged in also. A copy of FPEM is included too though it
                needs work to run on M+ V2 still. Hopefully we can get it debugged
                sometime by F83.
[312,345]       - Version 4.0+ of PortaCalc spreadsheet. (Area [312,352] has
                object libraries for building under VMS and an RSX task image
                for those who don't have Fortran. This version is much faster
                than earlier ones and supports larger sheets. It also has greater
                capabilities including full 3D sheet support. Also on RSX the
                arrow keys now work and commands may be entered lowercase if desired.
[312,346]       - Memory disk driver mods for multiple systems
                (M/M+ v3.2,v4, v1,v2). However, still needs work. Won't crash
                M+ V2 but seems to fail to find partition. Included in case anyone
                wants it badly enough to fix it up.
[312,347]       - A spreadsheet from the Unix world. This sheet is less capable
                than PortaCalc, uses the Unix termcap routines (not included)
                for screen I/O. To get it running you'll need something like
                the termcap screen routines (maybe start with the old TECO screen
                routine). A bit of documentation of these is present but no
                code. If anyone wants this badly enough maybe they'll fix it
                up to compile under DECUS C (the new one in the DECUS library
                has floats, longs) and submit it for F83. Of course, your friends
                running Unix might like a copy as is ...
[312,350]       - A CP/M disk utility from the Unix world. Needs some mods to get
                it running for RSX and of unknown quality. Nevertheless, maybe some
                kind soul will get time to fix it up for F83. Claims to read,
                write, list CP/M 1.4 disks on RX drives. Low level I/O needs
                to be replaced with some form of QIO$ access or some other
                low level access kluge. Maybe copy to files on other disks,
                set attributes to 128 byte records, then just read/write
                the records. This gives 2 utils, one to copy to/from real
                RX01 or single density RX02, the other this modification
                utility. Be aware Unix uses bare linefeeds as line terminators;
                you'll need to TECO lf to crlf to read source files, or
                the i/o lib will have to.
[312,351]       - My mods to DUPLEX for delayed transmission of text to
                half duplex systems. Designed to save continual typing
                of control chars. Useful only for source code transmission.
[312,352]       - OLBs of PortaCalc for VMS and .TSK of PortaCalc for RSX. The
                task image has F4PEIS linked in so that it MAY work with the
                emulator.
                                                      Page 2


[312,353]       - Another bit of intercomputer communications software for VAX-RSX
                communications.
========> [VAX83B.EVERHART.345]AAAREADME.TXT;1 <========


        PortaCalc

        Brought to you courtesy of

        Glenn Everhart
        409 High St.
        Mt. Holly, NJ. 08060 USA
        609-261-3709
Spring 1983 Edition: Version 4.3
        This version of PortaCalc is smaller, faster (by a large factor)
and more capable than the ones on Fall '82 SIG tapes. It is now fully
3 dimensional as well (by a reasonable definition of that.) Also, the
keypad finally works on VAX as well as PDP11. See KEYPAD.DOC for info on
the supplied default command files for implementing keypad functions.

ABSTRACT:
        The PortaCalc spreadsheet is a FORTRAN written program able to
perform the usual "what if" types of calculations for anyone with a
compiler, 31KW of task space (more or less), and (in the present
version) an ANSI 3.64 terminal (e.g. VT100). The program is easily
recustomized for other terminals and designed for portability and
functionality. A data management system interface is built in, permitting
spreadsheets to access a potentially unlimited number of files and
records or parts of records in those files for user defined functions,
numbers, formulas, text, or whatnot. In fact it has many of the attributes
of a language.
        Three versions are provided, with complete source code for
all: a PDP11 version for I/D space machines that builds flat under
RSX11M+, an overlaid version for other mapped PDP11's under regular
RSX (11M or 11D/IAS), and a version for VAX that builds (flat of
course) under VMS. I assume the F77 compiler but the program is in
Fortran 66 (I use the /NOF77 switch). It is expected only minor changes
would be needed for the DEC Fortran IV compiler however.
        A separate graphics output task is documented in PCG.DOC
and provides histograms or scatterplots of any areas of the saved
spread sheets with a simple command syntax.

RESTRICTION:
        The overlaid version provides only a rather small spreadsheet,
though it is large enough to be useful in many applications. There are
some overlay tricks I haven't tried to increase the size, notably clustering.

SPECIAL HARDWARE:
        The software must be built for the appropriate terminal. Versions
of the UVT100 subroutine for VT100, VT52, Datamedia Elite, and several 
other types of terminals including VT100 with Advanced Video and Colorscan 10
are supplied, with command files for most combinations. The VT52 version
will show what the minimum requirements are for control. Most any terminal
can be easily interfaced to the package by editing one of the UVT100 routines
to correspond to the terminal's control sequences, provided direct cursor
addressing is supported.

BUILD:
        There are 3 build files.
        COMPIL.COM      Build for Vax/vms...only compiles. Concatinate
                                                      Page 2


                        the objects and link.
        MAKE.CMD        Non-overlay I/D space build for RSX11M+ V2
                        (uses F77 Compiler in non-F77 mode)
        SOMAKE.CMD      Compact overlay structure, OK for any 11,
                        RSX11M/M+.
Note: THERE ARE COMPILER WARNINGS (ABOUT FUNCTION "INDEX") WHICH SHOULD
        BE IGNORED DURING THE BUILDS.
                I ASSUME FORTRAN 77 IS INSTALLED AS ...F4P.

        PRIOR TO BUILD:
        You must be sure the final VKLUGPRM.FTN is as you will need it.
The PDP11 command files generally copy one of the template versions to
this file, but the parameter file may be edited as may any template.
The VAX versions of command files generally assume you know what you
have is right. READ the appropriate template.
        Supplied templates include:

        VVKLUGPRM.FTN   VAX "standard" version for VT100 with or without AVO
        BVKLUGPRM.FTN   VAX "big" version for VT100
        VVKLUGPR5.FTN   VAX "standard" version for VT52 systems
        BVKLUGPRM.FTN   VAX "big" version for VT52 terminal use
        MVKLUGPRM.FTN   PDP11 version for RSX11M+ V2 I/D space, VT100
        MVKLUGPR5.FTN   PDP11 version for RSX11M+ V2 I/D space, VT52
        SVKLUGPRM.FTN   PDP11 version for RSX11M/M+ overlain, VT100
        SVKLUGPR5.FTN   PDP11 version for RSX11M/M+ overlain, VT52

Note that several variants of UVT100 exist too. The ones presently
included are:

        UVT100.FTN (.FOR for VAX)       VT100 control, no Advanced
                                Video Option (AVO) assumed. Many entries
                                are not called by PortaCalc. The ones
                                that are used are:
                                        CUP     Cursor Position
                                        ED      Erase Display
                                        SGR     Set Graphics Rendition
                                        EL      Erase Line
                                        ANSI    set ANSI mode (may be nooped)
        UVTAVO.FTN      VT100 control with AVO terminal support. Includes only
                                entries needed. Also uses underline to
                                underline alternate rows and will display
                                display-sheet row numbers as well as physical
                                ones.
                                This version will also highlight negative
                                values in intensified video.
                                By editing to change how NUL is set in the
                                CUP entry, this could be set to highlite
                                entries over/under a fixed amount (put the
                                amount in one of the letter accumulators).
        UVT52.FTN       VT52 control. Since VT52 terminals have no reverse
                                video, draws a ">" character in first col. of
                                cell pointed at to indicate cursor location.
        UVTDM.FTN       Datamedia Elite 1500 control. Similar to UVT52 but
                                cursor controls for Datamedia.
        UVTCS.FTN       Datamedia Colorscan-10 control. This terminal uses
                                                      Page 3


                                VT100 sequences, but UVTCS will use some of
                                the color setup sequences to create a
                                multicolor spread sheet. Colors are not used
                                for showing negative numbers but could be
                                adapted to (compare UVTAVO).
        UVTTV925.FTN    Televideo 925 experimental version. This version
                                has not been well tested but is intended
                                for Televideo 925 terminals.
You may easily adapt the UVT100 subroutine from any of these to handle
whatever terminal you have using these routines as examples. Note the
parameter JVTINC in the VKLUGPRM.FTN which adjusts for the backspace
generated by UVT100 on SGR calls needs to be set correctly.
        Adapting UVT100 to your terminal and setting up VKLUGPRM.FTN
correctly are the necessary setup actions needed prior to compiling
and building PortaCalc. You may of course get UVT100 to determine
what terminal type is there itself, or use the VMS terminal independent
cursor positioning logic, if you wish. On a VAX you may also want to
inhibit scrolling. To get PortaCalc to control the PDP11 more efficiently
you may also want to SET /SERIAL=TI: under RSX (which will inhibit MCR
from grabbing input you want to send to PortaCalc).
        The RSX flavors of PortaCalc can use escape sequences and now
recognize VT100 arrow keys (VT52 too) and also that PF2 means "help".
On VMS, the ESCAPE parameter works differently so the arrow key support
is somewhat flaky. Edit to use a QIO$ to read the commands to fix this
if you wish, just before CMDMUN is called...
Remember under VMS to copy the desired file to VKLUGPRM.FTN before
compiling.
        Ignore compiler/linker errors in RSX or VMS. They are harmless
warnings.
        On overlay builds, some functions (notably the F file readin
function) are commented out of OXQTCMD.FTN. You may uncomment them to
get the functions if things fit. They may. Journaling is commented out
except for VAX versions due to number of open files needed. Uncomment
for PDP11 if you wish.
        You should be able to build PortaCalc with regular old F4P
but you may need minor changes to some OPEN statements.
        Note too the CMDMUN and TTYINI routines to set up the console.
The supplied RSX versions implement case translation and enable the arrow
keys. The VAX CMDMUN usually should be used but its' TTYINI is probably
wrong and the dummy should be used. The idea is to effectively
SET TERM /ESCAPE (and SET TERM /NOWRAP) on VMS to get the full escape
sequences in. At least set the nowrap attribute. VMS does funny things
to the escape sequences; I haven't deciphered them yet.

WRITEUP:


        This is a spreadsheet written in Fortran (the only universal
assembler) for portability. Its functions are described in the separate
document file; it assumes VT100, but the UVT100 routines are the
only places the VT100 is actually handled in screen mode, and may be
altered for other machines.
        The spreadsheet sizes may be defined by editing the parameter
file Vklugprm.ftn (caveats and restrictions are listed there). There
are 2 sheets -- a big physical sheet and a small display sheet which
                                                      Page 4


is what's really shown on screen. Sheets may be saved/merged/restored/
linked (via saved files)/printed or hardcopy made onto files. Numerous
other functions exist.
        The sheet's physical size can be tailored to any desired size
(subject to memory constraints) by editing VKLUGPRM.FTN and recompiling.

        WHEN BUILDING PORTACALC, YOU MAY ENCOUNTER FORTRAN WARNINGS
ABOUT THE INDEX FUNCTION BEING ASSUMED USER SUPPLIED. IGNORE THESE;
THERE IS AN INDEX FUNCTION SUPPLIED HERE, AND THE WARNINGS ARE OF
NO CONSEQUENCE, EITHER ON PDP11 OR VAX.

        There are 2 ODL files, either of which can build a reduced
version when the fortran files are compiled with OVKLUGPRM.FTN
renamed to VKLUGPRM.FTN, included. There is a bit of extra space
so the parameters in that file can be enlarged somewhat. They use a
very overlain FCS and F4P OTS. You may be able to do similar things
clustering an FCSRES and a F4PRES together too. However, the overlay
versions (made with the OMAKE.CMD file) do work, though more slowly
than the I/D space one. This at least gets you something on a machine
with only normal 11/34 type resources. I assume the F4P or F77 compiler
here for the OTS part. You will need to tailor to other Fortran
compilers on PDP11's yourself.

                NOTE:
        If you get this program working on a non-PDP11, non-
VAX, the author would appreciate a (machine readable) copy of
the modified version.

BUGS:
        The functions here are mostly tested, but some bugs may remain.
        Fortran formats are used and any format entered will be used.
If you put something in that Fortran can't understand, you lose.
Portacalc will try your format once before writing to disk, however, to
(hopefully) prevent you from generating an un-reusable work file.
Conversely, you can use things like O or Z formats for octal/hex
or whatever you like. Formats A and L by themselves mean "display the
formula itself"; anything else means "display the number". On entering
numbers, any formula containing the characters ".","[","+", "(", or "-" is
treated as a numeric; anything else is treated as a formula, unless the
string contains the double quote (") character, which forces it to be
treated as a literal rather than a number regardless of what else it has.
The DF command can fix up this if it's not what you want. Note too that the
multi-argument functions:
        SUM[args]       Sum
        MAX[args]       Maximum
        MIN[args]       Minimum
        AVG[args]       Average
        STD[args]       Standard Deviation
and the statement
        IF [v1.RL.v2]true-statement|false-statement
must appear at the start of a formula or formula substatement (substate-
ments are delimited by \ characters) and the value goes into the
current variable cell (which is universally named P## if you want something
location independent). It's a good idea to include an else statement in
IFs since something gets put in otherwise.
                                                      Page 5


                        Glenn Everhart

FURTHER NOTE:
        In response to some user queries, I have added some comments in
the XQTCMD.FTN and OXQTCMD.FTN code about journaling. They are a section
of code (look for it just before the string "'*'" (minus the " chars))
which will implement journaling. The syntax of the journaling command
would be
        +J filename
which will cause Portacalc to record all commands issued to it in a file
of the given name. The command +N will close the journal file and stop
recording..
        If you want to implement the functions, just take out the initial
C's in column 1 and use. It uses unit 10, and I didn't want to overload
task size on PDP11's. On VAX it should be fine.
                        Glenn Everhart
        The journaling commands are implemented by default for VAX; not
for PDP11 for size reasons. Try them if you want however; they work well.


        PortaCalc
This file is VAX build notes:
        To build PortaCalc from supplied object libraries, you need
just to extract all objects from a library and link:

$LIBR/EXTRACT=*/OUT=PCCAVO.OBJ PCCAVO.OLB
$LINK/NOMAP PCCAVO
 or replace PCCAVO (VT100 version with advanced video) by
PCC100 (for VT100 without advanced video) or PCGRAF (for the
graphics utility). These should run even if you don't have Fortran.
        For those with Fortran, the COMPIL.COM file builds
these files from source. You can edit the VVKLUGPRM.FTN file
first (compil.com copies it to vklugprm.ftn for inclusion in the
compiles) to set your max sheet sizes if the ones supplied are too
small. The maxima possible then are large enough you are very
unlikely to need to go into sources to edit them.
        The file PortaCalc.hlp can become a VAX help library
and be integrated with your system help if desired. The graphics
utility is described separately in PCG.DOC and there is a file
called KEYPAD.DOC in the distribution which describes various files
of PortaCalc commands which implement auxiliary keypad functions.
It should be edited to reflect any system default changes if
these features are to be generally used. Note that if CMDMUN.FOR
is compiled with the /debug qualifier, these files reside on device
DK:, which may be ASSIGN/USER'd to a particular system area prior
to running the local PortaCalc version.

        Apology:
        To those who have come to know and love the name ViziKluge
which used to appear as this program's alternate title:
        I have withdrawn the name ViziKluge from the title page since
it can be interpreted to mean the program is not really a useful
tool. In fact, you will find PortaCalc a spreadsheet equal or greater
in power to most any commercial product on the market, of speeds
comparable with any of them, and more easily tailored to particular
                                                      Page 6


needs than most. I am also mindful of the difficulty of convincing
people to use a tool named "vizikluge", since its' command set is
not closely related to anyone else's and learning it is another
educational chore people may have. This is the reason for the
alternate keypad commands (which I may expand and which you will
see can be expanded yourself by editing cmdmun.for or perhaps
xqtcmd.for) and the alternate keypad diagram.
        I expect eventually to offer a supported and enhanced version
of this program commercially (for a price similar to those of
Z80-based sheets, however; I am opposed to super high priced
software just because it runs on VAXen or PDP11's and encourage
users to revolt against it as I have done). For the present,
however, enhancements to this version of PortaCalc are expected
at most to include spawning subprocesses and perhaps a Datatrieve
interface for the VAX versions only. I'm considering an interface
to the public domain RIM DBMS instead, since that DBMS is pretty
good and available from Boeing for a copy fee. However, the
difficulty of providing a general purpose DBMS interface is
considerable where values need to be returned. Therefore, a usable
general purpose database interface may wait on a commercialized version
which will integrate various other tools as well (including hopefully
editing, more complex graphics, and timekeeping).
        I recommend all who use this product for office automation
look into the DTC program from DECUS also (#11-597, code MC $70).
It's a highly useful desktop calendar program for doing time based
scheduling, meetings, etc.
                Glenn Everhart
                6/14/1983
        KEYS ON VT100
            FOR
        PORTACALC

        The files KYP.CMD, KYR.CMD and KYSAUX.CMD implement auxiliary
keypad commands when used with PortaCalc for PF1, PF3, and PF4
keys. They need to be inside the login account as presently set up
but can come off DK: device if CMDMUN.FOR is compiled /DEBUG.
        Functions:

PF1 (KYP.CMD)   WIDE - Sets screen into wide mode and sets up display of
                10 columns. (The DB command can vary this)
PF2  (no file)  HELP (gets to top help page. A reply of Hn instead
                        of just return will get help page n.
PF3 (KYR.CMD)   NARROW - Sets screen into 80 column mode and sets display
                back to 7 columns (DB command may vary this)
PF4 (KYSAUX.CMD) ENTER - Turns off aux keypad mode and goes into a mode
                of reading input for expressions to enter, entering them
                at current cursor position. The Mn command should have
                previously been used to set automatic motion. Any control
                character or space as 1st entered character, or \ as
                first entered character, gets out of enter mode and back
                to normal command mode.
Note if aux keypad mode isn't turned off, various AKl.CMD files (l varies
from A to N; see cmdmun.for) may be used for user defined commands.


                                                      Page 7


 To implement this scheme rename KYSAUX.CMD to KYS.CMD; otherwise you
use KYS.CMD which means "recalculate" and the keypad is all a lot of
functions.
========> [VAX83B.EVERHART.346]AAAREADME.TXT;1 <========


        The files in this area are edits of the FX driver from
the Fall '82 SIG tape. They are not wholly debugged but attempt
to do 2 things:
1. Get FXDRV to work under all flavors of RSX11M or M+
2. Check the fork list frequently so the driver won't hang your
   system from fork processing too long at a time.
  The FX driver implements a memory disk. This version still has
problems with M+ V2, though it at least doesn't crash systems. It
looks like the search logic for finding partitions works wrong in
M+ V2 somehow. These files are placed here for some kind soul to
fix. I'll try to if I can get time to...
========> [VAX83B.EVERHART.347]AAAREADME.TXT;1 <========


        This area contains a spreadsheet of limited capacity written at
CMU for Unix. It will need some work to convert for RSX; in particular
some replacement for terminal screen I/O must be built. Hopefully there
is enough documentation to do it.
========> [VAX83B.EVERHART.350]AAAREADME.TXT;1 <========


        This area has a Unix program to read/write/list directories
etc. on CP/M disks using DEC drives. By some minor editing it ought to
be able to work under RSX using DECUS C. The low-level I/O needs to be
done. I haven't had time, but am placing this here so some kind soul
might do so by the next time.
========> [VAX83B.EVERHART.351]AAAREADME.TXT;1 <========


        This is the famous "duplex" program from DECUS modified
to provide the ability to delay between characters or lines sent
to remote systems as needed. Kind of a kluge, but useful. Note
that Duplex doesn't generate any kind of parity ASCII. For that
get XMIT off old RSX SIG tapes; it can.
========> [VAX83B.EVERHART.352]AAAREADME.TXT;1 <========


        These files are VMS object libraries for the default
VT100 (AVO and non-AVO) versions of PortaCalc. The .TSK image
is however a version of PortaCalc built for straight RSX11M
with no special system conditions.
========> [VAX83B.EVERHART.353]AAAREADME.TXT;1 <========


        This is a terminal I/O program for VAX that supplements
VAXNET and handles parity.
========> [VAX83B.FERMILAB]AAAREADME.TXT;1 <========


     [VAXS83.FERMILAB]AAAREADME.TXT


                Fermilab Accelerator Control System Submissions


                                 submitted by:


                               Dr. Frank J. Nagy
                     Fermi National Accelerator Laboratory
                P. O. Box 500 Mail Stop 306, Batavia, IL. 60510
                                 (312)-840-4935



          This directory tree is a submission from the Fermilab Accelerator
     Division.   The  new  Accelerator  Control  System  (called  ACNET for
     "Accelerator  Control  Network")   contains   two   VAX-11/780's   and
     (currently)  17  PDP-11/34's.   The programs and command procedures in
     this directory  tree  are  general  utilities  and  system  management
     utilities either written at Fermilab or acquired from DECUS (via a SIG
     tape or from the library) and possibly modified.  In  many  cases  the
     software can be used at other sites without modification;  some of the
     system management utilities are included as starting points from which
     sites  can  produce  their  custom  versions.   Each of the next-level
     subdirectories includes a README.1ST file  which  provides  additional
     details;  this file provides an overview of the entire submission.



     [.DOCUMENTS]


          This area contains  several  documents  of  general  interest  in
     RUNOFF  form.   Included  are  articles submitted to "The Multitasker"
     and/or "Pageswapper" on RSX-11M V4.0 SYSGEN's under VMS and  usage  of
     RSX-11M BRU on the VAX.


     [.FERMIEXE]


          This area is copied from the [FERMIEXE] directory on  our  system
     disk.   We  use the FERMI$EXE:  logical name to reference this area in
     which we store locally-written  utility  procedures  and  programs  of
     general use.  Some of these procedures were originally gotten from VAX
     SIG tapes but have been "improved" somewhat.  Similar comments can  be
     made  about  some  of  the programs.  The sources for the programs are
     found in the [.SOURCES] subdirectory (or its subdirectories).


     [.FERMILIB]

                                                                          Page 2


          This area contains command procedures for manipulating libraries.
     The  package submitted to the DECUS library as VAX-38 is also included
     (allows a symbol definition macro to be converted to a FORTRAN INCLUDE
     file  of  PARAMETER's).  The [.DTR32] subdirectory contains files used
     to add several  user-written  functions  to  VAX-11  Datatrieve.   The
     [.INCLUDES]  subdirectory contains FORTRAN, PASCAL and C INCLUDE files
     used to construct the text libraries found in the [.SYSLIB] directory.
     The  [.SOURCES]  and  [.MACROS] subdirectories contain the sources for
     utility routines created as extensions of  the  VMS  Run-Time  Library
     (see  [.FERMILIB]README.1ST  for  details).   The  [.USS] subdirectory
     contains a (currently  undebugged)  user-written  system  service  for
     declaring  AST's in a separate process (i.e., process A can declare an
     AST in process B).


     [.MISC]


          This area contains some miscellaneous  stuff  including  template
     files for modules and subprogams written in FORTRAN, MACRO or C.


     [.SYSHLP]


          These help libraries contain additional information  to  the  VMS
     help library.  We reference FERMIHELP and RSXHELP with commands of the
     same name created by the system-wide login procedure.  Help on most of
     the   utilities   and   programs   in  [.FERMIEXE]  can  be  found  in
     FERMIHELP.HLB.  These libraries are stored in SYS$HELP:  at Fermilab.


     [.SYSLIB]


          These are the text libraries for VAX-11  FORTRAN,  VAX-11  PASCAL
     (which  doesn't  use  it)  and  VAX-11  C containing locally developed
     include modules.  Many of the include modules  were  constructed  from
     VMS  symbol  definition  macros  in  STARLET.MLB  or LIB.MLB using the
     procedures in [.FERMILIB].  Also included are our  general  macro  and
     object  libraries  (FERMILIB.*) which act as extensions of STARLET.MLB
     and VMSRTL.  At Fermilab, these files are found in SYS$LIBRARY:.


     [.SYSMGR]


          This  directory  tree  contains   many   procedures   and   other
     information  useful to system managers.  Many of the procedures can be
     used as provided;  some will require some modifications and others are
     useful only as examples of a particular individual's system management
     methodology.  See the README.1ST file for the extensive details.  Note
     that at Fermilab, the [.SYSMGR] area is SYS$MANAGER:.


     [.SYSUPD]
                                                                          Page 3


          This area contains the DYVMSUPD command  procedure.   This  is  a
     modification  of  the  VMSUPDATE  procedure  and  installs VMS layered
     software from DYA1:  (RX02) rather than  the  console  floppy  and  is
     considerably  faster.   These  were  copied from SYS$UPDATE:  for this
     submission.




          Most of the command procedures and  programs  are  documented  by
     header  comments in the source.  In most cases we have (automatically)
     stripped these comments into a help file which has been included  into
     a  help  library (either in SYS$HELP if public or SYSMGRHLP.HLB if for
     system management).
========> [VAX83B.FERMILAB.DOCUMENTS]AAAREADME.TXT;1 <========


                              [FERMILAB.DOCUMENTS]

     This area contains various documentation files and command  procedures
     associated  with creating or maintaining documentation files.  Some of
     the more interesting files are:

     1.  CONSFLOPY describes the contents of the local VAX-11/780  floppies
         used  at Fermilab in the ACNET system in which the disk drives are
         dual-ported (for switching drives between the two VAX's)  and  are
         connected  to  two MASSBUS controllers.  We implemented a modified
         naming scheme for the VMS boot files to allow for all combinations
         of  drives  and controllers in a more straight forward manner than
         the DEC-supplied files.  Copies of the boot files  themselves  are
         found in [.SYSMGR.BOOTS].

     2.  DOBACKUPS describes the procedures followed by the technical staff
         in  order  to  perform  online  disk  backups  using  the  command
         procedures found in [.SYSMGR.UTILITIES].

     3.  DZLPCPUT describes the results of rough measurements  of  the  CPU
         load due to LP11 line printers and DZ11 terminal controllers.  Six
         9600  baud  terminals  TYPE'ing  at  once  effectively  use  up  a
         VAX-11/780.

     4.  HLPTORNO is a procedure to do some of the  work  to  turn  a  help
         library module into a RUNOFF input file.

     5.  OPERATOR describes the commands available in the captive  OPERATOR
         account  on  our  systems.   This  permits a privileged account to
         perform system operator functions by any user in a relatively open
         shop environment with seriously sacrificing system security.

     6.  RSX4GEN and RSX4GENA (Multitasker  article)  describe  an  RSX-11M
         V4.0 SYSGEN under VMS.

     7.  VAXBOOT describes the procedures required  to  boot  the  Fermilab
         Accelerator VAX's for naive users.

     8.  VAXBRUART  is  the  article  submitted  to  the  Multitasker   and
         Pageswapper describing the use of RSX-11M BRU on a VAX.

========> [VAX83B.FERMILAB.FERMIEXE]AAAREADME.TXT;1 <========


                             [FERMILAB.FERMIEXE...]

     This area is basically a copy of the FERMI$EXE (logical name) area  on
     the  Fermilab  Accelerator  VAX's.   Under  this logical name we store
     command procedures and utility programs that would otherwise  seem  to
     be  placed  in SYS$SYSTEM:.  This is done to keep our non-DEC software
     separate from the DEC provided software in order to eliminate problems
     due  to  similar file names or problems with system upgrades (i.e.  to
     VMS V4.0 next year).

          The sources for many of the executable images can be found in the
     [.SOURCES]  subdirectory  or its subdirectories.  Documentation on the
     programs is found in the sources and in FERMIHELP.HLB which is in  the
     [FERMILAB.SYSHLP]  area.   Similarly,  documentation  on  the  command
     procedures is found in the help library and in comments at the head of
     each procedure.

          Many of the procedures and  programs  originally  came  from  SIG
     tapes  or  from  the  DECUS library.  In several cases the program (or
     procedure) has been modified to add additional capabilities.  We would
     like  to  thank  the  authors of these programs for submitting them to
     DECUS in the first place.


     Some of the more interesting files are:

     1.  Programs to provide process control via foreign  commands.   These
         include  ABORT,  FORCEXIT, RESUME, SUSPEND and WAKE.  The commands
         have the format:

                   $ command[/ID=process-id] [process-name]

         ABORT and FORCEXIT perform a $FORCEX system service passing as the
         exit status SS$_ABORT or SS$_OPRABORT respectively.

     2.  Several of the programs are from the  DECUS  C  tape  (AS  is  the
         assembler  and  CC  is the C compiler itself).  The C compiler has
         been modified to search logical  name  RSX$C  for  include  files.
         Others  from  the DECUS C tape that are here are AR, BANNER, CCXRF
         (XRF in disguise), GREP, KWIK, LEX, MC, MP, NM, PR, T,  TODAY  and
         WC.

     3.  BATCH is a command procedure to execute a  single  command  (or  a
         series  of commands) as a batch job without the hassle of creating
         a temporary file and SUBMIT'ing oneself.

     4.  BURSTF is from a previous SIG tape (unknown) and will burst a file
         of   FORTRAN   routines   into  individual  files  (one  file  per
         subroutine).  BURSTF has not been modified.

     5.  COOKIE is the fortune cookie program from an  early  copy  of  the
         DECUS  C  tape.   The  message file is found in [FERMILAB.SYSMSG].
         The program to build the message file is MKCOOK (in this area) and
         documentation  can be found in NEWSLIB (in area [FERMILAB.SYSHLP])
         under topic COOKIE.
                                                                          Page 2


     6.  DELTREE is a procedure to delete an entire directory tree.  It  is
         interesting in that it recursively invokes itself.

     7.  DFORK is much like  FORK  (see  below)  except  it  uses  detached
         processes.

     8.  EDITSET permits a series of EDT line mode commands to be performed
         one  a  set  of  files  (may  be specified by wildcards).  This is
         useful to perform a substitute command across several files.

     9.  ETAPE is a program for manipulating  foreign  tapes,  particularly
         EBCDIC tapes.  It came from an earlier SIG tape and is unmodified.

    10.  FINGER is a replacement for SHOW SYSTEM which also lists the  file
         name of the current image and uses the file SYS$MANAGER:WHO.WHR to
         list  the  location  of  the  terminal.   The  original  (may   be
         modified?) came from an earlier SIG tape.

    11.  FORK is a procedure much like BATCH except  that  the  command  is
         executed  in a subprocess.  FORK is left over from VMS V2 where it
         provided some of the  functionality  now  in  the  SPAWN  command.
         However,  FORK  is  still  useful  in that it produces a .LOG file
         containing the output from executing the command(s).

    12.  FPRETTY is a program to pretty-print a FORTRAN source file.  It is
         unmodified and came from an earlier SIG tape.

    13.  FTNCODCNT is a program from Fermilab to count the  lines  of  code
         and  comments  in a FORTRAN source file.  This program will handle
         wildcards and prepare statistics on  a  file-by-file  basis  along
         with a summary at the end of its execution.

    14.  FTPRINT is the Formatted  Text  Printing  program  from  Fermilab.
         This  program is useful to prepare listings of TECO macro files as
         it replaces non-printing characters  with  recognizable  mnemonics
         (such  as  "<ESC>"  for  escape  characters).  FTPRINT will handle
         wildcards and can add  heading  lines  and  line  numbers  to  the
         output.

    15.  GETUAF is a DECUS library program to access the UAF file.  It  has
         been  modified  to add additional qualifiers to return information
         on the various flag bits stored in the UAF (such  as  the  CAPTIVE
         flag).

    16.  GTBOOTTIM is a Fermilab program to return the system boot time  in
         a DCL symbol.

    17.  HELPDOC is a procedure to convert a  help  library  entry  into  a
         nicely  paginated  file  for  printing as a document.  Extra lines
         listing the help topic name are removed and the output is gathered
         into  pages  to  avoid splitting 1 line of a paragraph on one page
         and the rest on the next page.

    18.  HOME is a procedure to simplify SET DEFAULT.
                                                                          Page 3


    19.  MACCODCNT is the equivalent of FTNCODCNT for MACRO sources.

    20.  RESEQ  is  a  program  to  resequence  FORTRAN  sources.   It   is
         unmodified from a version found on an early SIG tape.

    21.  RETAB is a program to remove or restore tabs to text files.  It is
         from a SIG tape and is unmodified.

    22.  SET132 and SET80 are defined as commands  of  the  same  name  and
         switch  a  VT100  between  132-column and 80-column modes.  At the
         same time the terminal characteristics are changed to reflect  the
         new line length.

    23.  SWINDOW is a procedure to setup the VT100 to fix a portion of  the
         upper  part of the screen and use only a specified number of lines
         at the bottom as a scrolling window.  This  permits  one  to  keep
         help text visible while continuing to enter commands.

    24.  TIME is a time calculation program from the DECUS library.  It has
         been  modified to add keywords such as YESTERDAY, TODAY, TOMORROW,
         etc.

    25.  WHO is the DEC-supplied WHO program from VMS V2.

    26.  WILDRENAM implements a limited wildcard renaming scheme.

========> [VAX83B.FERMILAB.FERMIEXE.SOURCES.ETAPE]AAAREADME.TXT;1 <========


                        Abstract
                        ========

ETAPE is a general-purpose program for handling EBCDIC tapes. It allows
the user to move around at will within the tape, send output to different
files, specify different blocksizes and record lengths for different files
on the tape, and combine multiple tape files into a single output file.
The capability of writing an EBCDIC tape from an ASCII file is also
included.

ETAPE removes all trailing blanks from tape records after reading them.
On output, records will be blank padded and blocked to create fixed length
tape blocks. A switch can be set to turn off the EBCDIC translation and
allow the translation (or writing) of ASCII tapes.


                        Installation
                        ============

There should be the following files on the tape:

        ETAPE.FOR       source program & subroutines
        ETAPE.HLP       help file for the program
        ETAPE.COM       procedure to compile, link and install ETAPE
        IODEF.FTN       parameter file for compilation
        LBRDEF.FTN      parameter file for compilation
        SSDEF.FTN       parameter file for compilation
        ETAPE.EXE       executable version
        README.TXT      this file

After copying the files off the distribution medium, simply @ETAPE to
install the program. Then, type "HELP ETAPE" for further information.
An executable version of the program is also included, in case you
don't have the VAX FORTRAN compiler.


Please direct questions or comments to:

Mike Shefler
CONSAD Research Corp.
121 N. Highland Ave.
Pittsburgh, PA  15206
(412) 363-5500

========> [VAX83B.FERMILAB.FERMIEXE.SOURCES.GETUAF]AAAREADME.TXT;1 <========


                   GET User Authorization File data (GETUAF)
                   -----------------------------------------

        The GET User Authorization File data (GETUAF) program allows a
        privileged  VAX/VMS user to obtain from the User Authorization
        File (UAF) information about another user by specifying either
        the  Username or the user's UIC.  The information available is
        the user's Username, UIC, Account,  Owner  name,  Device,  and
        Directory.  In addition to this, GETUAF can find an unused UIC
        member for a specified UIC group (very useful for  adding  new
        users  to  the system).  The information requested is returned
        in DCL local symbols which may then be used, via substitution,
        in  subsuquent  DCL  commands.  Complete HELP instructions are
        supplied with the program which describe its use and syntax.

        The Floppy disk containing the files for the GETUAF program is
        formatted  as  a  Files-11  Structure  level  2  disk  (single
        density).  Note:  This program may be distributed on Mag  Tape
        for users who do not have a single density floppy disk drive.

        The files for GETUAF are located in  the  directory  [GETUAF].
        All  the  files in this directory are part of GETUAF.  A short
        description of each file is given below:

          0README.1ST     Contains this notice.
          0README.RNO     The  RUNOFF  source  used  to  generate  the
                          0README.1ST notice.

          ABSTRACT.DOC    This is  the  abstract  submitted  to  DECUS
                          along with the program.
          ABSTRACT.RNO    The  RUNOFF  source  used  to  generate  the
                          ABSTRACT.DOC  file and the opening paragraph
                          of 0README.1ST notice.

          GETUAF.EXE      A linked executable version of  GETUAF.   In
                          order  to use this program a foreign command
                          must be  created  and  the  user  must  have
                          SYSPRV  (or  the  System Manager may install
                          the program with SYSPRV privilege at  system
                          startup   time).    To  define  the  foreign
                          command enter the following:

                             $ GETUAF :== $disk:[directory]GETUAF.EXE




          GETUAF.HLP      This is a HELP module describing how to  use
                          GETUAF.   This module is ready for adding to
                          the        system        HELP        library
                          (SYS$HELP:HELPLIB.HLB).   To add this module
                          to the HELP library you  use  the  following
                          command:

                             $ LIBRARY/HELP SYS$HELPLIB.HLB GETUAF.HLP

                          Note:   In  our  system  all  non-DEC   help
                          modules  have  '_$'  appended  to the module
                          name.  If you do not use this convention you
                          must edit the file GETUAF.HLP and remove the
                          '_$' from the first line of the file  before
                          adding it to HELP.

          GETUAF.GEN      Command proc to  compile/assemble  and  link
                          all  the  source  files needed to generate a
                          new version of GETUAF.
          GETUAF.LNK      The actual command proc used to link GETUAF.
                          Called   by  GETUAF.GEN  or  seperatly  when
                          developing enhancements to GETUAF.

                Source files.

          GETUAF.FOR      GETUAF main program.

                General support routines borrowed from other projects.

          DEF.MAR         Defines external symbols for use by  FORTRAN
                          modules.
          DEFSYM.MAR      Routine to define a DCL symbol  for  use  by
                          command procs.
          GETSTRING.FOR   Routine to find a string bounded by  blanks,
                          tabs, eol.
          LOGTRANS.FOR    Routine to translate a logical name  to  its
                          lowest level.
          NARGS.MAR       Routine  to  tell  a  subroutine   how   may
                          arguments it was passed.
          QSTRING.FOR     Routine to search a string for /qualifiers.
          QUPCASE.FOR     Routine  to   translate   all   lower   case
                          characters to upper case.
          TABS2BLNK.FOR   Routine to translate all tabs  to  a  single
                          blank.

                There are also several Run-Time Library  routines  and
                          System Service routines used.



        At  our  facility  we  use  GETUAF  extensively   in   several
        applications.  They are the following:

         o  In the add new user command procedure GETUAF is used to:

             *  Determine if a new username has already been used.

                      .
                      .
                      .
                   $ PROMPT_USERNAME:
                   $   INQUIRE USERNAME "Enter new Username"
                   $   SET NOON
                   $     GETUAF := $disk:[directory]GETUAF
                   $     GETUAF/OWNER=OWNER 'USERNAME'
                   $     STATUS = '$STATUS'
                   $   SET ON
                   $   IF .NOT.  STATUS THEN GOTO USERNAME_AVAILABLE
                   $   WRITE SYS$OUTPUT -
                         "Username ''USERNAME' already",-
                           "in use by ''OWNER'"
                   $   GOTO PROMPT_USERNAME
                   $ USERNAME_AVAILABLE:
                      .
                      .
                      .




             *  Determine if a username will create a  directory  name
                that  is  in  conflict with an existing directory name
                (ie.  LIBRARYKEY1 & LIBRARYKEY2 both  would  have  the
                same directory name [LIBRARYKE]).

                      .
                      .
                      .
                   $ PROMPT_USERNAME:
                      .
                      .
                      .
                   $ USERNAME_AVAILABLE:
                   $   USER_DIR := 'F$EXTRACT(0,9,USERNAME)'
                   $   EXACT := "/EXACT"
                   $   IF 'F$LENGTH(USERNAME)' .GE.  9 THEN -
                         EXACT := "/NOEXACT"
                   $   SET NOON
                   $     GETUAF := $disk:[directory]GETUAF
                   $     GETUAF/USERNAME=UAF_KEY -
                           /OWNER=UAF_OWNER -
                             'USER_DIR'   'EXACT'
                   $     STATUS = '$STATUS'
                   $   SET ON
                   $   IF .NOT.  STATUS THEN GOTO DIRECTORY_AVAILABLE
                   $   WRITE SYS$OUTPUT -
                         "Directory [''USERDIR'] already in use",-
                           "by ''UAF_KEY' (''UAFOWNER')"
                   $   GOTO PROMPT_USERNAME
                   $ DIRECTORY_AVAILABLE:
                      .
                      .
                      .

             *  Determine the next available UIC member of a specified
                group.

                      .
                      .
                      .
                   $ INQUIRE GROUP -
                       "Specify UIC group to place new user in"
                   $ INQUIRE MEMBER_MIN -
                       "Specify minimum UIC member value"
                   $ GETUAF := $disk:[directory]GETUAF
                   $ GETUAF/NEXT_UIC_MEMBER=MEMBER -
                                       ['GROUP','MEMBER_MIN']
                   $ NEW_UIC := ['GROUP','MEMBER']
                      .
                      .
                      .



         o  In our delete user command  procedure  we  use  GETUAF  to
            verify  that  the  specified user is correct and to obtain
            from the UAF the user's disk, main directory  and  UIC  so
            his files may be deleted and his diskquota removed.

                  .
                  .
                  .
               $ PROMPT_USERNAME:
               $   INQUIRE USERNAME "Enter Username"
               $   SET NOON
               $     GETUAF := $disk:[directory]GETUAF
               $     GETUAF/DEVICE=USER_DISK -
                       /DIRECTORY=USER_DIR -
                         /UIC=USER_UIC -
                           'USERNAME'
               $     STATUS = '$STATUS'
               $   SET ON
               $   IF STATUS THEN GOTO CORRECT_USERNAME
               $   WRITE SYS$OUTPUT -
                     "Username ''USERNAME' not in UAF."
               $   GOTO PROMPT_USERNAME
               $ CORRECT_USERNAME:
                  .
                  .
                  .


         o  We have a command procedure which will allow a user to set
            his  default disk and directory to the main directory of a
            user by specifying the user's key name and letting the UAF
            supply the correct disk and directory name.

               $ VERIFY = 'F$VERIFY("NO")'
               $ HOME := SYS$LOGIN
               $ IF P1 .EQS.  "" THEN GOTO ENDIF_ANOTHER_USERS_HOME
               $   GETUAF := $SYS$COM:GETUAF
               $   GETUAF/DEVICE=DEVICE/DIRECTORY=DIRECTORY -
                              'P1'/NOEXACT
               $   HOME := 'DEVICE''DIRECTORY'
               $ ENDIF_ANOTHER_USERS_HOME:
               $ SET DEFAULT 'HOME'
               $ SHOW DEFAULT
               $ IF VERIFY THEN SET VERIFY !'F$VERIFY("NO")'

            If P1 is specified the command procedure  will  fetch  the
            disk  and directory from the UAF otherwise it will set the
            user to his own home directory (note:  the /NOEXACT allows
            the  user to enter only the number of characters necessary
            to select a unique username).

========> [VAX83B.FERMILAB.FERMILIB]AAAREADME.TXT;1 <========


                             [FERMILAB.FERMILIB...]

     This area contains procedures useful in  the  maintenance  of  various
     libraries.  Some of the files have been submitted to the DECUS library
     as VAX-38 and  provide  the  capability  to  convert  a  macro  symbol
     definition  file (such as $SSDEF) into a FORTRAN INCLUDE file in which
     the  symbols  are  defined  by  a  series  of  PARAMETER   statements.
     Additional  procedures  allow the FORTRAN INCLUDE file to be converted
     to a PASCAL or VAX-11 C include file.  The files are:

     1.  SDIFGENR  produces  the  FORTRAN  INCLUDE  file  from  the  symbol
         definition  macro.   It  makes use of the SDFSTRIP3.TEC TECO input
         file.

     2.  PASFRMFOR converts the FORTRAN file to a PASCAL %INCLUDE file  for
         the CONST region to define constants.

     3.  CFROMFOR converts the FORTRAN file to a VAX-11 #include file which
         contains a series of #define statements.

     4.  CMTCRYOVR permits the comments from a older version of  a  FORTRAN
         INCLUDE  file  to be carried over into a newer version of the same
         file.

     5.  RADIXCVT will convert the radix of the numbers in FORTRAN,  PASCAL
         or VAX-11 C include files from hexadecimal to decimal.


     Some of the files above require edits  to  redefine  internal  logical
     names.   For  instance,  PASFRMFOR.COM  must  know  where  to find the
     PASFRMFOR.TEC file and so forth.


     Some of the other useful procedures are particularized to Fermilab and
     require some edits:

     1.  ADDTOLIB and BUILDLIB are used to add routines to or  rebuild  the
         FERMILIB.OLB  library.   The source files are assumed to be stored
         on SYS$SYSDEVICE:  in directory  [FERMILIB.SOURCES.ROUTINES]  (and
         only source files for FERMILIB modules are stored there)!

     2.  BUILDTLBS will rebuild a text or macro library from  files  stored
         in  the  [.MACROS] or [.INCLUDES] subdirectories of the [FERMILIB]
         area.  For text files, the module name is found from the text file
         itself  where  it  is  stored  on the first line after the opening
         header comments marker:

                   FORTRAN:  "C+ module"
                   PASCAL:  "{+ module" or "(*+ module"
                   C:       "/*+ module"

         Currently BUILDTLBS also uses the HDRSTRIPR program and  procedure
         to  extract  the header comments for help entries, but this can be
         easily removed from the procedure.
                                                                          Page 2


     3.  MTLBLIST will list the contents of a text or macro  library  on  a
         module-by-module  basis (starting each module on a new page with a
         header).

     4.  OLBMANIP is a procedure to ease mainpulation of object libraries.

     5.  TLBMANIP  is  a  procedure  to  ease  the  manipulation  of   text
         libraries.   It  implements the convention for the module names as
         described under BUILDTLBS, above.



                                    [.DTR32]

     This subdirectory contains the files used to  add  several  additional
     functions to VAX-11 Datatrieve at Fermilab.


                                  [.INCLUDES]

     This subdirectory contains a large number of  FORTRAN  (.FOR),  PASCAL
     (.PAS) and VAX-11 C (.H) include files.  The files (for the most part)
     just define constants, including the offsets into data  structures  as
     constants.   Nearly all the files have been commented.  DESCRIP2.H and
     VAXTYPES.H define additional data  types  and  macros  (extending  the
     standard  DESCRIP.H file) for VAX-11 C.  The contents of this area was
     used to form the LCLFORDEF, LCLPASDEF and LCLCDEF text libraries found
     in [FERMILAB.SYSLIB] which are stored in SYS$LIBRARY:  at Fermilab.


                                   [.MACROS]

     This area contains the sources for the macro definitions found in  the
     FERMILIB.MLB  macro  library  (stored in SYS$LIBRARY:).  The RAD50.MAR
     file defines macros to convert text to Radix-50 constants.


                                   [.SOURCES]

     SCRFT is supports foreign terminals (in particular the ADM-3A) for the
     terminal independent screen package in the VMS Run Time Library.

                              [.SOURCES.ROUTINES]

     This area contains the sources for the  modules  in  the  FERMILIB.OLB
     library  (normally  stored  in  SYS$LIBRARY:).   These routines can be
     thought of as extensions to the VMS Run Time Library.  Several of  the
     routines  started out from VAX SIG tapes but all have been modified or
     extended.  Some of the more interesting modules are (by file):

     1.  ARGCHKRS and ARGUTILS permit routines (particularly those  written
         in  High  Level  Languages)  to  check for defaulted arguments and
         variable numbers of arguments.

     2.  LIBABSQUE implements HLL  (High  Level  Language)  access  to  the
         absolute  queue  instructions  in the same fashion as the RTL (Run
         Time  Library)  provides  access  to   the   self-relative   queue
                                                                          Page 3


         instructions.

     3.  LIBBITS and  LIBLOCKS  implement  single  bit  manipulations.   In
         LIBLOCKS,  the interlocked bit instructions are used to mainpulate
         locking bits from HLL's.

     4.  LIBGETS and LIBPUTS provide FORTRAN (in particular) with  indirect
         addressing  capability in which an INTEGER*4 variable is a pointer
         to a table or data structure.  LIBGETS and LIBPUTS  allow  FORTRAN
         to  make  effective  use of dynamic memory allocated by LIB$GET_VM
         for storage of data structures.

     5.  LIBSLEEP implements delay routines like the RSX-11M  WAIT  routine
         by using $SCHDWK and $HIBER in a simple to use fashion.

     6.  MTHQxxx is a package of quadword integer math routines.  These can
         be particularly useful for manipulating VMS times.

     7.  RMSxxx is a package of routines to  provide  RMS  services  easily
         available  to HLL's.  In particular RMSPARSE and RMSRELATD provide
         routines to  handle  wildcarding  and  default  and  related  file
         specifications.

     8.  STRSQUEEZ will remove all (or all multiple) blanks from a string.



                                     [.USS]

     This area contains the sources for the FERMIUSS  privileged  shareable
     image.   This image implements a user-written system service to permit
     one  process  (the  source)  to  declare  an  AST  in   another   (the
     destination)  process.  The destination process has to have passed its
     AST address to the source process by  some  prior  arrangement.   This
     system  service  is  a generalization of one used as part of the ACNET
     network  services  (a  home-brew  network)  in   which   the   control
     information  and  data is passed between processes in a global section
     and control is passed between processes  by  triggering  AST's.   This
     method  was  used  to  avoid  multiple  QIO  overheads  and to service
     multiple user programs in different groups  in  a  real  time  control
     system.


                                      NOTE

         As of this time,  this  version  is  completely  untested.   A
         tested version will be submitted with the next SIG tape and/or
         to the DECUS library.  It is planned  at  some  point  to  add
         services  to  provide  for  system-wide  event  flag  clusters
         (across groups) ala the global event flags of RSX-11M.


========> [VAX83B.FERMILAB.MISC]AAAREADME.TXT;1 <========


                                [FERMILAB.MISC]

     This is a miscellaneous collection of things from  various  places  in
     our system.  Short descriptions of some of the files are:

     1.  EDTKEYS is help on the additional EDT  key  definitions  found  in
         SYS$MANAGER:EDTINI.EDT used by many of our users.

     2.  FERMIDOC.COM extracts the help on the FERMILIB routines  from  the
         FERMIHELP  library (in SYS$HELP:) and prepares a paginated listing
         suitable for use as a reference document.

     3.  HDRSTRIPR is a program (very crude first version, requiring use of
         the  HDRSTRIPR  procedure  to  setup  for  it) to strip the header
         comments from source and command procedure  files.   HDRSTRIPR  is
         used  to  extract the comments and prepare the help entries used a
         documentation for many of the programs submitted here.

     4.  HLPLVLSHF is a program to take a help entry  file  and  shift  the
         help  topic  levels  down by 1 (increment all the numbers by 1) so
         that a header file can be tacked onto the front before storing  in
         a help library.

     5.  LOGIN are the login procedures  used  by  the  submitter  and  are
         included here as examples.

     6.  NAGYHELP is a help library with help on many of the procedures and
         programs  in  this submission.  In particular in here can be found
         entries for some things (such as procedures in [.FERMILIB])  which
         are not in our general public library, FERMIHELP.HLB.

     7.  There are several files which are skeletons for FORTRAN, MACRO and
         C programs and modules.

     8.  TSTSYSDMP is the source for the TSTSYSDMP program which tests  the
         status  of the system dump file (SYS$SYSTEM:SYSDUMP.DMP).  See the
         SYSDMPJOB.COM batch job in the [.UTILITIES] area of [.SYSMGR].

========> [VAX83B.FERMILAB.SYSHLP]AAAREADME.TXT;1 <========


                               [FERMILAB.SYSHLP]

     These are  some  help  libraries  extracted  from  SYS$HELP:   on  our
     systems.   FERMIHELP  is  the  equivalent  VMS HELPLIB but for locally
     written and maintained software.  We define a FERMIHELP command for it
     in  the  system-wide login procedure (SYLOGIN.COM).  Similarly NEWSLIB
     contains entries of a  "newsy"  nature  and  is  accessed  by  a  NEWS
     command.   RSXHELP  contains  information  on  RSX  systems  and has a
     corresponding RSXHELP command defined for it.
========> [VAX83B.FERMILAB.SYSLIB]AAAREADME.TXT;1 <========


                               [FERMILAB.SYSLIB]

     These files are from SYS$LIBRARY:.  THe text libraries (.TLB) are  the
     include  modules  also  found  in  FERMI$LIBINC:  (on this tape in the
     [.INCLUDES]  subdirectory  of  [FERMILAB.FERMILIB]).   SCRFT  is   the
     shareable  image  for  the  foreign terminal support;  FERMIUSS is the
     privileged shareable image implementing user-written system  services.
     The  FERMILIB  libraries  are  our extensions to the VMS macro library
     (STARLET.MLB) and run time libraries (STARLET.OLB and IMAGELIB.OLB).
========> [VAX83B.FERMILAB.SYSMGR]AAAREADME.TXT;1 <========


                              [FERMILAB.SYSMGR...]

     This area is extracted from SYS$MANAGER:  and its subdirectories.  The
     programs  and  procedures in here are used for managing the system and
     in many cases should only be used as examples to start  from  as  they
     are quite site-specific.

                                   [.SYSMGR]

     Included in this level are the following files:

     1.  BIGEDTINI.EDT is the  initializer  for  the  BIGEDT  command  (see
         SYLOGIN.COM) which starts EDT to edit a 132-column file.

     2.  EDTINI.EDT is the normal EDT initializer (see the EDT  command  in
         SYLOGIN.COM) file.  It defines several addition keys we have found
         useful as shorthands.

     3.  DPYLOGIN is the login procedure for the DISPLAY turnkey user.  The
         DISPLAY user is only permitted to execute various system displays.
         See SYSUAF.LIS for the DISPLAY account parameters.

     4.  GREETINGS provides system greetings for users from the system-wide
         login procedure, SYLOGIN.

     5.  GUESTLGIN  is  the  login  procedure  for  the  GUESTUSER  turnkey
         account.    See   SYSUAF.LIS  for  the  account  parameters.   THe
         GUESTUSER account is permitted  to  perform  various  non-invasive
         actions but is not a fully general VMS user.

     6.  LOGIN is  the  login  procedure  for  the  SYSTEM  and  SYSMANAGER
         accounts  on  our  systems.   SYSMANAGER is the same as the SYSTEM
         account but  various  of  the  "dangerous"  privileges  have  been
         removed.  SYSTEM is normally used only to install new software and
         system updates.

     7.  LOGOUTUSR  is  the  login  procedure  for  the   LOGOUT   account.
         Fermilab's  port  selector  is  setup  to  send  a  LOGOUT  to the
         Accelerator VAX's in certain cases.  The LOGOUT user  was  created
         to avoid an infinite loop problem.

     8.  MGRLOGIN is a common login procedure  called  from  LOGIN  by  the
         system  manager  and several other user accounts to provide common
         symbol and logical name definitions.

     9.  OPRLOGIN is the login procedure for the OPERATOR turnkey  account.
         This  is  a  privileged  account  and  provides limited access for
         non-privileged users to system operator functions.  The  functions
         themselves  are  implemented  by the procedures in the [.OPERATOR]
         subdirectory.  In  addition,  online  help  is  available  in  the
         OPRHELP.HLB library stored in that subdirectory.  A document about
         this account can  be  found  in  the  [.DOCUMENTS]  area  of  this
         submission.

    10.  SYLOGIN is the system-wide login command  procedure  and  provides
         symbol and logical name defintions for all users.
                                                                          Page 2


    11.  SYSHUTDWN is the site-specific system shutdown  procedure  and  is
         included as an example.

    12.  SYSTARTUP is the Fermilab Accelerator Control System site-specific
         system  startup  procedure  (provided  as an example).  Due to its
         increasing size, this procedure was split into parts  with  called
         procedures  stored in the [.STARTUP] subdirectory.  The single set
         of procedures provide common support for the startup of either our
         Operational  (as  part  of  the  control system) VMS system or the
         Development VMS system (on the backup processor).  The Operational
         System  uses only the removeable media disk drives and is setup to
         have the system and user disks mounted  on  any  of  the  possible
         drives (all RM03's for now).

    13.  WHO.WHR is the list of  terminal  locations  used  by  the  FINGER
         program.



                                [.SYSMGR.BOOTS]

     This area contains copies of the  boot  procedures  from  our  console
     floppies.   The  "VcuBOO.CMD"  files  boot  VMS  from disk unit "u" on
     controller "c".  Similary the "ScuBOO.CMD" files boot  the  Diagnostic
     Supervisor  from disk unit "u" on controller "c" and "BcuBOO.CMD" will
     boot Standalone BACKUP  (store  in  system  root  [.SYSE...])  from  a
     similarly specified disk.  The "DLnBOO.CMD" files will boot Standalone
     BACKUP from an RL02 disk on drive "n" (stored in the  [SYSEXE]  area).
     The  .HLP  files are editted versions of the help files on the console
     floppies.  The edits converted most of  the  uppercase  characters  to
     lower case and cleaned up the formats.


                               [.SYSMGR.OPERATOR]

     This area contains the  procedures  called  from  the  OPERATOR  login
     procedure  (OPRLOGIN.COM) for the various "operator" commands.  Online
     system operator help entries are stored in the OPRHELP.HLB library.


                               [.SYSMGR.STARTUP]

     This  subdirectory  contains  the  remainder  of  the  system  startup
     procedure  broken  into  manageable pieces.  They are included here as
     examples for other system managers.


                              [.SYSMGR.UTILITIES]

     This subdirectory contains many command procedures useful to a  system
     manager.  Several of them are invoked by procedures in the [.OPERATOR]
     subdirectory or in the  [.STARTUP]  subdirectory.   Others  are  batch
     jobs,   in  some  cases  executed  on  a  regular  repeated  basis  by
     self-submittal (the system startup insures that a known set  of  every
     day,  week  and  monthly  batch  jobs  are queued).  Virtually all the
     procedures are described by comments at their start.  A quick  perusal
     of the procedures reveals:
                                                                          Page 3


     1.  ADDUSER is a procedure to ease the burden of adding new  users  to
         the  system.   It  invokes the ACCOUNTS.JOB batch job to finish up
         after adding one or more users by setting  up  several  subsidiary
         files we use.

     2.  ALLOCDISK will allocate  a  single  disk  drive  from  a  list  of
         possible  disk  drives  permitting  a  specially-limited case of a
         generic device allocation.

     3.  BATQUEDEL permits batch jobs to  be  deleted  from  the  SYS$BATCH
         queue based on their batch job name rather than the entry number.

     4.  CHANGEUIC will change a user's UIC including the owner UIC of  his
         files.

     5.  CHGOWNERS will change the owner all files on a disk from  one  UIC
         to another.  This is used by the CHANGEUIC procedure to change the
         file owner UIC's after changing the user's UAF UIC.

     6.  DISKQUOTA is used to extract the current disk quotas and prepare a
         command procedure which can be used to restore QUOTA.SYS or can be
         editted to modify a setup of quotas at once.

     7.  DISKUSAGE prepares a report on current disk space  usage  by  user
         for a specified disk.

     8.  EVERYMNTH, EVERYWEEK and EVERYNITE are batch jobs  which  are  run
         every month (on the 1st), every week (at 00:00 Monday morning) and
         every nite at midnight.  The .JOB files handle the resubmittal for
         repeated  reruns  and  the  .COM  files  handle  the actions to be
         performed.  The .COM files can be freely editted without having to
         delete  and  resubmit  the  batch  job  (because  the  batch queue
         remembers a file by file id rather  than  by  file  name).   These
         files are useful templates for setting up similar jobs for another
         site.

     9.  FILOWNERS creates a list of all files owned by a  particular  user
         on a specified disk.

    10.  FINDAPID returns the process id of a process  specified  by  name.
         Optionally  a  group  number can be specified to find a particular
         process, else the first process whose name matches is returned.

    11.  GETUSRWS will prepare a command procedure of AUTHORIZE commands to
         modify  the  working  set  parameters  for  all  the  users.   The
         USRWSMOD.TEC file is used by TECO to read a  SYSUAF.LIS  file  and
         edit  it  into  the  output  format.   This is useful when doing a
         "global" adjustment of user's working set parameters.

    12.  LGINSAMPL is the sample login  procedure  placed  in  the  default
         directory of newly added user accounts.

    13.  LISTFILES uses the FTPRINT program  to  prepare  listings  of  the
         various  command  procedures  and TECO files stored on our system.
         It is easily modified for any site to serve a similar  purpose  in
         preparing reference listings of text files.
                                                                          Page 4


    14.  LPADOWN performs queue manipulations to  mark  a  particular  line
         printer as down or back in operation.  When marking the printer as
         down, the print jobs queued to it are switched to another printer.

    15.  MODSQUOTA allows the system manager to modify a user's disk  quota
         by specifying the user by name rather than UIC.

    16.  NEWOWNER will change the owner UIC of  all  files  in  a  complete
         subdirectory  tree  beneath  one  or more UFD's.  The UIC's of the
         files are set to that of the owner of the UFD-level directory  and
         propagated on down the tree.

    17.  OBTTSETUP and the ONLBAKxxx files are used by the OPERATOR account
         to  perform  online backups (both full and incremental to tape and
         full disk-to-disk copies) of the system  and  user  disks  on  the
         Fermilab Accelerator VAX's.  They can serve as templates for other
         sites setting up such procedures.

    18.  PRIJOBREL releases one or more named print jobs  from  their  hold
         state.   This  replaces  the  use of the entry number (job number)
         required with the SET QUEUE command.

    19.  PRIQUEDEL is similar to PRIJOBREL and BATQUEDEL in that it deletes
         print jobs by name rather than entry number.

    20.  STOPBYNAM will stop a process specified by its  name  rather  than
         its process id.

    21.  SYSDMPJOB is used at system startup time to save the system  crash
         dump on tape.  It is submitted as a batch job and tests the system
         dump file to see if it has already been saved  or  if  the  system
         shutdown  was done at operator request.  In either of those cases,
         the batch job just exits and does not attempt to  save  the  crash
         dump.

    22.  TOUSER will change the  default  directory  and  UIC  to  that  of
         another user.

    23.  UFDOWNER will change the owner UIC of a User File Directory (UFD).
         The  UIC can either be set to the UIC associated with a named user
         account or to an explicitly provided UIC.

    24.  SYSMGRHLP is a help library used by the MGRHELP command defined in
         the  system  manager's  login  procedure.   This  library contains
         information on using many of the system manager utility procedures
         and programs.  In addition, information on the standard procedures
         in SYS$UPDATE (such as STABACKIT) is  available  in  this  library
         along  with  notes on such things as maintaining Standalone BACKUP
         on the system disk.

========> [VAX83B.FERMILAB.SYSUPD]AAAREADME.TXT;1 <========


                               [FERMILAB.SYSUPD]

     The  DYVMSUPD  procedure  is  a  modified  version  of  the  VMSUPDATE
     procedure   used  to  install  layered  software.   Unlike  VMSUPDATE,
     DYVMSUPD is fast since the RX02 floppy disks (DYA1:) are used  as  the
     input.
========> [VAX83B.GBOSTVLUG.GENRAD]AAAREADME.TXT;1 <========


                        VAX SIG Tape Contribution
                              Spring, 1983


                              GenRad, Inc.
                            300 Baker Avenue
                          Concord, Massachusetts
                                 01742


                              Submitted by,
                                    Stephen Klein   MS/6



        This is a collection of general purpose tools written at GenRad to make
our VMS systems friendlier and more versatile.  The tools are organized as
follows:


        [TOOLS]         Root of the tools directory tree

            [.MISC]     Subdirectory containing miscellaneous tools
            [.XCL]      Subdirectory for Extended Command Language program
            [.CFCOMS]   Subdirectory for Current File command procedures
            [.EDTMACRO] Subdirectory for the GenRad "standard" EDT macro



        The [TOOLS] directory also contains, for each subdirectory, a .TXT file
describing the tools in the subdirectory, and a .COM file defining the symbols
and logical names needed by the tools.


        Please refer to [TOOLS]README.TXT for more documentation.
========> [VAX83B.GBOSTVLUG.GENRAD.TOOLS]AAAREADME.TXT;1 <========


6-MAY-83                General Purpose Tools Directory


                                GenRad, Inc.
                               300 Baker Ave.
                              Concord, MA. 01742

                                 caretaker:
                                        Stephen Klein


Purpose:

        The subdirectories of this directory, contain general purpose tools
such as command files, executable images, teco macros, etc.  This directory
contains command files to be called from a user's LOGIN.COM, and documentation
files.  An effort has been made to group related tools together in dedicated
subdirectories.  For each subdirectory, this directory contains a command file
which defines the symbols needed to access the tools, a text file which
documents the tools, and the subdirectory itself.



Special files:

        README.TXT      - This file, which provides documentation for this
                          directory.

        MISC.COM        - This command file defines the symbols and logical
                          names needed to run the one-of-a-kind tools.  

        MISC.TXT        - Documentation of the miscellaneous commands.

        THEWORKS.COM    - This command file defines the symbols and logical
                          names needed to run all the tools.  This procedure
                          calls MISC.COM.





To use the tools:

        The following description assumes that the tools reside on a disk
        called "SR", in the directory [TOOLS] (and its subdirectories).
        This is the case at GenRad.

        Include one of the following in your login.com file:

        @SR:[TOOLS]THEWORKS     To get all definitions for all tools, or

                or

        @SR:[TOOLS]MISC         To get the one-of-a-kind tools, plus basic
             and                definitions (including logical name vmstools!)
                                                      Page 2


        @VMSTOOLS:XXX
        @VMSTOOLS:YYY           These represent tool-group definition files.
        @VMSTOOLS:ZZZ                   (e.g. "@VMSTOOLS:EDTMACRO")

        Of course, it is also possible to just use these definition files as a
reference and add specific symbol definitions to your login.com, possibly using
a different symbol name, but the same equivalence string.  For example, if you
wanted to invoke the reformatter by typing "REF" instead of "REFORMAT", your
login.com could do the following:

        1) Invoke THEWORKS.COM or MISC.COM to define "REFORMAT".
        2) "$ REF == REFORMAT"
        3) "$ DELETE/SYMBOL/GLOBAL REFORMAT"




To use the tools on another system:

        In general, one needs to copy this directory tree onto the system, and
edit three logical name assignments.  Here are the details:

        The root of this tree is currently called "TOOLS", and it is a top-
level directory, however neither of these is required.  For example, the
root of this tree could be XX:[AAA.BBB.VMSTOOLS].

        The subdirectories are currently called "XCL", "EDTMACRO", "MISC",
"CFCOMS", and "MAINT", and these names are required.

        THEWORKS.COM will need to be edited to correctly define the logical
name "vmstools".

        MISC.COM should also be edited to correctly define "vmstools" and
"misctls".

        For efficiency, this directory should be as close to the top of the
tree structure as possible (this will speed up file-opens).

        NOTE - there are two files that need special preparation.
Create [TOOLS.EDTMACRO]EDTHELP.HLB by making a copy of SYS$HELP:EDTHELP.HLB
and replacing the KEYPAD module with the definition found in
[TOOLS.EDTMACRO]EDTHELP.HLP.  E.g. LIBRARY/HELP EDTHELP.HLB EDTHELP.HLP.
Also, the NAMES tool needs the datafile [TOOLS.MISC]NAMES.DAT with the
following format:

DOE, John               1234    HARPO::DOE
SMITH, Mark             4321    KERMIT::SMITH
...

The elements are last name in caps, comma, space, first name, one or more tabs,
telephone extension, tab, electronic mail address.




                                                      Page 3


Guidelines for writing a new tool:

        Command procedures should not abbreviate DCL command names.  This is
because a private LOGIN.COM file may define a symbol which happens to be an
abbreviation for a DCL command (i.e. DIR:==DIR/DATE/SIZE=ALL...).  If this type
of collision occurs, the command file may not execute properly.

        Command files should not assume any symbol or logical name definitions
other than what appears in MISC.COM.  This would make it easy to move the
whole environment to any VMS system.

        Similarly, any support tools refered to should also be in a
subdirectory of vmstools.

        Command files which define logical names should check first to see if
the logical name already exists, and if so, delete it.  This is to avoid ugly
messages when the command file is invoked a second time.

        This directory should be refered to by the logical name VMSTOOLS, which
is defined in MISC.COM.

        MISC.COM should only define things which are needed by the tools.
It is not intended to replace sys$library:syslogin.com (the system-wide login
command procedure).

        Each subdirectory should have a logical name associated with it, which
is defined by the .COM file in vmstools for that subdirectory.

        Execute THEWORKS.COM and check the symbols and logical names which are
defined as a result to be sure that the new tool would not redefine any symbols
or logical names already in use.

        Also, log in under the guest account and verify that the tool still
works.  This is to catch things which you didn't realize you were depending on.





How to submit a new tool:

        1)  Check that it follows the guidelines mentioned above.

        2)  Find Steve Klein.




Contents:

MISC    MISC.COM is the command procedure (mentioned earlier) which defines all
        the symbols and logical names necessary to run the miscellaneous tools.
        Read MISC.TXT for a description of each of the tools.
        (various authors).

                                                      Page 4


CFCOMS  Current file command procedures.  CFCOMS.COM defines a set of
        commands which know about the current file, thereby making it
        unnecessary to constantly be typing filenames over and over...!
        Included are current file versions of commonly used DCL commands,
        commands for traversing the directory tree, and current file versions
        of tools developed at GR.  The directory tree traversal commands are
        included because whenever the default directory is changed, the current
        file is set to the new directory.  CFCOMS is called by THEWORKS.  Read
        CFCOMS.TXT for a description of all the current file commands.  Note
        that several tools are defined in both MISC.COM and CFCOMS.COM.  If one
        gets THEWORKS, the definition in CFCOMS wins out.
        (author: Stephen Klein).


XCL     Extended command language.  This tool adds interactive command line
        editing, the ability to re-issue previous commands, and more to DCL.
        Definition is in XCL.COM.  Documentation is in VMSTOOLS:XCL.TXT.  Help
        is also available when XCL is running by pressing the keypad PF1 key.
        XCL is invoked by typing "XCL" after executing VMSTOOLS:XCL.COM.
        (author: Ken Budnik).


EDTMACRO        Edtmacro is a subdirectory which contains EDT initialization
        files to support the GR editor kepad and control key definitions.
        To use it, execute the command procedure VMSTOOLS:EDTMACRO.COM in
        your login.com.  VMSTOOLS:EDTMACRO.TXT is the on-line documentation.
        In addition, extensive help is available while running the editor.
        (authors: Mark Harley, Gordon Weekly, and others).
========> [VAX83B.GBOSTVLUG.HVRDCHEM]AAAREADME.TXT;1 <========


Submissions from:
Department of Chemistry
Harvard University
12 Oxford Street
Cambridge, MA 02138

UMODEM
This is a file transfer program which uses the CP/M User's Group
MODEM protocol.  It is helpful in performing transfers between a
VAX/VMS machine and CP/M-based microcomputers, and is a lot
cheaper than the DEC offering!
     The program was originally implemented under Version 7 UNIX,
and is written entirely in C.  All of the modifications made to
the program for VMS (VAX-11 C) are in #ifdef statements, so the
program still compiles properly under V7 UNIX.
     The VMS support routines required by the program to emulate
UNIX "raw" I/O and the gtty(), stty(), and stat() system services
are in a separate module, VMODEM.C.  This module alone should be
interesting to those who are interested in learning how to call
system services and perform QIOs using VAX-11 C.
     UMODEM consists of five files:  UMODEM.C, the main program
(the only file needed to compile the program under V7 UNIX);
VMODEM.C, VMS support routines (not needed under UNIX); VMODEM.H,
a header file including structure definitions needed for the VMS
routines; UMODEM.HLP, a help file in VMS HELP format; and
UMODEM.EXE.  All that's needed to run the program is to define a
symbol for a foreign command:  "$ umodem :== $umodem.exe".
     The VMS version of UMODEM is by Walter Reiher; the UNIX
version is by Lauren Weinstein, Richard Conn, and Bennett Marks.
Thanks to the C Line computer bulletin board system for making
the UNIX version available and to Max Benson and Robert
Bruccoleri for coding examples which made VMODEM.C easier to
implement.
     [The CP/M program MODEM, which is also needed to perform
file transfers, is available on a number of public computer
bulletin board systems and user groups.  WR has a version of
MODEM configured for the Heath/Zenith-89 microcomputer system
which is available for the asking.]


DISPLAY
This command file makes the VMS Version 3 MONITOR program look
like the Version 2 DISPLAY program.  For those of us who prefer
the old syntax, this beats having to type those long MONITOR
commands or defining a slew of symbols.
     DISPLAY.COM is by Andrew Cherenson.


Submitted by:  Walter Reiher, 617-495-1768
========> [VAX83B.GBOSTVLUG.NU]AAAREADME.TXT;1 <========


This tree contains a facility called PRIME TIME, developed and in use
at Northeastern University.  It provides a means of limiting login
connect time for groups of terminals.  We use it to control several
groups of student terminals to ensure fair and timely access to 
terminal seats.  The documentation in [DOC] explains more fully
the exact features.
========> [VAX83B.GBOSTVLUG.NU.LOGINTEST]AAAREADME.TXT;2 <========


  This directory contains 2 programs in the NU PRIME TIME suite, PT
and LOGINTEST.

  NOTE:  Both PT.FOR and LOGINTEST.FOR refer explicitly to complete
         file specs.  The disk and directory specifications must be
         changed as appropriate for your site.

        PT - Program user runs to determine how much time he/she has
             left before PRIME TIME will force a logout.  If process
             is not being monitored for any reason, the returned
             message will so indicate.  Put in SYS$SYSTEM, make
             definition PT == "$PT"; users then can simly say "PT"
             to run.

 LOGINTEST - Program which must be run at login time to set up user
             monitoring, or to prevent login if required.  Execution
             can be forced via system-wide login procedure which runs
             this program.
========> [VAX83B.GDSEARLE]AAAREADME.TXT;2 <========



Frank Penner
G. D. Searle & Co.
4901 Searle Parkway
Skokie, Illinois 60077
(312) 982-8231

1.) A patch to the VMS V3.2 terminal driver for statistics gathering.

2.) A tape copy program.
========> [VAX83B.HARRIS]AAAREADME.TXT;2 <========


Contained in this tape for distribution through DECUS are two programs:

  1.  TYPIST (BASIC):  A touch typing tutor program to help with 
                         learning the typewriter keyboard and developing
                         higher typing speeds.

  2.  QD (FORTRAN):      A program to display the output (print) queues
                         on a VAX/VMS system.  It shows, among other
                         standard items, an approximation of the length
                         of each active queue in minutes.

Contacts:
        
        Steve Swenson or John Chong
        Harris / Farinon Division
        1691 Bayport Avenue
        San Carlos, CA   94070
        (415) 594-3524 or -3582




                        - end of text -
========> [VAX83B.ISU]AAAREADME.TXT;1 <========


**********
**********
NOTE:
**********

        I have just read the DECUS rules which say we can not provide
        source files for DEC software.  Consequently, we can not include
        the source files for the print symbiont.  All references to the
        print quotas should be ignored.

*******************************************************************************



ISUQUOTA is a system of programs developed to enforce resource quotas for
VAX users at Iowa State University.  Some of the quotas are enforced using
VMS facilities, e.g. session CPU limit, and some are enforced by ISUQUOTA
facilities, e.g. cumulative CPU limit.  The system has been in use at ISU
since 1980 although the current version was installed Spring semester 1983.

ISUQUOTA enforces the following quotas:
        1. Session and cumulative CPU
        2. Session and cumulative connect time (interactive processes)
        3. Inter- and intra- session disk space
        4. Single-job and cumulative print pages
        5. Number of concurrent interactive sessions

ISUQUOTA also performs the following functions:
        1. Provides warnings when cumulative resource usage is within
           90% of quota.
        2. Enforces authorization/expiration dates, and warns when the
           current time is within two days of expiration date.
        3. Performs a logout purge on all files within the login
           default directory tree.

ISU does not perform cost accounting for the VAX systems at the time this
is being written; however, we will be going to a cost accounting system
Fall semester 1983.  There are cost accounting facilites in this version
of ISUQUOTA, but the costs are only displayed at logout; dollar quotas
are not enforced.  The programs will probably need to be modified in order
to implement cost accounting.  For example, we will probably replace all
the cumulative quotas with a single quota (dollars) but retain the session
quotas.  Final decisions regarding the cost accounting implementation have
not yet been made.


ISUQUOTA consists of three major components:

        1. System programs and command files which implement ISUQUOTA
           for the VAX users.  These programs enforce quotas, log events,
           and perform some accounting functions.  The programs were 
           developed primarily by the Iowa State University Computation 
           Center (ISUCC) VAX Systems group.  All the files required to
           create the system portion of ISUQUOTA are in the sub-directory
           [.SYSTEM].  The README.LIS file describes the implementation
                                                      Page 2


           procedure and the programs.

        2. Accounting programs and command files which perform accounting
           and clerical tasks.  These programs create the user data base,
           generate reports, and perform accounting functions.  The programs
           were developed primarily by the ISUCC Accounting group.  All the
           files required to create the accounting portion of ISUQUOTA are
           in the sub-directory [.ACCTG].  The README.LIS file describes the
           implementation procedure and the programs.

        3. The ISUQUOTA data bases consist of two data files.  The Quota-User 
           Authorization eXtension (QUAX) file is an indexed file, analogous 
           to the User Authorization File, which contains the ISUQUOTA data 
           for each username on the system.  A second file, TTINFO, contains 
           information regarding the location of terminals. This file was 
           originally created for use with a program which displays the
           interactive processes on the system.  The ISUQUOTA login program
           uses it when writing the terminal record to the accounting log.
           Sample QUAX and TTINFO files are stored in the sub-directory
           [.FILES].

Note:   Computer terminals at ISU connect to ISUCC computers through a PDP 11
        and PCL-11 (the communications switch - ComSw) using locally written
        software.  TTDRIVER has been modified to support the ComSw, and ports
        coming through the ComSw are designated TPxx.
========> [VAX83B.KERMIT]AAAREADME.TXT;1 <========


00README.TXT                                                    (4 May 1983)


                 COLUMBIA UNIVERSITY KERMIT DISTRIBUTION TAPE


This tape includes all the versions of Kermit which were in our possession as
of the time this distribution tape was made, plus some miscellanous files.
The files on the tape have names of the form

        NAME.TYPE

Where NAME is the name of file, and TYPE is its type (program source,
documentation, executable core image, etc).  No NAME is more than 9 characters
long (the maximum accepted by VAX/VMS), and every NAME is unique in the first
6 characters (the maximum under TOPS-10).  On TOPS-10 BACKUP/Interchange
tapes, names longer than 6 will be truncated to 6.  No type is longer than 3
characters.  NAME and TYPE are separated by a period.


* Prefixed Files:

The file names for files associated with each implementation of KERMIT are
prefixed by a few characters denoting the implementation.  The following are
presently used:

      Prefix    Machine(s)             Operating System      Language

        10      DECsystem-10           TOPS-10               MACRO-10
        20      DECSYSTEM-20           TOPS-20               MACRO-20
        VMS     VAX-11                 VMS                   Bliss-32
        CMS     IBM 370 Series         VM/CMS                IBM Assembler
        UX      VAX, SUN, PDP-11, etc  Berkeley UNIX         C
        RT      PDP-11                 RT-11                 OMSI Pascal
        CPM     8080, 8085, or Z80     CP/M                  ASM
        PC      IBM PC or Zenith Z100  PC DOS, MS DOS        PC Macro assembler
        APP     Apple II 6502          Apple DOS             DEC-10 CROSS

In some cases, binaries (.REL, .EXE, .COM, etc) are not supplied.  For
instance, no binaries come with the UNIX sources, since these can be compiled
to run on many different machines, under different versions of UNIX.  No
binaries come with the VAX/VMS source, since the file attributes cannot be
saved on the tape.  Binaries are provided when it makes sense, however: DEC-10
and DEC-20 .EXE files are provided on DEC-10 and -20 distribution tapes, MODULE
files for CMS KERMIT on the IBM VM/CMS tape.  In any event, all necessary files
for building each version of Kermit from program source are included on all
tapes.

When working with one of these implementations, you would normally copy them
to a separate area and strip the prefix from the file names, and install the
programs on the appropriate systems without the prefix.  For instance, on the
DEC-20 you would copy 20KERMIT.MAC to KERMIT.MAC, then assemble it, and store
the result as KERMIT.EXE in SYS:.  The VAX/VMS version is an exception; in
this case REPLACE the "VMS" prefix with "KER".

                                                      Page 2


The following HEX files for specific CP/M implementations are included:

 CPMAPPLE.HEX     Apple II with Z80 Softcard & DC Hayes Micromodem
 CPMAPPLE.SSC     Notes for using above with Super Serial Card
 CPMBRAIN.HEX     Intetec SuperBrain
 CPMDMII.HEX      DECmate II with CP/M
 CPMGENERI.HEX    "Generic" CP/M Kermit.
 CPMHEATH.HEX     Heath/Zenith 89
 CPMKERMIT.ASM    Source file for all Kermit-80s but Generic Kermit
 CPMOSBORN.HEX    Osborne 1
 CPMOSI.HEX       Ohio Scientific
 CPMRAINBO.HEX    DEC Rainbow-100
 CPMROBIN.HEX     DEC VT180 "Robin"
 CPMTELCON.HEX    Telcon Zorba
 CPMTRS80.HEX     TRS-80 II with Lifeboat CP/M 2.25
 CPMVECTOR.HEX    Vector Graphics
 CPMZ100.HEX      Heath/Zenith Z100 with CP/M-85

The "Generic Kermit" can be used on micros not specifically supported, if the
CP/M IOBYTE facility is implemented, and the fields of the IOBYTE point to the
right devices.  See the User Guide for details.

The Kermit Users Guide contains instructions for installing or bootstrapping
the various versions of Kermit.

* Manuals:

There are two Kermit manuals: USER and PROTO, a user's guide and a protocol
manual, respectively.  Four versions of these files are provided:

        .MSS    Scribe (UNILOGIC Ltd text formatter) source.
        .LPT    Line Printer format (overstriking, underscore, etc).
        .DOC    No special effects, suitable for reading on line.
        .FOR    Like .LPT, but with Fortran-style carriage control.

If you have Scribe and the appropriate Scribe device drivers, you can run the
.MSS files through it to produce output suitable for printing on any device
supported at your site, including the Xerox-9700 or other multifont laser
printers or photocomposers.  As of this writing, Scribe is not entirely
bug-free; you may notice some problems with the footnotes in the .DOC and
.LPT files.  Note that some parts of the user manual rely on underlining to
clarify examples; the underlines are missing from the .DOC files, but will be
found in the .LPT files.

The user's guide is intended for users of Kermit (including those who want to
install it), the protocol manual is for those who would like to write a new
implementation (i.e. a Kermit program for a new machine or operating system).

ASCII.MSS is the ASCII/EBCDIC character table, which is included as an
appendix in both manuals.

MANUAL.HYP is a hyphenation dictionary for building the manual with Scribe.


* Other Files:
                                                      Page 3



00README.TXT is this file, which should appear at the top of any alphabetical
directory listing, and is the first file on the tape.

CORNELL.TXT contains a UNIX implementation of KERMIT from Cornell University,
which we have not been able to bring up successfully at Columbia, but which
might be of interest.

The files MAC80.*, M80UNV, etc, are an 8080 cross assembler for the DEC-10 or
DEC-20; MAC80.DOC is a brief description.  TORTUR.M80 is a "torture test" for
MAC80, which illustrates its features.  MAC80 is used to assemble CP/M KERMIT.

The files CROSS.* are a general purpose cross assembler for the DEC-10 and
DEC-20; CROSS.DOC is the manual.  CROSS is used to assemble Apple DOS KERMIT.

TTLINK.* is a terminal linking program for the DEC-20, allowing you to log in
to another system over a TTY line (e.g. using an autodialer).  KERMIT-20 runs
TTLINK to execute the CONNECT command.

EZFIX.* is a utility for converting EasyWriter files sent to the DEC-20 from
the IBM PC into ordinary text form.

KERMIT.WHO is a list of all the sites Columbia has sent KERMIT tapes to.


* Finally...

If you make any modifications to Kermit, fix any bugs, or write any new
implementations or documentation, please send them back to us on magnetic tape
so we can distribute them to other Kermit users:

        KERMIT Distribution
        Columbia University
        Center for Computing Activities
        612 West 115th Street
        7th Floor
        New York NY 10025

We'll return your tape to you with the latest Kermit distribution.
========> [VAX83B.KMSKIT]AAAREADME.TXT;1 <========


                        VAX KMSKIT V3.2

        Included in this submission are four subdirectories.

[KMSKIT.SYSMGR]  - Useful command procedures for controling the system
                   and making life generally easier for all.  Updates to
                   last release.  A very powerful set of procedures for
                   establishing an operator account.

[KMSKIT.SYSUTL]  - Useful things.
                   VAX CALC update which has online help.

[KMSKIT.VAXSUBS] - Migrating from RSX to VAX the easy way. Bugfixes to last
                   release.  Not many, but some.

[KMSKIT.VPW]     - V2.0 of the VAX Professional Workstation.  
                   Not quite ALL-IN-ONE,  but close, very close, 
                   and Oh, so much cheaper !!

Please, note that the procedures, programs etc, may assume site dependent
information not applicable to all sites.  Command procedures may have to
be modified to work to reflect the correct location of files.  Some
command procedures assume the existance of certain files or executable
images.  I appologize for not having something which goes in as easy
as a VMSUPD kit.

As always, complaints, suggestions, or praise (preferably the latter)
may be directed to:

                James G. Downward
                KMS Fusion, Inc.
                PO. Box 1567
                Ann Arbor, Mich. 48106
                (313)-769-8500
                03-Dec-1982
========> [VAX83B.KMSKIT.SYSMGR]AAAREADME.TXT;1 <========


                        [KMSKIT.SYSMGR.CMDFIL]

     This directory contains command files we have found to be of general
     use for system management.  Typically all command files reside on 
     SYS$SYSROOT:[SYSMGR.CMDFIL].  Many command files assume that TESTFILE
     is defined as a foreign command, ie 

                TESTFILE==@SYS$SYSROOT:[SYSMGR.CMDFIL]TESTFILE.COM.

     Help files are supplied for command files as appropriate.


1.      CMD.    Starts up command files on SYS$SYSDEVICE:[SYSUTL] and passes
them command lines.
 
2.      ERRORDSP.  Quick and dirty to display the error message associated
with a VMS error number.  If defined as a foreign command, type
ERRORDSP <errnum>, or if using the CMD procedure, CMD ERRORDSP <errnum>
to see why VMS is rejecting your efforts.
 
3.      JNLBACKUP. Provides an easy way for users to back up their files.
Creates a journal file of files backed up and a directory log file of 
all kinds of things (tape name, backup set name, tape number, backup
date range, errors encountered on tape, etc).  Insures that all backup 
sets have unique names.  Nifty.

4.      SPR.    Automatic SPR generator for VMS and RSX.  This is neat.
SPR administration will take SPRs prepared this way if you staple them to
a blank SPR form.  Maybe someone could modify it to run without operator
intervention.  Start it up at night, come in in the morning and find a 
neatly typed list of SPRs describing all current system problems known
and unknown.  However, until then, you do have to type in the problem
but editors are so much more fun than typing a multi-part form!!

5.      TESTFILE.  Emulates the .TESTFILE on RSX.  Faster (by far) than using
an image to check for the existance of a file.

6.      UTL.       Automatically starts up tasks on [SYSUTL] and passes them
command lines.  Saves having a zillion foreign commands.

7.      XQT.       Simulate the RSX .XQT command.  
========> [VAX83B.KMSKIT.SYSMGR.OPERATOR]AAAREADME.TXT;1 <========


        On our system we have an operator account with a password
known to all operators.  The operators can do all kinds of privileged
things.  To insure system security, not only is the common password
for the account required, but the user also must be known to the system
as a valid operator to use the account, and that users private password
(for their normal account) is verified.  The command procedure's capabilities
can be expanded substantially beyond that presented here, but this
part of it should provide other users with a template for implementing
such a system.  The operator account command procedure in turn invokes
command procedures on SYS$SYSROOT:[SYSMGR.CMDFIL].  Called command
procedures include OPERACNT.COM, SYSBACKUP.COM, OPERCMD.COM, and
INCBACKUP.COM.

        To use the facility, create an operator account [OPERATOR] with
the required privileges.  When the operator logs on LOGIN.COM should
be executed after SYSLOGIN.COM.  It in turn executes operator.com which 
requires that a list of valid user names exist in OPERATORS.DAT.  The
names in OPERATORS.DAT should be the standard USERNAMES the users would
log onto the VAX if they were logging on to their own account.  This
is because, they are then going to be asked for their password, at which
time they should enter their normal VAX password (which won't echo). 
Then some magic occurs, and the USERNAME/PASSWORD of the users normal
account is verified.  If it is AOK, the operator is logged on to the account
and can do all kinds of things including 

        issue any command (a log of special commands is kept)
        Add Accounts
        show account status
        load a shared gobal section
        perform full disk  backups
        perform rotating incremental disk backups
        initialize a new tape
        Shutdown the system

A log of all operator accesses to this procedure is also kept.
The OPERACNT.COM procedure uses WHO.EXE from the VMS V2.5 kit (it works
just fine on V3.0) installed with the correct privilege (SYSPRV) so it can
read the account file.  Writing a seperate task or subroutine to do this
is easy, however.  See the code in REMINDER.FOR in [KMSKIT.VPW.REMINDER].
You will have to modify these procedures to your own sites needs.
========> [VAX83B.KMSKIT.SYSUTL]AAAREADME.TXT;1 <========


        This subdirectory contains useful system utilities.

1. CALC.  VAX CALC is modified for online help.  Any time CALC is prompting
the user may type HELP and get help (or type HELP topic .....).  The
CALC help library is included.  It is ment to be part of the help library
SYS$SYSDEVICE:[SYSUTL]SYSUTL.HLB and CALC will print lots of nasty little
messages telling you the library isn't there if it isn't.  The updated
Fortran source for the VAX CALC mainline and CALC.EXE are provided.
CALC.EXE is on [KMSKIT.VPW]. If you want all the sources, get them from DECUS.
Much more user friendly.

2.  NOUNLOAD.  We have a dual ported RK07.  One port talks to our PDP-11/45
(running RSX) and the other talks to our VAX.  If we mounted the RK07 from
the VAX end (readonly) and dismounted it, it would spin down.  This made
the RSX side of the world very, very, very unhappy.  NOUNLOAD is a freebe
from the friendly VMS group (they sometimes answer SPRs with answers other
than 'fixed in a future release') for the problem presented to them in
Jan 1982.  While written for VMS V2.x, it also correctly builds and works
for VMS V3.0.  To use it, after you mount a disk, type NOUNLOAD dduu:
(NOUNLOAD must be a foreign command).  Now the disk will not spin down when
dismounted.  Now to make the whole process bulletproof, the mount command
is replaced by an indirect command procedure MOUNT.COM which checks to see
if an RK07 is specified, and if so issues the NOUNLOAD command transparently
without the user suspecting a thing.  Note however, emulating the mount command
completely with a command procedure is impossible since leading qualifiers
do not get handled correctly.  Qualifiers must be appended to the
device.

3.  SETUIC.  SETUIC allows users with group privileges to change UIC's within
their groups, and users with world privileges to change UIC's accross groups
as long as the group number is larger than a specified max.  On our system
this max is 310. This value is easily set in the code.  Note SETUIC is a 
privileged image and should be rebuilt each time a new version of VMS goes in.
SETUIC also displays the current UIC of the process.
========> [VAX83B.KMSKIT.VAXSUBS]AAAREADME.TXT;1 <========


                [KMSKIT.VAXSUBS]

        This directory contains useful subroutines which we use for
migrating RSX applications to VMS.  Our goal is to be able to run 
identical source code on both machines.  The modules in VAXSUBS and
VSUB2 try and emulate (correctly) the RSX subroutines in native mode.
Use of these subroutines has drastically reduced conversion work from
RSX to VMS.  Eventually, we hope to be able to emulate all reasonable RSX
subroutine calls in VMS native mode subroutines.  The subroutines in 
VAXSUBS.FOR have been extensively used.  Those in VSUB2 are in preliminary
stages.  I think they work, but the testing has not been as extensive.

     ARGCNT.MAR and GETADR.MAR are used to let a Fortran subroutine
know how many parameters have been passed to it or whether an optional
parameter has been omitted.  Very, very useful routines for writing
bomb proof subroutines.  QUADMATH.MAR is borowed from a past DECUS tape
and a routine was added to complete the math functions.

     IESC is a real goodie.  It allows a running program to check to see
if the user has typed anything on the keyboard and if so take appropriate
action.  I think you will like it.  We use it all the time for controling
real time interactive displays from the keyboard.

     Note that the routines used for emulating RSX behavior are compiled
/NOI4 because the programs we used them with were compiled /NOI4.  Some 
bug fixes are supplied since the last release one of which was required
by change in the way the VAX Fortran compiler worked.
========> [VAX83B.KMSKIT.VPW]AAAREADME.TXT;1 <========


                The VAX Professional Workstation V2.0
                            May 20, 1983

The VAX Professional Workstation is a collection of all kinds of things.
Since it has evolved piecemeal I have never tried getting it installed,
up and running from scratch. However, I think all required files are here.
During SYSTARTUP.COM

        $ASSIGN/SYSTEM SYS$SYSDEVICE:[VPW] SYS$VPWFILES
        $ASSIGN/SYSTEM SYS$SYSDEVICE:[VPW] SYS$SYSVPWFILES
        $ASSIGN/SYSTEM SYS$SYSDEVICE:[VPW.CAI] SYS$VPWCAI
        $! Set up help library.  _x is " ", "_1", "_2" etc.
        $ASSIGN/SYSTEM SYS$SYSDEVICE:[VPW]VPW.HLB HLP$LIBRARY_x

Note that for the spelling checker to work, you need the spelling checker
program from the Fall 1982 VAX sig tape.  And it must be set up with the
correct logical assignments.  SPELL.CLD will have to be edited to
point to its location.  The logical name for the spelling checker we
assign during SYSLOGIN.COM

        $ASSIGN SYS$SYSDEVICE:[xxx]  ENGL

Documentation on using the VAX Professional Workstation can be found in
VPWMANUAL.MEM

All files on [KMSKIT.VPW] should be placed on a given directory and the
logical assignments made.  During SYSLOGIN.COM @SYS$SYSVPWFILES:SETVPWSYM
is executed.  Once that is done type VPW and all should go OK.  Of course,
as things generally work, I am sure there will be a few difficulties, but
I think they will be minor and easy to fix.

On this directory are a number of useful images.

1.  ASK.EXE.  This is a modified version of the ASK program which appeared
on the previous SIG tape.  I modified it so escapes sequences from a 
VT100 keypad could be input and for handling upper/lower case conversion
a bit better.

2. BROADCAST.  Allowes non priviledged users to broadcast (just like RSX)
each other messages.  Must be installed.  Tracks you down where ever you
are hiding.  Now supports broadcasting to OPA0:

3.  CALC.  An updated version of the DECUS VAXCALC which supports online 
HELP.  HELP is located in [SYSUTL]SYSUTL.HLB.

4.  FLOLDRINDX and VPWDIRECT.  Small mini programs to provide formatted
outputs of directories and text libraries for use with the word processing
command procedure.

5.  Notebook.  Note quite a poor man's DTR, but a fast simple way, of
using and maintaing personal data bases.  Very versitile and reasonably
fast.  All kinds of neat uses.   

6.  REMINDER.  Everyone needs this.  Works with REMINDUSR.COM to provide
a way of leaving oneself (or others) dated reminder messages which get
                                                      Page 2


delivered at the specified time..  For it to work correctly, BROADCAST 
must be installed with the correct privileges. 

Noteworthy command procedures include

1. VPW.COM.   The root procedure for the VAX Professional Workstation.
The things command procedures can do never ceases to amaze me.  Of course
whether or not they should be made to do them is another issue.....
However, throwing VPW together was a fun, and fast way of getting the 
functionality we needed.

2. WP.COM     Given that we do not have a real word processing package on
our system, this works pretty well.  One secretary has used it for months
(she lost her real word processor to a personell shuffle).  Our system
has two printers set up, TTA0: (an LA100) and a Diablo 630 letter quality
printer (TTA1:) and if your system does not have its printers set up this
way I suspect you will have to change WP.COM about to suit your needs.

3. DATEBOOK   A guick and dirty personal datebook.  The DATEBOOK command
procedure requires Datatrieve-11.  VAX Datatrieve also should work if
appropriate modifications are made but I haven't tried doing so yet. 
========> [VAX83B.LBLTOOLS]AAAREADME.TXT;1 <========


There are four utilities presented here - a dynamic scheduling program,
a process monitoring utility, a history/editing DCL shell, and a disk 
structure maintenance utility.

The dynamic scheduling program attempts to improve the interactive response
of the machine by temporarily lowering the priority of compute-bound
processes.  For more information see the file scheduler.for.  This utility
is also known as DROPKICKER.
Files scheduler.for, scheduler.com, schedulem.mar, ssdef.for, jpidef.for

The process monitoring utility is derived from the scheduler program and
displays process name, pid, CPU utilization, current and base priority,
working set size, imagename, and a bargraph of CPU utilization in a single
terminal independent display.
Files pm.for, schedulem.mar, pcbdef.for

The dclshell is a history shell with command recall and editing
capabilities.  It uses dcl command procedures rather than subprocesses.
For more information see the file dclshell.hlp.
Files shell.for, shell.mar, shell.com, shell.mak, dclshell.hlp

The disk structure maintenance utility is a modified version of the 
fixheader utility that appeared on the DECUS tape a few years ago
(1980 ?).  For more information see the file fixheader.txt.
Files fixheader.for, fixheadem.mar, fixheader.com, fixheader.txt, ssdef.for

Les Tabata
Computer Science And Mathematics
Lawrence Berkeley Labortory
Berkeley, CA
========> [VAX83B.MARLEX]AAAREADME.TXT;1 <========


Scott Nelson
Marlex Petroleum
Information Systems Department
2633 Cherry Avenue, Suite 400
Signal Hill, California 90806
(213) 595-5758
Telex 65-6496 (ECO PETRO SGHL)

Here is a few programs and command procedures which have been useful here at
Marlex.  Please feel free to contact me if you have any comments, suggestions,
enhancements, bugs, etc.

BRDCST
        This utility is used to send REPLY/ALL/BELL messages to the last line
        of the screen (which has been reserved in our applications programs). 
        Very useful to preserve the screen.  More useful if set-up as a foreign
        command: BRO*ADCAST :== $device:[directory]BRDCST

        BRDCST.COB      Source
        BRDCSTA.MAR     Generates global constants
        BRDCSTBLD.COM   Compiles the programs


DELTREE
        This utility will delete a directory from the bottom-up.  This is a
        corrected version of figure 2-4 on page 2-12 of the VAX/VMS System
        Management and  Operations Guide.

        DELTREE.COM


FIXSCREEN
        This procedure issues all of the appropriate escape sequences to put a
        VT132 back to normal mode.  (Useful if you have games that leave the
        terminal in VT52 mode!)  Can be made more useful by creating a foreign
        command: FIX*SCREEN :== @device:[directory]FIXSCREEN

        FIXSCREEN.COM   Command procedure
        FIXVT132.LIS    File containing the escape codes


MOUNTED
        This procedure makes sure the right tape is mounted (via the tape
        label) before you start writing on it! 

        MOUNTED.COM


PRINT
        This procedure shows all of the *.LIS files in the current directory,
        and interactivly lets the user select files for printing.  The top of
        the screen is used to show the filenames, and the bottom is used for
        selecting the appropriate action.  On non-ANSI_CRT terminals, it does
        not try to set up scrolling regions.

                                                      Page 2


        PRINT.COM


STRIP
        Removes trailing blanks and/or tabs from the end of records of the
        selected file(s).  Implemented as my first try in using the command
        definition utility (SET COMMAND) and my first try in using  the 
        wildcarding feature in RMS.

        STRIP.CLD       Command definition
        STRIP.MAR       Source program
========> [VAX83B.MENU]AAAREADME.TXT;3 <========


        [VAXS83.MENU]AAAREADME.TXT
 
        MENU V3         Inmos Menu Processor for VAX/VMS 3.0
 

        I.  Procedure Description

        The  MENU  processor is designed to provide a common  format for all
        application systems implementations in an environment that is easily
        controlled and modified by systems developers.

        The  MENU  processor provides a  user-friendly  interface  with  the
        VAX/VMS  operating  system  allowing  application  users to  perform
        a  pre-determined  set of operations  related to their job  function
        in a  manner allowing  maximum  ease of  use and  absolute security.

        The procedure  LOGMENU.COM is invoked by  ALOGIN.COM for non-systems
        users.    Software development users enter the  VAX environment thru
        the DLOGIN.COM  ( both controlling command  procedures are specified
        in the User Authorization LGICMD specification.

        To  assist in the  compatibility and  transportability  of  software
        a  comprehensive  set  of  Logical Assignment Standards  was devised
        and  implemented  by  Inmos  Corporation  and  all  device/directory
        references  in the  MENU  processor incorporate logical assignments.

 
   Detailed documentation on the MENU processor is provided in [MENU]AAAREADME.DOC

             The following supplemental procedures and excutable are provided :

                 ASSIGNSYS.COM     Sample System Logical Assignment Procedure
                 ALOGIN.COM        Application Login Control Procedure
                 DLOGIN.COM        Software Development Login Control Procedure
                 LOGMENU.COM       The MENU processor 
                 LOGICAL.COM       Sample Application Logical Assignment 
                 LOGICAL.FLO       Flow Diagram of the implementation process 
                 LOGICAL.DOC       The Inmos Corporation Logical Assignment Standards
                 ISSL001A.EXE      Provides 'unique' user version number for process
                 ISSZ9990.COM      Allows 'G' function for logical assignments
                 BATCHU.COM        Displays SYS$BATCH,LONGRUN from MENU
                 PRINTU.COM        Displays SYS$PRINT,LPA0 from MENU
                 SHOWOPT.COM       Display MENU 'alpha' selection options
                 INMOSNET.COM      Allows DECNET traversal from MENU
                 SENDMAIL.COM      Allows access to MAIL from MENU

 
        II.  Contact
 
 
                Author:         B. Lee Jones    
                                INMOS Corporation
                                P.O. Box 16000  
                                Colorado Springs, CO   80935
                                (303) 630-4226
                                                      Page 2


                                 TWX  910 920 4904
 
========> [VAX83B.NETGEN]AAAREADME.TXT;1 <========




LABSTATION-23:

An Application Note




1.0 OVERVIEW



LABSTATION-23 is a product designed to make remote data collection
truly automated.

LABSTATION-23 may be one or several real-time data collection stations
connected by network to a VAX-11. LABSTATION-23 provides automated
data collection at local or remote sites, automated data transfer
from the small data collection stations to the VAX, and automated
data storage on the VAX (see Figure 1).

Connected to a VAX-11 via DECnet communication lines, LABSTATION-23
data collection stations act as nodes on the network, running
data collection programs initiated on the VAX and transferring the
data to the VAX.  Once collected, the
data can undergo immediate reduction and partial 
processing on the LABSTATION-23 node or it can be transferred
automatically via DECnet to the host VAX for storage and full 
processing.

Designed to be a frontend to the VAX for real-time I/O, each LABSTATION-
23 node includes the following hardware:*

        o PDP 11/23 central processing unit
        o 192 Kbyte random access memory
        o DLV11-J asynchronous terminal interface
        o DMV11 direct memory access communications interface with
          built-in modem
        o I/O modules, including A/D converter, D/A converter, digital
          input unit, digital output unit, thermocouple preamplifier,
          dual multiplexer, preamplifier, and clock (all modules are
          optional)
        o LABSTATION I/O module crate


________________________________
*DIGITAL's Field Service additionally requires that each facility
(loosely defined as a group of LABSTATION nodes located within a
common area) have a test station consisting of a LABSTATION-23 cart,
VT100 video terminal, and an RX02 disk drive.




                                                      Page 2





The LABSTATION nodes are connected to a central VAX-11 that must be 
equipped with a unibus and a DMP-11 direct memory access synchronous
communications interface, which can support up to twelve LABSTATION
nodes.  In internal testing, we measured the speed of
data transfer from the nodes to a VAX-11.  The data in Table 1 show
the results of our testing.  Note both the decline in individual 
transfer rates and the increase in the aggregate transfer rate as 
nodes were added.


Table 1. Rate of Data Transfer from LABSTATION Nodes to VAX-11 Host
-------------------------------------------------------------------

No. Active              Individ. Xfer           Aggregate Xfer
   Nodes                   Rate                       Rate
                        (Samples/Sec)           (Samples/Sec)


   1                        1300                    1300

   2                         950                    1900

   3                         740                    2200

   4                         600                    2400

   5                         510                    2500
--------------------------------------------------------------------


Although temporary local storage at the nodes (on floppy or hard
disk is an option, the method described in this note uses
remote data collection at the nodes and centralized data storage and
processing on the VAX, with data transfer performed by the network
(DECnet) via the DMP-11/DMV-11 communications interfaces.

This Application Note describes:

        o A procedure that automates RSX-11S system generation
        o A procedure that automates network configuration, following
          network installation by DIGITAL's Software Support personnel
        o A program development tool that automates the editing,
          compilation, and downline loading of your programs
        o A pair of demonstration programs that collect data at a node
          and then transfer it, via network, to the VAX for analysis





2.0 AUTOMATING RSX-11S SYSGEN AND LABSTATION NETWORK CONFIGURATION

                                                      Page 3



2.1 Copying The Disks

1. We recommend that you copy both distribution disks onto the
   disk that is to become the LABSTATION 23 disk. This disk and
   UIC will be assigned the logical name SYS$LS23.

2.2 RSX-11S System Generation


1. We recommend that you run the SYSGEN procedure from a hardcopy 
   terminal, as the hardcopy will let you retrace your steps,
   should something go wrong.
  
   We also recommend using one disk for system and network generation
   and another as the permanent LABSTATION system disk, which will
   hold the RSX-11S system files, the DECnet11S database and system
   files, and the LABSTATION software.  The SYSGEN and NETGEN pro-
   cedures leave UICs all over the disk; by copying all LABSTATION
   system and network files to a clean disk, you will have a dedicated
   system disk.

   Use default UICs with the SYSGEN procedure.

   In the dialog that follows, user input is printed in color.

   Before running the SYSGEN procedure, print out the SYSGEN dialog,
   which is contained in the following files on your  LABSTATION-23
   distribution media:

   1. *.LOG


2. To run the program, log in on the VAX, using an account with 
   system manager privileges; specify that you want to use the MCR
   command line interpreter.  In response to VMS's username prompt,
   type:

   Username: SYSTEM/CLI=MCR<ret>

        where

        SYSTEM represents a fully privileged account name.
        /CLI=MCR represents invokation of the MCR command line
                interpreter.

   After entering your password, proceed to step 3.


3. Assign a single device, specifying a number for a UIC that
   will hold all system and network files; then give
   that UIC the name SYS$LS23.  For example using UIC 3,64 type:

   >ASN DR0:[3,64] SYS$LS23<ret>

                                                      Page 4


        where

        DR0: represents the assigned device.
        [3,64] represents the default UIC number.
        SYS$LS23 represents the logical name assigned to this
                device and UIC.

4. Enter the SYS$LS23 UIC. Type:

   >SET DEF SYS$LS23<ret>


5. Begin running the SYSGEN procedure. Type:

   >@RMGEN<ret>



The SYSGEN procedure is interactive; respond to all questions that
are displayed.

Following is a description of each part of the dialog in the SYSGEN
procedure, with recommended answers to critical questions.

The first set of dialog is concerned with device information.  In 
response to the first question,

WHAT IS THE TARGET PHYSICAL DEVICE[S]:

give the name of the device on which you want to do system generation.
We recommend the use of a disk with 3000 blocks of free
space.

The final question in section 1, as well as those in section 2, require
affirmative answers.

Section 3, "RSX11S Generation," has several critical questions.  We will
present all questions and recommended responses.  
Whenever <ret> appears alone as the response, it means 
that we recommend use of the default response, which requires only
a carriage return.


IS THE TARGET DISK, SY0, THE SYSTEM DEVICE [Y/N]:N<ret>
WHAT IS THE GROUP NUMBER FOR THE SYSTEM FILES [0 R:1-10 D:1]:<ret>
WHAT IS THE GROUP NUMBER FOR THE EXECUTIVE FILES [O R:1-11 D:11]:<ret>
TARGET DEVICE NAME[S]:dl0<ret>

        Use default values for the group numbers (press carriage
        return).



COPY THE RSX-11S DISTRIBUTION FILES TO THE TARGET DISK? [Y/N]:y<ret>
ENTER DEVICE FOR THE RSX-11S DISTRIBUTION KIT[S]:ms0<ret>
                                                      Page 5


IS THE RSX-11S DISTRIBUTION KIT ON A 2400 FOOT REEL [Y/N]:y<ret>
IS THE TAPE READY ON MS0:? [Y/N]:y<ret>

        Although the questions regarding the RSX-11S distribution
        media repeat those in section 2, answer
        them anyway.


3. DO YOU WANT TO INHIBIT EXECUTION OF MCR COMMANDS? [Y/N]:n<ret>
5. ARE YOU GENERATING A MAPPED SYSTEM? [Y/N]:y<ret>
6. USE AN INPUT SAVED ANSWER FILE? [Y/N]:y<ret>
7. NAME OF INPUT SAVED ANSWER FILE [D: SYSSAVED.CMD] [S]:<ret>

        Answer these questions EXACTLY as above.



9. NAME OF OUTPUT SAVED ANSWER FILE: NL:<ret>
11. USE SAVED HOST CONFIGURATION? [Y/N]:y<ret>
12. USE SAVED PERIPHERAL CONFIGURATION? [Y/N]:y<ret>
13. SKIP END OF SECTION (EOS) BREAKPOINTS? [Y/N]:n<ret>
14. SKIP END OF EXECUTION (EOX) BREAKPOINTS? [Y/N]:n<ret>
15. CLEAN UP FILES FROM PREVIOUS GENS? [Y/N]:y<ret>

        Respond to the questions exactly as shown above.



The system will now display information about the target configuration.

When it reaches the host configuration section, the system will display 
the following prompt several times:

*EOS * DO YOU WANT TO:<CR>-CONTINUE R-REPEAT SECTION E-EXIT P-PAUSE:

Press RETURN each time the prompt appears.



In the "Create Executive build files" part of section 3, the program
again displays the prompt:

*EOS* DO YOU WANT TO: <CR>-CONTINUE R-REPEAT SECTION E-EXIT P-PAUSE:

You MUST respond by typing:

P<ret>

After a brief pause, the program will display the angle-bracket prompt.
In response, type:

> @sys$ls23:rmsgn1.cmd<ret>

This will cause the system to run a system customization procedure. 
Again, this procedure will display the prompt:
                                                      Page 6



*EOS* DO YOU WANT TO: <CR>-CONTINUE R-REPEAT SECTION E-EXIT P-PAUSE:

Respond by pressing RETURN.

After completing the executive assembly, the program will ask:

EOX * DID THE EXECUTIVE ASSEMBLE CORRECTLY [Y/N]:

EOX * DID THE DEVICE DRIVERS ASSEMBLE CORRECTLY [Y/N]:

EOX * WERE THE TASK BUILD PREPARATIONS MADE SUCCESSFULLY? [Y/N]:

        Answer "no" only if a question is preceded by error messages;
        otherwise, answer "yes."



Following these questions, phase I of RSX-11S sysgen terminates 
and phase II begins automatically, although the procedure displays this
message:

        End of 11SGEN phase 1 at hh:mm:ss on dd:mmm:yyyy
        __To continue type: @[2,200]11SGEN2

Ignore this message; DO NOT type anything.  Phase II will begin 
automatically and will ask:

* DID THE FIRST PART COMPLETE WITHOUT ERROR [Y/N]:

You must answer "y" to this question, if you wish to proceed.


Phase II is divided into two sections, "Build the Executive and All
Required Tasks" and "Build Loadable Drivers."  Answer all questions
in both sections.  Respond to the questions as indicated below.


IN WHAT UIC IS SGNPARM.CMD IF NOT [2,200] [S]:<ret>

TARGET DEVICE NAME[S]:

        Name the device that was named in response to the very first
        question in the procedure.

DO YOU WANT EXPANDED COMMENTS? [Y/N]:n<ret>
HAVE YOU ALREADY CREATED 11SLIB.OLB? [Y/N]:n<ret>
HAVE YOU ALREADY BUILT THE EXEC? [Y/N]:n<ret>

DO YOU WISH TO EDIT THE EXECUTIVE BUILD FILE? [Y/N]:n<ret>
DID THE EXECUTIVE BUILD SUCCESSFULLY? [Y/N]:<ret>
        Answer "no" to this question only if it is preceded by error
        messages.
DO YOU WANT TO BUILD ANY LOADABLE DRIVERS NOW? [Y/N]:y<ret>

                                                      Page 7




In the "Build Loadable Drivers" section, the program asks for specifics 
regarding your selection of device drivers and your selection of
privileged tasks to be included in your system.  Answer all questions
in this section.  Recommended answers appear below.


3. DEVICE FOR DRIVER'S MAPS [D: NL:] [S]:<ret>
        
        The defualt values DD: and DY: were selected.

5. DRIVER 2-CHARACTER DEVICE MNEMONIC[S]: DD<ret>
6. DRIVE PARTITION NAME [D: DRVPAR] [S]:<ret>

5. DRIVER 2-CHARACTER DEVICE MNEMONIC[S]:DY<ret>
6. DRIVE PARTITION NAME [D: DRVPAR] [S]:<ret>

5. DRIVER 2-CHARACTER DEVICE MNEMONIC[S]:<ret>
        Pressing <ret> indicates there are no more device types to
        be loaded.

DO YOU HAVE THE MAPS ALREADY? [Y/N]:n<ret>

HAVE YOU ALREADY BUILT THE FULL DUPLEX TERMINAL DRIVER? [Y/N]:N<ret>
DO YOU WISH TO EDIT THE BUILD COMMAND FILE FOR THE TERMINAL DRIVER?:n<ret>
DID THE TERMINAL DRIVER BUILD SUCCESSFULLY? [Y/N]:y<ret>
LIST FULL DUPLEX TERMINAL DRIVER MAP? [Y/N]:n<ret>
DO YOU WANT TO CONTINUE AND BUILD THE PRIVILEGED TASKS? [Y/N]:y<ret>
ASSEMBLY LIST DEVICE FOR PRIVILEGED TASKS (DDNN:) [D: NL:] [S]:<ret>
MAP DEVICE FOR PRIVILEGED TASKS (DDNN:) [D: SY:] [S]:<ret>
HAVE YOU ALREADY BUILT TASK TKTN?[Y/N]: n<ret>

DO YOU WISH TO INCLUDE BASMCR, OTL, OR SIP IN YOUR SYSTEM? [Y/N]:y<ret>
DO YOU WISH TO INCLUDE RSDV05, RSDV52, OR RSDV1H? [Y/N]:y<ret>
DO YOU WISH TO INCLUDE THE RSX-11S SUBSET FCS? [Y/N]:n<ret>
DO YOU WISH TO BUILD CDA FOR YOUR HOST SYSTEM? [Y/N]:n<ret>

DO YOU WISH TO MAKE CORRECTIONS TO RSX-11S SOURCE MODULES? [Y/N]:n<ret>

DO YOU HAVE TO EDIT THE TASK BUILD COMMAND FILE FOR TKTN?[Y/N]:n<ret>

DO YOU WANT TO INCLUDE TASK BASMCR? [Y/N]:y<ret>

DO YOU WISH TO EDIT THE ASSEMBLY PREFIX FILE FOR BASMCR? [Y/N]:n<ret>

DO YOU WISH TO EDIT THE TASK BUILD COMMAND FILE FOR BASMCR?[Y/N]:n<ret>

DO YOU WANT TO INCLUDE TASK OTL? [Y/N]:y<ret>

DO YOU WISH TO EDIT THE ASSEMBLY PREFIX FILE FOR OTL? [Y/N]:n<ret>

DO YOU WISH TO EDIT THE TASK BUILD COMMAND FILE FOR OTL? [Y/N]:n<ret>

DO YOU WANT TO INCLUDE TASK SIP? [Y/N]:y<ret>
                                                      Page 8



DO YOU WISH TO EDIT THE ASSEMBLY PREFIX FILE FOR SIP? [Y/N]:n<ret>

DO YOU WISH TO EDIT THE TASK BUILD COMMAND FILE FOR SIP? [/N]:n<ret>

DO YOU WANT TO INCLUDE TASK RSDV05? [Y/N]:n<ret>
DO YOU WANT TO INCLUDE TASK RSDV52? [Y/N]:n<ret>
DO YOU WANT TO INCLUDE TASK RSDV1H? [Y/N]:y<ret>
        Answer the above questions according to the type of terminal
        interfaces you need.

DO YOU WISH TO EDIT THE TASK BUILD COMMAND FILE FOR RSDV1H?[Y/N]:n<ret>

DO YOU WANT TO CONFIGURE THE EXEC AT THIS TIME USING VMR? [Y/N]:n<ret>
        Answer "no" to this question.  DIGITAL's Software Support 
        personnel must install the network (DECnet-11S).  Only after
        the network is installed can you configure the executive.  Do
        so by running the Network Configuration program, described in
        Section 2.3 of this Application Note.  The configuration pro-
        cedure will build and install a system image using VMR.




2.3 Network Configuration Program

Use this procedure only after system and network installation
have been completed.

1. To run the Network Configuration Program, log in on the VAX, using an
   account with system manager privileges; specify that you want to 
   use the MCR command line interpreter.  In response to VMS's
   username prompt, type:

   Username:SYSTEM/CLI=MCR

        where

        SYSTEM represents an account with system manager privileges.
        /CLI=MCR represents invokation of the MCR command line 
        interpreter.


   After entering your password, proceed to step 2.


2. Access the device on which the LABSTATION SYSGEN procedure was
   performed, and enter the UIC assigned to the LABSTATION system
   files.  Type:

   >ASN DR0:[3,64] SYS$LS23<ret>

        where
        DR0: represents the the RK07 disk on which SYSGEN was performed.
        [3,64] represents the UIC number assigned during SYSGEN.
                                                      Page 9


        SYS$LS23 represents the UIC's logical name, assigned during
               SYSGEN.


3. Enter the SYS$LS23 UIC.  Type:

   >SET DEF SYS$LS23<ret>


4. Begin running the configuration program.  Type:

   >@RMCONFIG<ret>


The program is interactive, respond to all questions that are displayed 
by the program.

The first question asks if SYSGEN and NETGEN have been completed.  Only
if you answer "yes" to this question will the procedure continue.

In Section 1, the procedure asks you to create a password of up to eight
characters and to establish privileged and nonprivileged accounts with
names and passwords of up to fifteen characters.  After doing
this, proceed to Section 2 of the procedure.

In Section 2, "LABSTATION-23 host configuration," the procedure asks 
critical questions about each DMP-11 communications interface and the
nodes connected to it.  These questions, and guidelines for answering
them, follow.

SHOULD DMP-0 BE CONFIGURED AS A LABSTATION CONTROLLER? [Y/N]:
        If your system has only one DMP-11 communications interface, and
        the nodes have been connected to it, answer "yes."

        If your system has more than one DMP-11 communications
        interface, and LABSTATION-23 nodes have been connected to
        several of them, DIGITAL's Software Support personnel have
        informed your system manager which DMP-11 interface has been
        assigned the number 0 and what nodes are connected to it.  
        Obtain this information before proceeding.  Answer "yes" to
        this question.


HOW MANY LABSTATION STATIONS ARE CONNECTED TO DMP-0 [D R:1-12 D:1]:
        Up to twelve nodes can be connected to each DMP-11 line.
        Specify  the number of nodes connected to the line assigned
        the logical number 0.  (If your system has multiple DMP-11
        communication lines installed, this entire dialog will be
        repeated for each DMP-11 line.)


WHAT IS THE NODE NUMBER OF DMP-0, STATION 1 [D R:1-16]:
        Be sure to give station 1 the node number assigned to it
        during network installation by DIGITAL's Software Support
        personnel.
                                                     Page 10




WHAT IS THE NODE NAME OF DMP-0, STATION 1[D R:1-6]]:
        Be sure to give station 1 the node name given to it during
        Network Generation, so that the node name, or password,
        established in the host data base is the same as the
        password set in the switches on the DMV.


The procedure will repeat the questions on node number and node name
for all nodes on each DMP-11 communications line.  When all node
names and numbers are complete, the program will ask:

SHOULD DMP-1 BE CONFIGURED AS A LABSTATION CONTROLLER? [Y/N]:
        Answer "yes" only if you have a second DMP-11 communications
        line to which LABSTATION-23 nodes were connected by DIGITAL's
        Software Support during network installation.


After all LABSTATION-23 nodes have been defined, the program asks:

ARE YOU READY TO CONTINUE? [Y/N]:

If this is the first time you've configured the network, answer "yes,"
so that the program will display progress messages as it updates the
network's database, creates system image files, and terminates.

When the procedure terminates, proceed as follows:

  Stop DECnet on the VAX; run the Network Control Program from the
system manager's account; and then restart DECnet.  To do all this,
type:

        >NCP<ret>
        NCP> SET EXEC STA SHUT<ret>
        NCP> EX<ret>

   Next issue the command to start the network:

        $@[directory containing the startnet command file]STARTNET<ret>


The network should now be running.


Use the network to downline load the RSX-11S system image to the   
nodes.  Again, invoke the Network Control Program.  Type:

$RUN SYS$SYSTEM.NCP<ret>

For each node, type:

NCP>LOAD NODE nodename<retNCP>

        where
                                                     Page 11



        nodename represents the name assigned to each node during
        network generation.








3.0 PROGRAM DEVELOPMENT TOOL

The tool described in this section should be used to develop
application programs on the host VAX and then automatically downline
loading them to the LABSTATION nodes.  This procedure lets you edit,
compile, task build, and downline load your programs automatically.
The name of the program development tool is RMDEVEL.


Do not use this procedure unless your account has the following
privileges: OPER, LOG-IO, and CMKRNL.

1. To run the program development tool, log in to VMS on the VAX.
   After entering your username and password, invoke the MCR command
   line interpreter by typing:
   
   $MCR<ret>


2. Access the LABSTATION system disk and enter the LABSTATION UIC.
   Type:

   >ASN DR0:[3,64]=SYS$LS23:<ret>
   >SET DEF SYS$LS23<ret>

        where
        DR0: represents an RK07 disk.  If your LABSTATION system
                is stored on another type of device, enter that device
                name and number.
        [3,64] represents the UIC number.
        SYS$LS23 represents the UIC's logical name.


3. Invoke the procedure and name the source file that you wish to work 
   on.  Type:

   >@RMDEVEL filename<ret>

        where
        filename is a 1-6 character name for a source file.  DO  NOT
        add a file extension.  The program assumes that the extension
        is .FTN.


                                                     Page 12


The procedure will ask you a few questions and then invoke the
EDT editor.  The questions are as follows:.


*WHAT WAS THE TARGET DEVICE DURING SYSGEN AND NETGEN [S]:DR0<ret>
        Specify the name of the device on which your LABSTATION
        system is stored.


*WHAT WAS THE GROUP UIC NUMBER SPECIFIED [O D:3]:<ret>
        Use the default UIC; press carriage return.



* [1:6] WHAT IS THE LABSTATION TARGET NODE NAME [S]: OXYGEN<ret>
        In this response, OXYGEN is the name of the node on which
        the program being developed will run.

        Name the node[s] on which you wish your program to run.



After you answer remaining questions on the use of remarks and end-
of-execution breakpoints, the program will automatically 
perform the following program development tasks:

        1. Invoke the EDT editor.
        2. Compile your source file.
        3. Task build your program image.
        4. Install the program image in host memory, using the VMR
           utility.
        5. Downline load your program to the specified target node(s).


If you indicated that you want end-of-execution breakpoints, the
program development tool displays this prompt at the completion
of each task:

DO YOU WANT TO CONTINUE <RET>,EXIT <E>,PAUSE <P>, OR REPEAT <R>:

        To continue to the next task, press <ret>
        To exit the program, type E<ret>
        To abort the program and return to MCR level, type P<ret>
        To return to the beginning of the editing stage, type R<ret>

The first time the program development tool is used on any  
program, the tool will display the following error message:

REM program name
VMR--TASK NOT INSTALLED
DO YOU WANT TO CONTINUE<RET>, EXIT<E>, PAUSE<P>, OR REPEAT<R>:

        where

        program name represents the name of the program that's
                                                     Page 13


        being developed, compiled, or installed.

Always respond to this message by typing:

R<ret>


When it has completed all tasks, the program development tool
displays this message:

End of procedure

If you used the program to perform all five tasks, your program should 
now be installed on the specified node(s).




4.0 DEMONSTRATION PROGRAMS



A pair of demonstration programs is included with the LABSTATION-23
software.  Working together, the two programs collect data from
an A/D converter into a buffer on the LABSTATION node, and, as the
buffer fills, they transfer the data via DECnet to the VAX.

Written in FORTRAN, they collect and transfer three buffers of data
(2048 words per buffer) from the node to the VAX.  RMDMO1, the first
program in the pair, runs on the LABSTATION node.  Its role is to set up
and manage data collection and then to send each buffer of data
to the VAX.  RMDEMO1, the second program in the pair, manages the 
transaction by calling RMDM01, opening a VAX file for data storage,
accessing the network, prompting the user for the file name, reading
and writing to disk the three buffers of data, and then closing the
data file.

Before using this pair of demonstration programs, make sure that 
the LABSTATION system software has been installed and that the network
has been configured according to the instructions in Section
2.0 of this Note.


1. Make sure that the LABSTATION node you wish to use is equipped
   with an A/D converter and a clock module.

2. Log in to VMS on the VAX.


3. Access the LABSTATION system disk and enter the LABSTATION UIC.
   Type:

   $ASN DR0:[3,64]=SYS$LS23<ret$
   $SET DEF SYS$LS23<ret$

                                                     Page 14


        where

        DR0: represents an RK07 disk.  If your LABSTATION system is 
               stored on another type of device, enter that device 
               name and number.
        [3,64] represents the (default) LABSTATION system UIC number.
        SYS$LS23 represents the LABSTATION system UIC name.


4. RMDMO1, the demo program that runs on the LABSTATION node, must be 
   loaded on the node before you can start running RMDEMO1, the program
   that runs on the VAX.

   A. If someone has already installed RMDMO1 in the system image
      and the system image has been downline loaded to the node(s),
      proceed to step 6.

      If you wish to determine what nodes have been loaded, type:

        $RUN SYS$SYSTEM NCP<ret>
        NCP> SHOW KNOWN NODES<ret>

      In response, the Network Control Program will display a 
      list of reachable and unreachable nodes.

      To leave NCP, type:

        NCP>EXIT<ret>


   B. If RMDMO1 is not yet installed in the system image, proceed
      to step 5.

   C. If a node goes down, wait until it is up and running again, and
      proceed as follows:

        I. Determine whether the node demo program (RMDMO1) has been
           installed in the system image.  If it has not, proceed to
           step 5.

           If it has been installed in the system image, do the 
           following:

                a. When the node is up and running again, log in to
                   the VAX, using the (default) DCL command line
                   interpreter.

                b. Invoke the Network Control Program (NCP and
                   downline load the system image to the node(s).
                   Type:

                   $NCP<ret>
                   NCP>LOAD NODE nodename<ret>

                   where
                                                     Page 15



                   nodename represents the name of the node where
                   you want to run the demo program.

                   As soon as the system image is downline loaded to
                   the node, the Network Control Program (NCP) will
                   display this prompt:

                   NCP>

                   Leave the Network Control Program by typing:

                   NCP>EXIT<ret>

                   and proceed to step 6B.


5. Invoke the MCR command line interpreter and run the program develop-
   ment tool, RMDEVEL, on the RMDMO1 program.  The program development
   tool will compile and task build the RMDMO1 program, install it in
   the system image, and downline load both the system image and the
   demo program to the specified node(s).  Type:

        $MCR<ret>
        >@RMDEVEL<ret>

   A. The program will ask you a few questions.  Respond as directed
      in Section 3.0 of this Note, specifying the node(s) you want to
      use and the default UICs.

   B. During execution, the program development tool will display the
      following error message:

      REM RMDMO1
      VMR--TASK NOT INSTALLED
      DO YOU WANT TO CONTINUE <RET>,EXIT <E>,PAUSE <P>, OR REPEAT <R>:


      In response, type:

      R<ret>

   C. The program development tool will compile and task build the node
      demo program, install it in the system image, and then downline
      both the system image and the demo program to the specified 
      node(s).  When it has completed all of these tasks, it will 
      display this message:

      End of procedure

   
      The LABSTATION system image and RMDMO1, the node demo program,
      are now loaded on the node.

      RMDMO1 will begin data collection as soon as it is activated
                                                     Page 16


      by RMDEMO1, the host demo program.  To start running the host
      demo program, log off the VAX momentarily and then log on 
      again, this time using the (default) DCL command line interpreter.


6. A. Access the LABSTATION system disk and UIC. Type:

        $ASN DR0:[3,64]=SYS$LS23<ret>
        $SET DEF SYS$LS23<ret>

        where

        DR0: represents an RK07 disk.  If your LABSTATION system is
        stored on another type of device, enter that device name and
        number.
        [3,64] represents the (default) LABSTATION UIC number.
        SYS$LS23 represents the LABSTATION system UIC name.


    B. The RMDMO1 program should now be ready to collect data at the
       node(s).  To run the RMDMO1 program, you must activate the
       host demo program.  If the host demo program has 
       already been compiled and linked,
       proceed to step 9.  If the host demo program has not been 
       compiled and linked, proceed to step 8.


7. Compile and link RMDEMO1, the host demo program.  Type:

   $FOR RMDEMO1<ret>
   $LINK RMDEMO1<ret>


8. To run the demo program on the host, type:

   $RUN RMDEMO1<ret>


   This program will now automatically activate the node program, 
   which will begin data collection.  The host program will manage
   the transaction and will store the data on a VAX disk file.


                        END
========> [VAX83B.NRLSSD]AAAREADME.TXT;8 <========


Programs in this directory were submitted by the Space Science Division
of the Naval Research Laboratory.  This submission completely replaces
the corresponding fall, 1982 symposium tape entry.

1.0 MECHANIC -  This detached process lowers the priority of interactive
                processes which accumulate mass quantities of CPU time.
                It is intended to persecute users who run compute bound
                jobs interactively, rather than submitting them as batch
                jobs.

                The way we use it, it executes once a minute and lowers
                the priority to 3 after 10 minutes of CPU time have been
                accumulated, and to 2 after 20 minutes of CPU time.
                Processes with a SYSTEM UIC are not attacked. Processes
                which have a priority greater than 5 are also not attacked
                (If a process has an abnormally high priority, it must
                be for a reason; moreover this test preserves the priority
                of the print symbiont, who occasionally assumes a user UIC).
                The execution frequency can be changed by modifying
                MECHANIC.COM and the CPU time thresholds and priorities
                can be changed by modifying MECHANIC.FOR.

                To install the MECHANIC, copy MECHANIC.COM and MECHANIC.EXE
                to some directory which has the logical name LOGICAL, for
                instance, and then change the command in MECHANIC.COM which
                runs the MECHANIC to: $ RUN LOGICAL:MECHANIC.EXE. Then,
                put the following command in SYS$MANAGER:SYSTARTUP.COM:
                $ @LOGICAL:MECHANIC.COM

2.0 FINDUIC -   This is a modified version of a program originally written
                by Tim Miles of TRIUMF and submitted under [VAX81B.FINDUIC].
                FINDUIC searches a disk for all files owned by a specified
                UIC. This version provides a 2 column output (file_spec and
                file size) sorted by file_spec. The file_spec includes the
                directory. FINDUIC calls the subroutine FSPEC, which is
                included.

                To install FINDUIC, copy FINDUIC.EXE to SYS$SYSTEM, for
                instance, and define a global symbol similiar to:
                $ FIND*UIC == "$SYS$SYSTEM:FINDUIC"

                To use FINDUIC:
                $ FIND DRA1:[g,m]/OUTPUT=ALLFILES.LIS   !for example
                If [g,m] is not specified, the current uic is used.
                If /OUTPUT is not specified, output is to SYS$OUTPUT

3.0 BIGFILES -  This program is a modified version of FINDUIC which searches
                for the 50 largest files on a disk. The parameter, 50, can be
                changed by changing a parameter statement in BIGFILES.MAR.
                BIGFILES provides a 3 column output (file size, owner, and
                file_spec) which is sorted in descending order of file size.
                The file_spec includes the directory. BIGFILES calls the
                subroutine FSPEC, which is included.

                To install BIGFILES, copy BIGFILES.EXE to SYS$SYSTEM, for
                                                      Page 2


                instance, and define a global symbol similiar to:
                $ BIG*FILES == "$SYS$SYSTEM:BIGFILES"

                To use BIGFILES:
                $ BIG DRA1:/OUTPUT=DRA1BIG.LIS          !for example
                If /OUTPUT is not specified, output is to SYS$OUTPUT

4.0 FID2FSPEC - This is a DCL command procedure used to convert a File
                ID (FID) to a file_spec, including the directory. It
                runs the image TFID2FSPC, which calls the subroutine
                FID2FSPEC, which calls the subroutine FSPEC. TFID2FSPC
                and the subroutines are all included.

                To install FID2FSPEC, copy FID2FSPEC.COM and TFID2FSPC.EXE
                to some directory which has the logical name LOGICAL, for
                instance, and then modify the command in FID2FSPEC.COM which
                runs TFID2FSPC to: $ RUN LOGICAL:TFID2FSP
                Define a global symbol similiar to:
                $ FID*2FSPEC == "@LOGICAL:FID2FSPEC"

                To use FID2FSPEC:
                $ FID DRA1: (514,92,0)                  !for example
                The corresponding file specification is output to SYS$OUTPUT.

Questions about the use of these programs may be referred to:

                Tom Chewning
                Naval Research Laboratory
                Space Science Division
                Code 4105
                Washington, D.C. 20375
                202-767-2651                            
========> [VAX83B.NSWC]AAAREADME.TXT;3 <========





    [VAX83A.NSWC]AAAREADME.TXT



     1. MIRACLE MESSAGE PROGRAM
     --------------------------


        Prints specified text  in  large  letters  (capitals  are  2.7
        inches tall), four rows at a time, vertically 'down the page'.
        Spacing  is  proportional;  characters  are even overlapped to 
        equalize white space (e.g. the '4' in '74' is tucked under the
        '7').  Vertical and Italic Roman  fonts  are  available.   For 
        proper  proportions, the printer must be set to print at eight
        lines per inch.  Additional formats  are  available  on  LA120 
        DECwriters.


        Submitted by:  ALAN L. ZIRKLE     NAVAL SURFACE WEAPONS CENTER
                                          CODE K105
                                          DAHLGREN, VIRGINIA  22448



        To see an example, print MMSAMPLE.LIS  at eight lines per inch
        with /NOFEED.
        

        For further information, see MIRACLE.DOC.



     2. MONITOR.COM
     --------------


        Simplifies running of the DCL MONITOR command. Provides a menu
        display and simplified invocation of the various MONITOR  dis-
        plays.   Contains  screen-formatting escape sequences specific
        to VT100-compatible terminals. The procedure's default MONITOR
        display (currently PROCESSES/TOPCPU) can be changed, if desir-
        ed.  This originally came from DEC Educational Services, Wash-
        ington, D.C.

        Suggested usage:

                $ MON*ITOR == "@[VAX83A.NSWC]MONITOR"   ! in LOGIN.COM

                $ MON                                   ! to use it

========> [VAX83B.OSUCHENG]AAAREADME.TXT;1 <========


     [VAX83A.OSUCHENG]AAAREADME.TXT



                                KRIS LAKSHMANAN
                       Department of Chemical Engineering
                             Ohio State University
                                140 W 19 Avenue
                              Columbus, Ohio 43210
                          614 422-7906 or 614 422-6591



     1.  BATTLESHIP:  Battleship war game with graphics for Tektronix  type
         terminals.   This  particular  version  of  the program uses VT100
         terminal retrofitted  with  Digitial  Engineering  VT640  graphics
         processor board.

     2.  BLACKJACK:  The official blackjack game for 1 player  against  the
         computer.   Program  keeps  track of the statistics of players and
         their  monetary  situations.   This  program  calls   USERNAME.MAR
         routine to get Username string.

     3.  FLOPPY:  Command procedure utility to use floppy disks.  Procedure
         copies  files back and forth from user disk to floppy, deletes and
         gives disk usage statistics.  This procedure is  very  useful  for
         novice VMS users and occasional users of floppy disks.

     4.  GRADING PROGRAMS:  This consists of two  programs,  INPUT.FOR  and
         GRADE.FOR,  for  recording,  updating,  analyzing  and  tabulating
         students grade for a class of  upto  150  stundents.   Program  is
         totally  interactive  and  structured  for  use  by  users with no
         computer terminal experience.  We have used this program over  the
         last year and a half with good response from the faculty and staff
         as well as students.  Instructions  for  using  this  program  are
         given in INPUT.RNO and GRADE.RNO files.

     5.  MSTRMIND:  The ultimate number guessing  program  MASTERMIND  (The
         source  code of the program is lost in the archives at the time of
         this tape preparation).  You have to guess a 4 digit number within
         ten  tries.   Correct  guesses are flagged with a '+' or '-' sign.
         The '+' sign indicates the number is in correct location  and  '-'
         sign  indicates  the  guessed  number  is  correct  but  in  wrong
         location.  The signs does not point to the  exact  location  of  a
         digit  in  the  number.   Numbers  have to be entered with a space
         between each digit.

     6.  SPIRO:  Graphics program to draw a SPIROGRAPH.  This program draws
         a  spirograph  with  the  given  radii, scale factor and number of
         points.  Needs tektronix type terminals and/or PLOT10 commands  to
         move and draw vectors.

     7.  STARTREK:  This is a short instruction of a good strategy to  play
         and beat the most popular game STARTREK.  This game was originally
         from a DECUS distribution tape a year or so ago.  The  writeup  is
         as  a  result  of  many  lightyears  of intense travel through the
         galaxy.
                                                                          Page 2


     8.  VT640:  List of subroutins for Digital Engineering VT640  graphics
         board  for  VT100  terminals.   This  routines  work  under PLOT10
         graphics and makes use of the  special  features  of  this  board.
         WAIT.FOR routine calls QSUB.MAR routine.

========> [VAX83B.RRC]AAAREADME.TXT;1 <========


*********************************
AAAREADME.TXT for [VAX83A.RRC...]
*********************************

     The submissions in this subtree have been made by Reliance 
Electric Company.  The contents are hereby released to the public 
domain.  No warranty, express or implied, is provided for this 
software.  Some portions of the software may affect system security or 
performance.  Be sure that you understand what you are adding!

[VAX83A.RRC.COM]
        This directory contains some command procedures.  They are 
        probably not very useful as they stand, but some of the 
        techniques used may be of interest.

[VAX83A.RRC.COM.BACKUP]
        System backup command procedure and supporting files.

[VAX83A.RRC.DTR32.DISK]
        DTR definitions for tracking disk usage.  The database is 
        updated automatically each week and the results can be plotted
        on any line printer 132 columns wide.  Includes a domain that
        maps the DISKQUOTA file.  Please read all of the warning 
        before using this!

[VAX83A.RRC.DTR32.FUNCTIONS]
        Before you can use any of these DTR things, you must update
        your DTRFND.MAR to include some new functions.  The functions
        added are: 
           FN$STR_TRIM( string )
           FN$OCT( integer )
           FN$OCT_DEC( string )
           FN$HEX_DEC( string )
           FN$GET_SYMBOL( string )
           FN$SET_SYMBOL( string1, string2, integer )
        UPDATE.COM will update a DTR32 V1.3 DTRFND.MAR for you.

[VAX83A.RRC.DTR32.PORTS]
        DTR definitions for tracking ports and associated information.
        The domain is used by SYLOGIN.COM to determine which print 
        queue to use for each terminal.

[VAX83A.RRC.DTR32.TICKLER]
        DTR definitions for a reminder system.  This project was never
        polished.  Some of the tricks are worth checking, e.g., 
        reading selected MAIL messages into domains.  It can show you
        all the things you have to do today, this week, ... .

[VAX83A.RRC.DTR32.USERS]
        DTR definitions for tracking who's who.  Username to full name
        and other useful conversions.  A group of procedures are 
        included that will check to see who has (not) changed their
        password since whenever.  Includes a domain that maps 
        SYSUAF.DAT.  Please read all of the warnings before using this!

                                                      Page 2


[VAX83A.RRC.VT100]
        A daemon that clears unused VT100 screens.  An simple example 
        of MACRO programming, and a useful utility.  A companion 
        utility can send a time delay through a mailbox requesting that
        CLEAR hold off for a time.  This allows broadcast messages to
        remain visible as long as desired.

Seth Stern
Reliance Electric Company
RRC-1
24703 Euclid Avenue
Cleveland, Ohio   44117
(216) 266-6721
========> [VAX83B.RTDIR]AAAREADME.TXT;3 <========     This directory contains the index files from the RT SIG  SymposiaTapes.   See  README.DOC  for more information.  NOTE:  The .DIR fileshave been renamed .LIS.========> [VAX83B.SCT]AAAREADME.TXT;1 <========


        Systems Control Technology ... (415) 494-2233
        1801 Page Mill Rd.
        Palo Alto, Ca. 94303
        Mike Liveright
        Jill Josselyn

        (1) *********   W O R D   *********

        This is an interactive spelling correction program. The
dictionary files are indexed isam files, 20 of them,  all beginning with
'WORDS.L##'. They have been created  from a source word file using the
program WORDMAKE. The necessary object modules for program WORD are
included  here and listed in the link command file, WORDLNK.COM. More
information is available to the user by typing a '?'. "Help" is
available by typing '??'. 

        Note.. This is an "improved" version of a program that was put 
on the Fall 1982 DECUS tape by SCT (or) SCI. The Improvement is that 
this program should permit interactive input and output so that a file 
can be corrected on the fly rather than by a post pass editor.

        (2) **********  SEDIT.APL ***********

        This is an APL work space that permits the APL user to edit a
function by the standard VAX editors. There is a problem in that when 
the function can not, after editing, be re-formatted into a legal APL 
function, then it does not fully recover.

        This was developed by Strat Jaquette.

        To use this, Load the work space, and then enter the command:

        EDIT 'FunName' [cr]     .. For the SOS EDITOR

                                or

        EDT 'FunName' [cr]      .. For the EDT EDITOR

        (3) *********** APL.HLB ****************

        This is the start of an APL help library that is primarly to be 
used to assist in the use of DEC VAX-11 APL from ascii terminals. I 
define a symbol, e.g. QAPL, to point to HELP/..., so that the APL user
can enter:

        )PUSH QAPL

And be in the help file to get information about a specific operation.
This is at an early stage, and incomplete, but if DEC does not provide 
such a HELP facility, then I expect to expand it, or have some other 
user expand it by the next DECUS>
========> [VAX83B.SOFTQUOTA]AAAREADME.TXT;320 <========


      SOFTQUOTA - A Disk Space Management Utility

        Submitted by:   Marty Adkins
                        VAX Support Group
                        Westinghouse Electric Corp
                        P.O. Box 746   MS 1615
                        Baltimore, Md.  21203

        Presented at Spring 83 DECUS Symposium in St. Louis


     This program is designed to be a work-around for the "hard" quota
     limit imposed by DEC's DISKQUOTA implementation.  SOFTQUOTA allows
     a user to have a large working space during a working session, while
     keeping the residual disk usage at a minimum.  An ISAM data file is
     used in this regard ([000000]SOFTQUOTA.DAT).  A utility named SOFTDB
     is provided for the maintenance of this data base.

        For more information, see SOFTQUOTA.HLP and SOFTDB.HLP
========> [VAX83B.STRATEGIC]AAAREADME.TXT;1 <========


   This submission contains the update to an SD program which was previously
submitted.  It now has full support for Version 3 features such as 
concealed devices and rooted directories.  It also contains two network
programs to allow fuller control over user passwords in a network. It also
contains a program which will take as input a Logical Block Number (LBN)
and tell you which file the block is in.

        Submitted by:
        Wendy Koenig
        Strategic Information
        80 Blanchard St.
        Burlington, Mass 01803
        617-273-5500
========> [VAX83B.STRATEGIC.NEWPAS]AAAREADME.TXT;1 <========


This directory contains NETSPEC and NETPAS, two network utilities to control
the use of passwords over DECNET. NETSPEC creates logical names for a 
node specifications with passwords so they can be used without explicitly
typing a password on your terminal or in a command procedure. NETPAS lets you
change passwords at remote nodes. The help files are NETSPEC.MEM and 
NETPAS.MEM.  The following files must exist in SYS$SYSTEM:
        NETSPEC.EXE  NETPAS.EXE  SETPAS.EXE  XXXSETPAS.COM

and the symbols
        NETSPEC :== $NETSPEC 
and
        NETPAS :== $NETPAS
must be established.
========> [VAX83B.STRATEGIC.SD]AAAREADME.TXT;1 <========



        This is an update to a version on an earlier DECUS tape.  The earlier 
version was missing some files.  SD has since been updated for Version 3
of VMS and is able to handle rooted directories, as well as concealed
devices.  Also the previous restriction of needing CMEXEC to change disks has 
been lifted and that call has been replaced by a Run-Time Library routine. 
Also, the file util:su.com is no longer necessary as set uic will now change
the uic without changing the default directory.
Files included:
        SD.EXE -- the image for Version 3
        SD1.COM -- command file to link this
        SD.HLP -- help file to insert into system help library
        SD.MAR,SDACT.MAR,SDTABLE.MAR,COMPARE.B32,SDNUMBS.B32 -- sources
        COMPARE.OBJ,SDNUMBS.OBJ -- for people who don't have bliss compilers
        USEFUL.OLB with sources HTRAN.B32, ERROR.MAR
        WENDY.MLB with source WENDY.MAR for assembling
        SD.OPT -- options file for link
Description:
 This is a program to make "set default" easier, less typing and more flexible.
 SD will check to see if the directory exists before it will let you change 
 your default.  It will handle logical names, all levels of subdirectories,
 and uics. See the help for more details.
Installation:
 SD must be a foreign command (i.e. the symbol SD :== $SD must be defined).
 Privileges: CMKRNL is needed to change uic's.  SD will run installed with 
        this privilege or not (forcing the user to have the privilege in order 
        to be able to change uic's).
 The help file must be installed in the system-wide help file (or else the
 source can be modified to allow the help file to be wherever you want it).
        Submitted by:
        Wendy Koenig
        Strategic Information
        80 Blanchard St.
        Burlington, Mass 01803
        617-273-5500
========> [VAX83B.UNO]AAAREADME.TXT;1 <========


This directory contains DECUS VAX-11/780 submissions from the University 
of Nebraska at Omaha, with two departments contributing:
1)Mathematics & Computer Science
2)Remote Sensing Laboratory
There are several unrelated submissions.

I. FORTRAN CHARACTER INPUT/OUTPUT.
        A package of routines is grouped as CHARIO.FOR.  This includes a
set of 4 integer functions READ1,WRIT1,READM and WRITM for performing character
operations to/from a terminal screen without normal FORTRAN interference.
Each of the routines assigns the needed channel (if that hasn't already been
done), and performs the requested information transfer.  The routines are
coded so that they could easily be added to a system-library.

II. XEQ command procedure.
        Our students had frequent requests to generate a compile, link and
execution record for their run of a single-file source program for grading
purposes.  This .com procedure provides users with a single command  XEQ
to compile, link, execute and print (options provided) their programs.
See XEQ.DOC for installation notes.

III. REGIS to/from CALCOMP and HOUSTON INSTRUMENTS FORTRAN Plotting Library
developed at UNO Remote Sensing Applications Laboratory.
        CAL.FOR is a library of subroutines to make a CALCOMP dependent program
compatible with REGIS graphics.  The program CALCOMP.FOR is an example of the 
use of these subroutines.
        HILIB.FOR are similar routines for the HOUSTON INSTRUMENTS DMP SERIES
Plotters.  HI.FOR is a demonstration program for the HILIB routines. 

IV. An RJE command procedure.
        We were unhappy with the "naked" RJE procedure that accompanies the
DEC 2780/3780 emulator package, and developed several of our own command 
procedures to "improve" its function.  In a later DECUS, we expect to provide
a further improved .com procedure with user-notification upon file-arrival.


========> [VAX83B.USERS]AAAREADME.TXT;2 <========     This directory contains files to build a  utility  called  USERS.USERS enables a non-privileged user to find a username to send MAIL toif he knows a string contained in either the  username  or  the  ownerfield of the user authorization file.========> [VAX83B.UTEXAS]AAAREADME.TXT;1 <========


                               Submissions from:
                               Computation Center
                       The University of Texas at Austin
                              Austin, Texas 78712


                      Coordinated by:  Thomas J. Linscomb



          This  submission  contains  three  subdirectories  which  include
     programs  for  performing disk charging (accounting), modifications to
     the DEC PDP-11 debugging tools for the KMC-11 (KMCDA and KMCLDR)  that
     allow  them to run on a VAX, and a command file for easily setting the
     default directory.


     Directories-

     [UTEXAS.DSKCHG]     Programs for performing disk charging.

     [UTEXAS.KMC11]      Modifications to DEC PDP-11  KMC-11  debugger  and
                         loader to run on VAX.

     [UTEXAS.SETDEF]     Set default  directory  command  file  for  moving
                         around quickly.
========> [VAX83B.UTEXAS.DSKCHG]AAAREADME.TXT;1 <========


     Submitted by:       Thomas J.  Linscomb
                         Computation Center
                         The University of Texas at Austin
                         Austin, Texas 78712
                         (512) 471-3241


          This submission contains two programs and  a  command  file  that
     help facilitate billing for disk usage.

          Program DSKCHG will make entries  into  the  accounting  file  by
     reading  in  DISKQUOTA and AUTHORIZE listing files and matching UIC'S.
     The accounting record includes the User Name, Account, Uic, disk usage
     and permanent quota.  Additional documentation is found in DSKCHG.DOC.

          The second program, QUOTA will take a binary file with  the  USER
     accounting  records  and  produce  a  listing  file of the disk usage.
     QUOTA.DOC includes the documentation for this program.
========> [VAX83B.UTEXAS.KMC11]AAAREADME.TXT;1 <========


     Submitted by:       Thomas J.  Linscomb
                         Computation Center
                         The University of Texas at Austin
                         Austin, Texas 78712
                         (512) 471-3241


          This submission contains programs and patches which are  used  to
     run  the  PDP-11  version  of the KMC-11 debugging tools.  The patches
     included are for the DEC proprietary programs KMCLDR and  KMCDA  which
     are  designed  for  loading and debugging KMC-11 software on a PDP-11.
     By utilizing the RESCOM (resident common) and global section  features
     on  a  VAX/VMS  system  these  two  compatibility  mode  programs will
     correctly map to the I/O pages and perform identically as on a PDP-11.

          The following KMC-11 related files are also included:

     1.  Command files for assembling and linking KMCLDR and KMCDA on a
         VAX.

     2.  A command file for assembling and linking KMC-11 source files.

     3.  A TECO macro that will clean up KMC-11 listing files.

     4.  A short KMC-11 program that will echo input on a DR-11K.


          Additional documentation can be found in the file VAXKMC.DOC.
========> [VAX83B.UTEXAS.SETDEF]AAAREADME.TXT;1 <========


     Submitted by:       Philip Watson
                         Computation Center
                         The University of Texas at Austin
                         Austin, Texas 78712
                         (512) 471-3241



          SETDEF.COM is a very useful command file for quickly changing the
     default directory.  It provides many options which will allow:

     1.  Showing the current default directory ("@setdef ")

     2.  Changing to a subdirectory of current directory
         ("@setdef >subdir")

     3.  Changing to SYS$LOGIN directory ("@setdef ;")

     4.  Changing to a subdirectory of SYS$LOGIN directory
         ("@setdef ;subdir")

     5.  Changing to the next highest directory ("@setdef <")

     6.  Changing to top level of current default ("@setdef .")

     7.  Changing to subdirectory of the top level current default
         ("@setdef .subdir")

     8.  Changing default to specified directory, where directory given may
         be a logical name ("@setdef herdir")

     9.  Saving current default in logical name sd$default ("@setdef (")

    10.  Restoring default from logical name sd$default ("@setdef )")

    11.  Showing subdirectories of current default ("@setdef >")

    12.  Typing help for SETDEF.COM ("@setdef ?")


          By defining the symbol "SD" to execute SETDEF.COM (i.e.  SD :==
     @SETDEF) all commands can be shortened even futher.
========> [VAX83B.VAXNET]AAAREADME.TXT;1 <========


                          Free software BY
                Project Software & Development, Inc.

This software is furnished for free and may be used and  copied as
desired. This software or  any  other copies  thereof may be provided
or otherwise made available to any other person.  No title to and
ownership of  the  software  is  hereby transferred or allowed. 

The information in this software is subject to change  without  notice
and  should  not  be  construed  as  a commitment by PROJECT SOFTWARE
AND DEVELOPMENT, INC.

PROJECT SOFTWARE assumes no responsibility for the use or  reliability  
of this software on any equipment whatsoever.

        Project Software & Development, Inc.
        14 Story St.
        Cambridge, Ma. 02138
        617-661-1444

        Program:        VAXNET, SNDRCV, & REF
        Author:         Robin Miller
        Date:           Spring 1983

Description:

VAXNET is a program used to transfer ASCII files over an asynchronous commun-
ications line between two computers.  The progams supplied in this directory
allow for file transmisssion between VAX and VAX or between VAX and RSX11M.
File transmission with other system types such as IBM, EASYLINK, APPLE, etc.
can be accomplished via the log file capability and the DUMP command.  This
program only transmits ASCII files.  Two programs called F2T and T2F allow
files of either 256 or 512 byte fixed length records to be converted into 64
byte ASCII records, transferred to the other computer, and then converted back
to the fixed length records.  Hopefully by the fall DECUS, this won't be
necessary as I'm working on transparent file transmission.

This is my third submission of VAXNET.  From the many phone calls I get
regarding VAXNET, I'm happy to see so many people using it.  I must apologize
for not getting it into the DECUS library; I'll be completing a submittal
form for this release.  This version has several enahancements which make it
much easier to use.  If you have an DEC DF03 or RIXON R212 autodial modem,
you'll love it.  I've also designed VAXNET so that other types of autodial
modems can be easily added.  Enhancements include:

  o  DCL symbols can be defined to answer all the startup questions.  The
     help file topic SYMBOLS describes which symbols to define.  Also a
     template file for defining symbols is available called TEMPLATE.COM.
     Although global symbols can be used, I like using the local symbols
     as shown in the template file.  I usually have one startup command
     file for each remote system I dial into.

  o  VAXNET now supports two types of autodial modems as described above.
     It supports the DEC DF03 and the RIXON R212 autodial modems.  There
     are a number of commands to use with autodial modems as well.  You
                                                      Page 2


     can DIAL, REDIAL, HANGUP, and change modem type with MODEM.  There
     is also an autologin capability which can be used with autodial
     modems (see HELP VAXNET AUTO_LOGIN).  By the fall DECUS, I hope to
     have a SCRIPT command finished to automatically drive the remote
     terminal session from a script file.  This is all aimed at being to
     submit jobs to batch, autodial a remote SYSTEM, and perform some
     function such as sending a TELEX to EASYLINK.

  o  Several problems using VAXNET in interactive mode have been fixed.
     VAXNET also detects when the remote port has the alternate typeahead
     buffer enabled.  If running at high baud rates (2400 baud or more),
     I suggest the alternate typeahead buffer be enabled to prevent
     software data overrun problems (these occur if the typeahead buffer
     is overflowed).  The default alternate typeahead buffer size is 200
     bytes with the alarm set at 64 bytes.  File SETUP.MAI explains how
     to enable the alternate typeahead buffer and set the port /MODEM if
     using a modem.

  o  All startup questions can now be changed at the VAXNET command level
     (Vaxnet> prompt).  This is very useful for changing system types, the
     remote baud rate, or switching to a different remote port.  You can
     type "HELP VAXNET SUMMARY" to get a list of all commands available
     at the VAXNET command prompt.

  o  New support has recently been added to parse the GET, SEND, and DUMP
     commands to allow the VAX and REMOTE file names on the same line.  I
     haven't had time to fully test this but I think it works.  The format
     for each command is:

        GET remote_filename vax_filename
        SEND vax_filename remote_filename
        DUMP vax_filename vax_filename1 vax_filename2
 
   o  There is now a program called REF (written in PDP-11 macro so it can
      be used with RSXNET on RSX-11M) which is used to reformat the VAXNET
      log files.  When exiting VAXNET, if a log file is being closed, the
      command line "MCR REF log_filename" is automatically executed to
      reformat the log file.  The reformat program then creates a file
      with the same log file name with the next highest version number as
      the reformatted file.

      The REF program also has several other uses such as converting print
      file format, embedded carriage control, and FORTRAN carrriage control
      to implied carriage control so these files be transmitted between the
      VAXNET and SNDRCV programs.

   o  If using a hardcopy terminal, VAXNET doesn't output the record number
      when transmitting a file with SNDRCV.  Actually, the file transfer is
      much faster if this isn't done.

   o  The DUMP command now displays the echo from the remote system (if any).
      This was added to detect transmission errors when dumping files.

   o  Several other useful commands such as STATUS, NODECHO, etc. are also
      available.  See the help file for a complete list of commands.
                                                      Page 3



   o  Two other files you may want to read are:  INTRO.MAI and QUESTIONS.MAI
      These provide some additional documentation.


Problems:

   Software overrun errors will occur at high baud rates unless the alternate
   typeahead buffer is enabled for the remote port.


Build Procedures:

The executables are available and are ready to go when you are.  If you should
need to rebuild it, the following command files are available:

        VAXNET.COM      Compiles all the FORTRAN modules.
        VAXNETLBR.COM   Generates the VAXNET object module library.
        VAXNETBLD.COM   Generates the VAXNET executable via LINK.
        COMP.COM        This command file is used to compile and replace
                        individual modules in the library.

        [VAXNET.SNDRCV] Contains the files for the VAX and RSX SNDRCV programs.
        [VAXNET.RSXNET] Contains the files for the RSXNET program.  This is
                        a subset of the VAXNET program which runs on RSX-11M.
        [VAXNET.REF]    Contains the files for the reformatting program.
========> [VAX83B.VAXNET.REF]AAAREADME.TXT;1 <========


Project Software & Development, Inc.
14 Story St.
Cambridge, Ma. 02138
617-661-1444

Title:          REF
Author:         Gary N. Larsen & Robin Miller
Date:           April 29, 1983

Description:

        REFormat is a program used to convert input files into variable length
output files with implied carriage control. REFormat will also do ascii
and ebcdic conversions, strip null characters and delete sequences, and break
records on escape sequences.

Command line format:

        input_file/switches output_file/switches

   Where switches are:

     /ASCII     - convert input file from ascii to ebcdic.
     /EBCDIC    - convert input file from ebcdic to ascii.
     /VFU       - input file contains line printer Vertical Format Control.
     /TOTAL     - output number of records and bytes written to output file.
     /BACK (D)  - remove the delete sequence from input file.
     /ESC  (D)  - break output records on cursor positioning escape sequences.
     /NAME (D)  - output the name of the reformatted output file.

   To negate a switch use a '-' or 'NO'.

========> [VAX83B.VAXNET.RSXNET]AAAREADME.TXT;1 <========


        Project Software & Development, Inc.
        14 Story St.
        Cambridge, Ma. 02138
        617-661-1444

        Title:          RSXNET
        Author:         Robin Miller & Gary Larsen
        Date:           Spring 1983

Description:

RSXNET is a program which allows asynchronous communcations between two
computers (systems).  Communications can be either directly between the
computers using a synchronous null modem patch  cable (see "HELP PATCH"
for the wiring diagram), or over a dialup line (modem).  Communications
with the remote system (the system you want to talk to) is accomplished
using a second port (asynchronous line) on the local system.

RSXNET is a sub-set of the VAXNET program. I've enclosed RSXNET on this
VAX submission because I've had several requests from people using VAXNET
wanting an RSX-11M equivalent since they have both RSX-11M and VMS systems.

This program operates nearly the same as VAXNET except it uses a file
called RSXNET.INI to automatically answer the startup questions.  It does
not have autodial or autologin support and will not run on VMS.
========> [VAX83B.VAXNET.SNDRCV]AAAREADME.TXT;1 <========


                          Free software BY
                Project Software & Development, Inc.

This software is furnished for free and may be used and  copied as
desired. This software or  any  other copies  thereof may be provided
or otherwise made available to any other person.  No title to and
ownership of  the  software  is  hereby transferred or allowed. 

The information in this software is subject to change  without  notice
and  should  not  be  construed  as  a commitment by PROJECT SOFTWARE
AND DEVELOPMENT, INC.

PROJECT SOFTWARE assumes no responsibility for the use or  reliability  
of this software on any equipment whatsoever.

        Project Software & Development, Inc.
        14 Story St.
        Cambridge, Ma. 02138
        617-661-1444

        Program:        SNDRCV, F2T, & T2F
        Author:         Robin Miller
        Date:           Spring 1983

Description:

These programs are used with the VAXNET and/or RSXNET programs to perform
ASCII file transmission between two VAX's or between VAX and RSX-11M.  Two
programs called F2T and T2F allow files of either 256 or 512 byte fixed length
records to be converted into 64 byte ASCII records, transferred to the other
computer, and then converted back to the fixed length records.
