
========> [VAX91B.4GL_SIG]AAAREADME.TXT;1 <========




    This is the 4GL SIG collection for Fall 1991.  For the VAX/L&T
 SIG tapes, only new entries (those not appearing on previous tape
 collections) are included here.

[4GL_SIG.DATATRIEVE.PLOTA]

    Two new Datatrieve plots to do histogram data as an X-Y plot
 rather than the bar charts supplied by DEC, from B. Z. Lederman.

[4GL_SIG.GENERAL.NEWSLETTERS.*]

    New copies of the "Wombat Examiner and 4GL Dispatch", the
 SIG's newsletter, in electronic format (DCA, Interleaf, and ASCII
 text) from Steve Cordiviola.

[4GL_SIG.RALLY.READ_RALLY]

    I have included V00511, "READ_RALLY", a VAX SCAN program that
 converts a Rally report into VAX DOCUMENT input.  It has some
 bugs, but may still be of interest.
  
[4GL_SIG.RALLY.VISITATION]

    A DCL command procedure which processes an application report
 to extract the visitation order of the fields in a form.  It then
 re-organizes the report to put the groups in the visitation
 order.  From B. Z. Lederman.

 Bart Z. Lederman
 4GL SIG Library Representative


========> [VAX91B.ALLIED]AAAREADME.TXT;1 <========



                              Martin D. Lucas
                          Allied Electronics, Inc.
                             7410 Pebble Drive
                            Fort Worth, TX 76118
                              (817) 595-3500

UUCP: lucas@fallout.UUCP


        Included in my submission are three directories.  The following is
a brief description of the directories and their contents.  As with any
public domain software, please examine it thoroughly before use.  All of the
routines included here are pretty straight forward.  I do not claim any
responsibiliy for their use or misuse.  I always recompile, if possible, ANY
public domain software.  Use at your own risk.  Object code has been supplied.
Although the executables supplied may run, the applications should be linked
using the option files provided.


BASIC.DIR


        Contains a small program called INQUIRE_PRINTER_STATUS.  The program
        obtains information from a VT series terminal about an attached
        printer.


DECFORMS.DIR


        Contains an example program that utilizes broadcast trapping, and
        dual 'sessions' to a particular FORM file.  A mailbox is used in
        conjunction with an AST that sends the broadcast message to the
        form.  Broadcast messages are displayed in the message area of the
        application.  NOTE: You must at least have runtime for DECFORMS
        installed in order to run this application.  I hope this is of
        use to someone.  It certainly took lots of trial and error to get
        this working. (Coming from someone that has been trying to learn
        DECFORMS.)


DECWINDOWS.DIR

        Contains two programs that are similar in nature:

        DEBUG_DISPLAY.COM
                 Have you ever wanted to have a separate terminal window
        to use with DEBUG...instead of using the DECWINDOWS interface to
        DEBUG?  This routine will create a DECTERM window and allocate the
        terminal device for use with debug.  The terminal assigned to your
        interacive login will be used for your application.  This is extremely
        useful when developing DECFORMS, SMG, or other applications that
        actively use a terminal.  This program also uses a unique customization
        file for the window...so that screen coordinates and other settings
        can be saved and used for this window.

                                                                Page 2




        DECTERM.BAS

                This program creates an interactive DECTERM window.  A very
        similar program to others I've seen.  This one employs the use of
        a customization file unique to the node that the process is to be
        created on.


        CREATE_REMOTE.COM

                This command procedure is an example that can be used in
        a clustered environment to create a DECTERM.  I submit it on three
        other nodes to get interactive logins on my terminal.  When added
        to the autostart on the SESSION MANAGER, this can be a quick and
        easy way to establish DECTERM windows on remote nodes.

========> [VAX91B.ANTIVIRUS]AAAREADME.TXT;1 <========



This tree contains antiviral programs which have appeared for
IBM PC (or similar MSDOS engines), for Amiga, and for Macintosh
computers. In addition the top level contains a list of sites
archiving this software. (These programs obtained from antiviral
sites by Glenn Everhart).

========> [VAX91B.ATG]AAAREADME.TXT;1 <========



Submission from:

Nick de Smith                    Voice:   +44 892 511000
Applied Telematics Group Ltd     PSImail: +234213300154::NICK
Telematics House                 Fax:     +44 892 515402 (G3)
Tunbridge Wells, Kent            Telex:   95398 TELEMA G (UK)
TN1 1DJ, England                 Internet: NICK@NCDLAB.ULCC.AC.UK
Janet:  NICK@UK.AC.ULCC.NCDLAB   VMSSERV:  VMSSERV@NCDLAB.ULCC.AC.UK


All the files in this directory tree are supplied completely without warranty of
any kind. Whilst all the code is believed to be fully functional, and to work as
described, niether ATG Ltd. or Nick de Smith can accept any reponsibility for
the consequences of using the code contained herein. Having said that, I'm
always interested in (constructive) feedback, so please let me know if there are
any problems with any of it or if you have added enhancements.


[.CRC]          (new)
Fast CRC generation code. Between 50% and 300% faster that using LIB$CRC or the
macro CRC instruction for short buffers on those VAXen that emulate CRC (which
is almost all). Speeds unknown (private) CRCs by another 50% or more. In
MACRO32, all documentation in the source.

[.MWAIT]        (new)
Analyse cause of RWAST, RWMBX and other wait states. This is a tool that I
should have written *years* ago. It analyses the causes of wait states in fine
detail, saving a lot of hard slog with SDA and manuals. Easy to understand
messages are given, and the help file documents all but the most pathalogical
cases of any system wait state. In MACRO32, MWAIT requires CMEXEC to run.
Includes full documentation. A wonderful tool if you are having problems with
MWAITs/RWAST etc.

[.NICE]         (new)
NICE_PROGRAM.C - an example (in C) of a program that uses the NICE (Network
Information and Control Exchange) protocol to talk to DECnet and other DEC
networking products. NICE is on the way out, being replaced by SNMP (Simple
Network Management Protocol) and CMIP (Common Management Interchange Protocol),
but NICE is not bad. A generic command and reponse parser is included to make it
easy to write your own callable "NCP" routines. Updated since the last release.

[.PTD]          (new)
Access port name support for FT devices. The FTDRIVER as supplied by DEC upto
and including VMS V5.5 does not support the setting of the access port name for
an FTAn: (pseudo-terminal) device. This code supports the setting of access port
names, and allow a process running on an FT device to determine the PID of the
master process of the device creator.
The code is implemeted as a VMS executive shareable image (as is most of VMS),
and is thus a useful example of how to merge code with VMS.
This code has been checked by DEC, and is placed on this tape at DEC's request
but without any warranty from them.

[.UTILS]
    MONMODE.COM         (updated)
        A "MONITOR SMP" implementation written entirely in DCL - it uses no

                                                                Page 2


        images or code other than DCL. Rather fun, if you like that sort of
        thing. Its certainly an example of extraordinary DCL! Updated since last
        release to correct handling of non-monotonically increasing CPU numbers
        and processor operational modes.

    HOW_INVOKED.C       (new)
        A short piece of C that determines how an image was invoked (via a CLI
        verb, MCR, a foreign command or RUN). It uses the undocumented SYS$CLI
        call.

    SHOW_MEMORY.C       (new)
        A callable version of SHOW MEMORY in C which also returns other
        information about memory configuration on your host. Needs CMEXEC, but
        uses the ONLY reliable method of determining memory sizes.

    SHOW_MEMORY.COM     (new)
        A DCL implementation of SHOW_MEMORY.C that works for everything except
        11/780 multiport shared memory. Callable from any DCL routine. Uses no
        images (its all in DCL).

    TIME_STAMP.C        (new)
        Example code showing a technique for determining intervals very
        accurately on VMS without the (considerable) overhead of using $GETTIM
        and $NUMTIM etc. If you are doing comms or real-time work, especially
        in an SMP environment, timestamping lots of packets can become VERY
        expensive (especially using FDDI). This method is as/more accurate and
        certainly a tremendous amount more efficient. Only usable for intervals
        up to 497 (and a bit) days.

[.XE]   (updated)
This is a tool that provides a "MONITOR ETHERNET" type display of activity on
any DEC compliant ethernet interface on a system. A range of new features are
supported and a number of bugs have been fixed. Very useful for monitoring
network loading.

[end]

========> [VAX91B.BZL]AAAREADME.TXT;1 <========




    This directory holds my personal contributions to the SIG
 tape.

[.RDB_TO_RTF] contains a program and procedure to document an Rdb
 database: it writes an RTF file which contains revisable text for
 many PC and Macintosh word processing programs.

[.TRIM] contains an improved version of the program which can do
 lots of processing on a file (remove leading and trailing
 characters, lines, do replacements, remove blank lines, and
 more).  It can turn a directory listing into a command procedure
 in one pass.  See the help file for more information.

[.NETWORK] contains procedures which periodically get the counters
 for DECnet / P.S.I. lines: this version stores the data in an Rdb
 database to make analysis easier.

[.FIXED_LENGTH] is a program which converts variable or fixed
 record length files to fixed length files.  You can do things
 like turn BACKUP save sets into files which can be transmitted
 with XMODEM, and put it back in it's original form at the other
 end.  Also good for getting text files down to PCs and
 Macintoshes.

[.COMMANDS] contains some updates to example DCL files (all
 F$GETDVI codes, all F$FILE codes, all entry points in an image,
 etc.)

[.SMG_IN_C contains revisions to my sample programs showing how
 to use SMG calls in the C programming language.

 Bart Z. Lederman
 System Resources Corp.
 Burlington MA


========> [VAX91B.CANADA]AAAREADME.TXT;4 <========



The following are the DECUS Canada submisions

VD3:[VAX91B.CANADA.AKCOUNT]AAAREADME.FIRST;1



                                 AKCOUNT
                     VAX/VMS V4.x ACCOUNTING SOFTWARE

        Version:  August 1986

        Author:   K. Trumbley and M. Serrer,
                  National Research Council of Canada,
                  Ottawa, Ontario, Canada.

        Operating System:  VAX/VMS V4.4

        Source Language:  VAX-11 FORTRAN and VAX-11 MACRO

             The AKCOUNT software has been designed to provide  a
        VAX  computer  installation running V4.x of VMS operating
        system software with all the necessary  accounting  tools
        to charge users for resources used.  The package includes
        all  the  source  code,  associated  help  files, command
        procedures and installation notes.
             The software in SYSTEMS LABORATORY of NRC  has  been
        set  up  as  a  batch  job to execute every Friday night.
        When the  job  runs,  the  information  from  the  system
        accounting  file,  plus  listing files from DISKQUOTA and
        AUTHORIZE are merged  together  and  written  to  a  file
        "SYS$ACCOUNT:AKCOUNT.TOT".  A report generator reads this
        file and creates detailed or summary type printouts.
             The  latest addition to the AKCOUNT software package
        is a repair utility.   This utility  enables  the  system
        manager to repair, (both automatically and interactively)
        and edit records in the AKCOUNT.TOT file.
             This  version  of  the  AKCOUNT  software  has  been
        upgraded from the version submitted to the DECUS Library,
        (Date  submitted  to  DECUS  --  April  1985), to work on
        VMS version 4.x systems.

        Documentation on magnetic media.

                                Ken Trumbley, Martin Serrer
                                 (613) 993-9262
                                National Research Council,
                                Division of Mechanical Engineering,
                                Systems Laboratory, M3,
                                Montreal Road,
                                Ottawa, Ontario
                                K1A 0R6
 
VD3:[VAX91B.CANADA.HP_CALC]AAAREADME.FIRST;1
 


                                                                Page 2


        A scientific calculator for the VAXStation!!

        HP_CALCULATOR is a full-functioned scientific calculator for use
on any VAXStation running VMS.  It has been tested on a VAXStation-II running
VMS version 4.5 and VWS version 3.1, and also on a (monochrome)
VAXStation-2000.  The program was written in VAX "C", but the executable
file should run on any VMS system because the run-time library is now
distributed to everyone.

        The program makes a deliberate attempt to mimic the operation of
the HP10c pocket calculator (exceptions noted below).  This was done so
that ANYONE who was familiar with the real calculator could make use of
the VAXStation version without any manual or training.  Attempts to add
extra keys, alphanumeric display, etc. were avoided.  If these features
are what you require, then use BASIC.

        The current version does not support keystroke programming.  It
should be easy to add this in the future, but I am supposed to do some real
work as well as 'coffee break' programming.  If a key associated with
programming is struck (by mistake or because you don't believe me) the
calculator program will do nothing more dangerous then terminate numeric
data entry, or enable stack lift, or reset the error display, or so on.
Definitions of the terms found in the last sentence can be found in the
manual for the HP10c.

        Now for the good stuff.  To use the calculator you just have to
type RUN HP_CALCULATOR.  The program will create a window which contains the
calculator keys, and another window which will be used as the calculator
display.  Two windows are used so that you can position them independently
anywhere on the screen (also it was also easier to program).  The VAXStation
keyboard is attached the the calculator (more on this in a moment), the
register display(s) are reset, and the program is ready to use. 

        Dan F. Johnston
        Div. of Mechanical Engineering, Bldg M-3
        National Research Council of Canada
        Montreal Road Campus
        Ottawa, Ontario
        CANADA  K1A 0R6
        

VD3:[VAX91B.CANADA.LEADER91]AAAREADME.FIRST;1

========> [LEADER91.BYTLUG.QWATCH]AAAREADME.TXT;1 <========


  This program is used to watch a process' quota usage.  When a valid
  process id specified, the system will display that process' quotas
  along with a few other details such as the process state, I/O counts
  and the image currently being run.

  The program can be built using the MMS description file DESCRIP.MMS.
  A C compiler is required.

  [DECUS Canada Librarian's note: On the VAXstation where I put together

                                                                Page 3


   these submissions, there was no C compiler. So, if you wish to run this
   program, but don't have a C compiler, please ask me. I should be able
   to send you a C-compiled .OBJ or a .EXE file from work. My address is:

        A. Mahendra Rajah
        DECUS Canada VAX Tape Librarian
        Dept of Computing Services
        University of Regina
        Regina, Sask.
        Phone: (306) 585-4496
        e-mail: Mahendra @ Meena.CC.URegina.CA (on Internet) ]

[Librarian note: I have a C compiler and have supplied compiled files
for QWatch. Glenn Everhart.]



========> [LEADER91.DDERRICK.COMS]AAAREADME.TXT;1 <========


    This directory contains several useful utilities in DCL:

    ALLMAIL.COM         -       Runs ALLMAIL.EXE to check for pending ALL-IN-1
                                mail messages. 

    AUTHORIZE.COM       -       Changes default to Sys$System, runs Authorize
                                and changes default back to where we started.

    BIGDIFF.COM         -       DIFFERENCEs between all files in this directory 
                                and another directory specified in P1.
          

    DAYLIGHT_SAVINGS.COM
                        -       sets the time for daylight savings and back again.

    DISKS.COM           -       Shows or watches disk space.

    DQ.COM              -       shows disk quota with totals.

    EPIPE.COM           -       pipe with existing filespec list

    IMS.COM             -       Manages the different inventory files. It looks 
                                almost like All-In-1.


    LPIPE.COM           -       linear pipe

    MAKEMODIFY.COM      -       makes a command file to modify users that have
                                been added to the UAF


    MAKEREMOVE.COM      -       makes a command file to remove users from the UAF

    MEMORY.COM          -       show or watch the "interesting" memory stats


                                                                Page 4


    MENULOGIN.COM       -       Menu for interactive logins.

    NODE.COM            -       converts various forms of decnet node numbers        

    PHN.COM             -       keep track of long distance phone calls          

    PIPE.COM            -       command p1 applied to all files in p2         

    PIPES.COM           -       pipe by search (not directory)        

    PNAME.FOR           -       subroutine returns the username and the length of 
                                the username of the current process
            
    PRIV.COM            -       set command promt to include new privs         

    RECEIVEPRINT.COM    -       network print receiver (see sendprint) 

    SAME.COM            -       This is a difference command that works on sorted files.
                                It will list two files side by side showing the records 
                                that are the same. It gets used a lot in merging UAFs to 
                                form a cluster. Carefull!! it doesn't always get the last 
                                record right
            
    SENDPRINT.COM       -       poorman's DQS. Used with receiveprint.com    

    SORT_US.COM         -       show users sorted by node

    TAPES.COM           -       watch tape drives; like disks.com

    WHERE.COM           -       where are we (or another PID)        

    WORKSET.COM         -       Displays working set information.      

    ZERODISK.COM        -       fully zero outs a disk that is being traded in    


========> [LEADER91.DDERRICK.TPU.ADAM]AAAREADME.TXT;2 <========


   ADAM stands for Assistant for Definition and Modification and  is
   an  extension  to  the  VMS  EVE  editor.  Its purpose is to make
   developing  programs  in  to  the   OCRS   standard   an   easier
   undertaking.   Although  several  of  the  functions are designed
   expressly for the FORTRAN programming environment, ADAM has  been
   developed  with  the  ability  to  apply all but its variable and
   subroutine definition functions to DCL and MACRO code as well.


========> [LEADER91.GOLDLUG]AAAREADME.TXT;5 <========

    Program : COOKIE.MAR

       This program produces a random fortune cookie message.  The messages
       are kept in an indexed file.  COOKIE.MAR calls a program called RAND
       which generates a random number between 1 and the maximum number of

                                                                Page 5


       messages in the COOKIE.DAT file.  The random number is used as a key
       to the indexed file and the record(s) with this key are displayed on
       the terminal.

       The COOKIE.DAT file is an indexed file with a maximum record length
       of 84.  The first 4 bytes are the key and are of the format 0000 to
       9999.  The last 80 bytes are the fortune cookie message.  A sample
       message might look like:

        0020 This is a two line
        0020       fortune cookie message.


    Program : RAND.MAR

       This program uses the date and time as a seed to generate a random
       number between the two values supplied to it.  It is used by
       COOKIE.MAR.


    Program : PASSCHK.MAR

       This program verifies whether a password supplied by a user is
       valid.  It is passed a username and password.  It calls SYS$GETUAI
       to get the hashed password, the hashing algorithm, and the salt for
       that particular username.  It then hashes the supplied password
       using SYS$HASH_PASSWORD, passing it the algorithm and salt.  The two
       hashed  passwords are compared (the one from SYS$GETUAI and the one
       from  SYS$HASH_PWD).  If they are equal the supplied password is
       valid. A value of 1 (success) or 2 (failure) is returned.
        

    Program : TESTPWD.COB

       This is a sample program which calls PASSCHK to verify a password.
       When the program is run a username and password are prompted for.
       They are converted to upper case and passed to PASSCHK.  The return
       code is checked and a message is displayed indicating whether the
       password is valid or not.



INSTALL_SPECIAL.COM  &  MODEM.COM

        There are two unique parts to INSTALL_SPECIAL.COM. 

        It is recommended that if you are going to use these sections of 
        code, that they be run in your SYSTARTUP.COM just so that you can 
        get consistent LTA numbers.

        The first shows how to install an outdialing modem (DF224) onto 
        the network.  It assumes you are installing it onto port LTA9:, and 
        that on the Terminal Server, you have set the port name to 623_5803.
        Once this command procedure has been run, you access the modem using 
        MODEM.COM which checks whether or not someone is dialed out or in on

                                                                Page 6


        the modem, and/or allows you to use the modem appropriately.

        The second portion of INSTALL_SPECIAL.COM shows how to attach an 
        InterMEC Bar Code printer onto your system.  It assumes that you 
        are installing onto port LTA6:, and that the Terminal Server knows
        this port as BAR_TONY.  Once it's there, you have to issue a print 
        command, specifying which print queue, and forms.  You are on your 
        own for the internal formats of the Bar Code Tickets.

PRINT_QUEUE_MANAGER.COM

        Simple command procedure which allows our operations staff to change
        forms on printers.  It takes care of all the more detailed internals.

        We find it convenient to have all our operators define a symbol in
        their LOGIN.COM specifying the name of the printer which we mount
        various type of forms on most of the time.  In our case this is 
        CAM_PRINTER_2.

ABNORMAL_CONDITIONS.COM

        Updated Version.

        Used to report problems, and then go back in and modify the report 
        as new information becomes available.  Some minor changes have been 
        made over last years version.

        Assumptions are that you have a logical defined pointing to where 
        ACRs are to live; and you should have at least a null file called 
        ACR:ACR_SUMMARY.FILE, and the procedure will create another called
        ACR:ACR_SEQUENCE.FILE.  After that, these two are updated by the 
        routine.


========> [LEADER91.NAPLUG.BACKUP]AAAREADME.TXT;4 <========


        The included files comprise a menu interface for a captive 
BACKUP account to be used for unattended system backups. The operator 
has the ability to initialize backup media, and perform daily, weekly or 
monthly backups which will be run in batch at the end of the day, without 
operator intervention. The current configuration will perform daily 
backups to TK50(TK70) and weekly and monthly backups will go to an 
Exabyte.

        The primary prerequisite for this application is the creation of 
a priviledged BACKUP account and modification of the command procedures 
to suit your own installation. This is far from perfect, but it should 
provide some ideas. I would love to see any improvements which might be 
made.


John Hale
NAPLUG


                                                                Page 7


========> [LEADER91.NAPLUG.OPERATOR]AAAREADME.TXT;2 <========


        This saveset comprises a menu driven interface to normal(for us :-))
operator functions. These include the management of user processes, queues,
3780 lines, and plotting. You should probably ignore the plotter and comm
functions, but the rest might prove to be useful (or not :-( ). Most of the
command procedures are documented and hopefully the code is fairly readable.

        Thanks go out to Jeff Daley and Ron Rennick who were responsible for
dreaming up and writing this utility and it's cousin the backup utility.

John Hale
NAPLUG

========> [LEADER91.OMNILUG]AAAREADME.TXT;1 <========


                Paul T's DECUS Library release - VAX/VMS software
                        September 23, 1991
                
        In seperate directories you will find the following programs, in both
executables and source.  They were developed from scratch, with minor
contributions from outside sources ( books ), which are credited in the
source code.  The programs were developed on VAX's that belonged to the
companies I worked for but on my time, and so I'm sure no one would make
any claim to them.  I release them for any use, asking
only that credit be given were it is due, and changes should be noted.

        ZAPPER was developed in VAX BASIC, and TETRIS in VAX C.  I haven't
run ZAPPER much over the last couple of years, but I'm confident it is
reliable.  The documenation for it is fairly clear.  TETRIS is pretty
simple and has been used by a number of different users, and no one
has reported any bugs, so I'm quite confident that it is okay.

        Info about me is:
        
                Paul Thomsen
                School Board Information Technology Branch,
                Ontario Ministry of Education
                8th Floor - 480 University Avenue
                Toronto, Ontario
                M5G 1V2

                (416) 971-4765 (w)
                (416) 821-9872 (h)
                (416) 971-6511 (fax)
                
========> [LEADER91.TRILUG.DIR_STACKS]AAAREADME.TXT;1 <========


Program ID: DIR_STACKS                                             D R A F T

Operating System: VAX/VMS V5.x
Source Language : Cobol v3.4-49

                                                                Page 8


Key Words:  DIRECTORY, STACK, UTILITY, COBOL

Submitted by: Jim McDowall,Board of Education for the City of Windsor
              451 Park Street West P.O. Box 210
              Windsor, Ontario., Canada N9A 6K1 (519)255.3348

Abstract: DIR_STACKS is used to change a process' device & directory default.
          The program will maintain a stack of defaults set and allow the
          user to recall this stack and set default to any of the values
          stored. A maximum of 50 stack positions can be maintained.  The
          user can control the the number of stack positions.
          It will not allow default setting to any device or directory which
          does NOT exist or that the process does not have access to because
          of privilege or protection settings. A process can set default to any
          user's SYS$LOGIN directory providing the process has the correct
          privilege and access to said directory.  System managers can create
          users' SYS$LOGIN directorys if one does not exists without having to
          know the dev:[dir] specification. Knowing the username is all that
          is needed.

   Print DIR_SATCKS.DOC for more details and procedure to install DIR_STACKS.

========> [LEADER91.TRILUG.SCREENCTL]AAAREADME.TXT;2 <========

 Program ID : SCREENCTL.EXE

 Written by : Jim McDowall   (519)255.3348
              Board of Education for the City of Windsor
              451 PArk St. W. Box 210
              Windsor, Ontario
              N9A 6K1

 Function   :This program is used to perform a range of terminal screen
             attributes and characteristics functions. Such things as drawing
             lines, boxes, clearing parts or all of the screen, getting user
             input, and turning on and off the local echo.  Listed on the
             following pages are the various functions performed by this
             program.  Being an executable module, the time required to 
             perform these functions is far less than the time required by a
             DCL command procedure that does the same task.

VD3:[VAX91B.CANADA.LEADER91.BYTLUG]AAAREADME.FIRST;1
 
  This program is used to watch a process' quota usage.  When a valid
  process id specified, the system will display that process' quotas
  along with a few other details such as the process state, I/O counts
  and the image currently being run.

  The program can be built using the MMS description file DESCRIP.MMS.
  A C compiler is required.

  [DECUS Canada Librarian's note: On the VAXstation where I put together
   these submissions, there was no C compiler. So, if you wish to run this
   program, but don't have a C compiler, please ask me. I should be able
   to send you a C-compiled .OBJ or a .EXE file from work. My address is:

                                                                Page 9



        A. Mahendra Rajah
        DECUS Canada VAX Tape Librarian
        Dept of Computing Services
        University of Regina
        Regina, Sask.
        Phone: (306) 585-4496
        e-mail: Mahendra @ Meena.CC.URegina.CA (on Internet) ]
 
VD3:[VAX91B.CANADA.LEADER91.DDERRICK.COMS]AAAREADME.FIRST;1
 
    This directory contains several useful utilities in DCL:

    ALLMAIL.COM         -       Runs ALLMAIL.EXE to check for pending ALL-IN-1
                                mail messages. 

    AUTHORIZE.COM       -       Changes default to Sys$System, runs Authorize
                                and changes default back to where we started.

    BIGDIFF.COM         -       DIFFERENCEs between all files in this directory 
                                and another directory specified in P1.
          

    DAYLIGHT_SAVINGS.COM
                        -       sets the time for daylight savings and back again.

    DISKS.COM           -       Shows or watches disk space.

    DQ.COM              -       shows disk quota with totals.

    EPIPE.COM           -       pipe with existing filespec list

    IMS.COM             -       Manages the different inventory files. It looks 
                                almost like All-In-1.


    LPIPE.COM           -       linear pipe

    MAKEMODIFY.COM      -       makes a command file to modify users that have
                                been added to the UAF


    MAKEREMOVE.COM      -       makes a command file to remove users from the UAF

    MEMORY.COM          -       show or watch the "interesting" memory stats

    MENULOGIN.COM       -       Menu for interactive logins.

    NODE.COM            -       converts various forms of decnet node numbers        

    PHN.COM             -       keep track of long distance phone calls          

    PIPE.COM            -       command p1 applied to all files in p2         

    PIPES.COM           -       pipe by search (not directory)        

                                                               Page 10



    PNAME.FOR           -       subroutine returns the username and the length of 
                                the username of the current process
            
    PRIV.COM            -       set command promt to include new privs         

    RECEIVEPRINT.COM    -       network print receiver (see sendprint) 

    SAME.COM            -       This is a difference command that works on sorted files.
                                It will list two files side by side showing the records 
                                that are the same. It gets used a lot in merging UAFs to 
                                form a cluster. Carefull!! it doesn't always get the last 
                                record right
            
    SENDPRINT.COM       -       poorman's DQS. Used with receiveprint.com    

    SORT_US.COM         -       show users sorted by node

    TAPES.COM           -       watch tape drives; like disks.com

    WHERE.COM           -       where are we (or another PID)        

    WORKSET.COM         -       Displays working set information.      

    ZERODISK.COM        -       fully zero outs a disk that is being traded in    
 
VD3:[VAX91B.CANADA.LEADER91.DDERRICK.TPU.ADAM]AAAREADME.FIRST;1
 
   ADAM stands for Assistant for Definition and Modification and  is
   an  extension  to  the  VMS  EVE  editor.  Its purpose is to make
   developing  programs  in  to  the   OCRS   standard   an   easier
   undertaking.   Although  several  of  the  functions are designed
   expressly for the FORTRAN programming environment, ADAM has  been
   developed  with  the  ability  to  apply all but its variable and
   subroutine definition functions to DCL and MACRO code as well.
 
VD3:[VAX91B.CANADA.LEADER91.NAPLUG.BACKUP]AAAREADME.FIRST;1
 
        The included files comprise a menu interface for a captive 
BACKUP account to be used for unattended system backups. The operator 
has the ability to initialize backup media, and perform daily, weekly or 
monthly backups which will be run in batch at the end of the day, without 
operator intervention. The current configuration will perform daily 
backups to TK50(TK70) and weekly and monthly backups will go to an 
Exabyte.

        The primary prerequisite for this application is the creation of 
a priviledged BACKUP account and modification of the command procedures 
to suit your own installation. This is far from perfect, but it should 
provide some ideas. I would love to see any improvements which might be 
made.


John Hale
NAPLUG

                                                               Page 11


 
VD3:[VAX91B.CANADA.LEADER91.NAPLUG.OPERATOR]AAAREADME.FIRST;1
 
        This saveset comprises a menu driven interface to normal(for us :-))
operator functions. These include the management of user processes, queues,
3780 lines, and plotting. You should probably ignore the plotter and comm
functions, but the rest might prove to be useful (or not :-( ). Most of the
command procedures are documented and hopefully the code is fairly readable.

        Thanks go out to Jeff Daley and Ron Rennick who were responsible for
dreaming up and writing this utility and it's cousin the backup utility.



John Hale
NAPLUG
 
VD3:[VAX91B.CANADA.OTT91.EARLUG]AAAREADME.FIRST;1
 
This is a pair co-operating tasks for setting the time of day on an RSX node
from the system clock on a VMS system, using DECNET.  Of course, most people
who want to do this have already figured out how.  My excuse, is that I wanted
to figure out how too.

The VMS side uses non-transparent DECNET.  When the RSX system requests a
connection, the task on the VMS system rejects the connection request, but
returns the time in the 8 words of "reason for rejection" received by the RSX
task  There is much less overhead involved when no actual connection is
created.  Of course, since you only do this once in a blue moon, nobody really
cares about efficiency, but I wanted to figure out how to do this.

I found it difficult to find this information in te VMS manual set (it is
there), so perhaps referring to this code will assist others who are attempting
something similar.

Requirements:

    The RSX node which makes the request must have an ALIAS defined for MCLOCK
    to refer to the VMS node running SENDTIME.  Assuming that the VMS node was
    ARTHUR, you would use a command line similar to the following:

                        NCP SET ALIAS MCLOCK DEST ARTHUR

    Then, simply run GTIM as in:

                        RUN GTIM

    GTIM exits with success status if it works, otherwise it exits with a
    status of severe error.

    If SENDTIME.COM and SENDTIME.EXE are in the  default directory of the
    default DECNET account (usually SYS$SPECIFIC:[DECNET]), then nothing else
    would be requiired for this to work at boot time.  (That is the way that we
    run it in our shop).


                                                               Page 12


    If you have proxies enabled on your system, and you desire to run this
    after the RSX system is running, it will be necessary to either provide a
    proxy to the account and directory where SENDTIME.* resides, or provide
    more information in the alias MCLOCK.

    If you place the SENDTIME.* files in a directory other than that of the default
    DECNET account, you will have to create a proxy or alias which provides
    access to the files.  Note that at RSX boot time, there is no username,
    and therefore, a proxy will not work.


Rob Brown
G. Michaels Consulting Ltd
11211 76th Avenue NW
Edmonton, Alberta
CANADA T6G 0K2

(403)438-2101
FAX  437-3367

 
VD3:[VAX91B.CANADA.OTT91.GOLDLUG]AAAREADME.FIRST;1
 
[.GOLDLUG.BILLING]

        VAX/VMS Billing System

This system suppliments the existing system accounting and disk usage
facilities provided by the VAX/VMS operating system.  It provides for the
charging of connect time, CPU time, and printing to multiple accounts by the
same user during a single interactive, batch or remote session.  In addition,
disk usage is charged by account, rather than by user identification code.

Detailed documentation is provided on the functional components and the data
structures used by the system.  Please view or print BILLING_SYSTEM.MEM for
more information.

This DECUS Canada Submission is via GOLDlug Users Group, and from Member:

        Equitable Life Insurance Company of Canada
        Technical Services Department
        (519) 886-5110
        October 1990

This is provided "AS-IS" with NO warranty expressed or implied.

[.GOLDLUG.GRAPHICS]

     VT320 GRAPHICS CONVERSION
     *************************

To convert a source file into VT320 graphics set;
        
        @GRAPH320


                                                               Page 13


You will be prompted for the source file name and whether you want to view the
graphic.  The com will run GRAP320.EXE, which is the progam that does the
actual conversion.  The target file name will be the same as the source file
name with a '_320' extension appended.  To see this graphic issue a TYPE on the
file.

The only character in the source file that will be converted is the ampersand
(@) character.  All other characters are ignored.

Sample source and target graphics are provided with this submission.  The
program is quick, the code isn't fancy (lots of room to be cleaned up), but it
works.

_____
This DECUS Canada Submission is via GOLDlug Users Group, and from Member:

        Equitable Life Insurance Company of Canada
        Technical Services Department
        (519) 886-5110
        October 1990

This is provided "AS-IS" with NO warranty expressed or implied.

[.GOLDLUG.MISC]
                        Miscellaneous Submissions

ABNORMAL_CONDITIONS.COM -- A specialized command procedure which we use for 
        reporting problems within the company.  It generates a custom report,
        and the procedure has the ability to go back in and modify this 
        report.
                Requires no special privleges, but you have to create a 
        directory for ACRs, and set up a system logical pointing to it.

MAILER.COM -- A command procedure which 

MAIL$KEYDEF.INI -- The Initalization file for MAILER.COM

MAIL.RNO & MAIL.MEM -- A user's guide into the MAIL system.  Provides an 
        overview of some of the major functions of MAIL.

---------------------------------------------------------------------------

This DECUS Canada Submission is via GOLDlug Users Group, and from Member:

        Canadian General-Tower Limited
        52 Middleton Street, Cambridge, Ontario
        (519) 623-1630
        October 1990

This is provided "AS-IS" with NO warranty expressed or implied.

 
VD3:[VAX91B.CANADA.OTT91.GOLDLUG.BILLING]AAAREADME.FIRST;1
 
VAX/VMS Billing System

                                                               Page 14


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

This system suppliments the existing system accounting and disk usage
facilities provided by the VAX/VMS operating system.  It provides for the
charging of connect time, CPU time, and printing to multiple accounts by the
same user during a single interactive, batch or remote session.  In addition,
disk usage is charged by account, rather than by user identification code.

Detailed documentation is provided on the functional components and the data
structures used by the system.  Please view or print BILLING_SYSTEM.MEM for
more information.

This DECUS Canada Submission is via GOLDlug Users Group, and from Member:

        Equitable Life Insurance Company of Canada
        Technical Services Department
        (519) 886-5110
        October 1990

This is provided "AS-IS" with NO warranty expressed or implied.
 
VD3:[VAX91B.CANADA.OTT91.GOLDLUG.GRAPHICS]AAAREADME.FIRST;1
 
VT320 GRAPHICS CONVERSION
*************************

To convert a source file into VT320 graphics set;
        
        @GRAPH320

You will be prompted for the source file name and whether you want to view the
graphic.  The com will run GRAP320.EXE, which is the progam that does the
actual conversion.  The target file name will be the same as the source file
name with a '_320' extension appended.  To see this graphic issue a TYPE on the
file.

The only character in the source file that will be converted is the ampersand
(@) character.  All other characters are ignored.

Sample source and target graphics are provided with this submission.  The
program is quick, the code isn't fancy (lots of room to be cleaned up), but it
works.

_____
This DECUS Canada Submission is via GOLDlug Users Group, and from Member:

        Equitable Life Insurance Company of Canada
        Technical Services Department
        (519) 886-5110
        October 1990

This is provided "AS-IS" with NO warranty expressed or implied.
 
VD3:[VAX91B.CANADA.OTT91.GOLDLUG.MISC]AAAREADME.FIRST;1
 

                                                               Page 15


                        Miscellaneous Submissions

ABNORMAL_CONDITIONS.COM -- A specialized command procedure which we use for 
        reporting problems within the company.  It generates a custom report,
        and the procedure has the ability to go back in and modify this 
        report.
                Requires no special privleges, but you have to create a 
        directory for ACRs, and set up a system logical pointing to it.

MAILER.COM -- A command procedure which 

MAIL$KEYDEF.INI -- The Initalization file for MAILER.COM

MAIL.RNO & MAIL.MEM -- A user's guide into the MAIL system.  Provides an 
        overview of some of the major functions of MAIL.

---------------------------------------------------------------------------

This DECUS Canada Submission is via GOLDlug Users Group, and from Member:

        Canadian General-Tower Limited
        52 Middleton Street, Cambridge, Ontario
        (519) 623-1630
        October 1990

This is provided "AS-IS" with NO warranty expressed or implied.
 
VD3:[VAX91B.CANADA.OTT91.HAMLUG]AAAREADME.FIRST;1
 

      This directory tree contain submissions from members of the HAMLUG.

SUS
---
More information than the SHOW USERS command.
Author: Craig Slattery

        (416) 335-2000
        
Define_Help_Lib
---------------

 by Bob Langford,  Fisheries and Oceans

This procedure checks for currently defined HLP$LIBRARY_* logicals
and assigns P1 parameter as the next available Library number. The logical
table can also be defined by specifying the P2 parameter.

Check & Mount Disks  (CHKMOU_DISK)
----------------------------------
 by Keith Weaver, Fisheries and Oceans

This command file is used to check the status of all the disks in the cluster
and mount any that need to be mounted.  Depending on the state the disk may
have to be dismounted prior to being mounted.

                                                               Page 16



It is relatively generic except for the specific disk labels located at the
bottom of the command file in the LIST_OF_DISK_LABELS subroutine.
The procedure displays the status of the disks and then is set into verify
mode while it dismounts and mounts disks as required.

The procedure requires SYSNAM privilege and assigns it to the process at the
beginning and removes the privilege upon completion.


Check_Login (CHK_LOGIN)
-----------------------
 by Keith Weaver, Fisheries and Oceans

This command file generates a user list using SHOW USER/OUT=file and parses
the first few columns and the PIDs from the list.  It then uses the pid and
f$getjpi to get the Login time and displays both to the screen.

You must have WORLD privilege,  which the command file will assign for the
process and remove on termination.  No error checking is done.

Example:

      VAX/VMS User Processes at  31-AUG-1990 17:01:14.44
    Total number of users = 6,  number of processes = 8

 Username     Node   Process Name    PID             Login Time
 <login>     BURWS2  _WSA1:        20E00231    31-AUG-1990 15:55:00.24
 CORKUM      BURCLU  CORKUM        2020147A    31-AUG-1990 15:03:47.82
 ELNER       BURWS2  _LTA58:       20E00230    31-AUG-1990 12:01:50.72
 JOHANNSSON  BURCLU  JOHANNSSON    2020179C    31-AUG-1990 16:18:46.34
 TINNEY      BURCAH  TINNEY        2060051D    29-AUG-1990 15:44:53.12
 WEAVER      BURCOM  WEAVER        210002AD    31-AUG-1990 10:02:34.17
 WEAVER      BURWS2  WEAVER        20E00232    31-AUG-1990 16:51:29.72
 WEAVER      BURWS2  WEAVER_1      20E00233    31-AUG-1990 17:01:10.27

Copynode2node  (CNN)
--------------------
 by Keith Weaver, Fisheries and Oceans

This command file allows you to copy between DECnet nodes where proxies are
not set up and you must use a username and password in the copy command.  The
terminal is set to NOECHO while prompting for the password, thus allowing for
a little security in that your passwords will not be displayed to the screen.
Username and Password specifications are prompted for if nodenames are
specified in either the P1 or P2 variable.  The current process name is used
as the default Username.  If P2 or P1 and P2 are missing they are prompted for
(similar to the COPY command).

Example:
cnn  [weaver]login.com  OTTCHS::NL:
(OTTCHS) Username [WEAVER_2]: SYSTEM
(OTTCHS) Password:
Copying...


                                                               Page 17


Day_of_Year  (DOY)
------------------
 by Keith Weaver, Fisheries and Oceans

This command file retrieves the system date and calculates the day of the year.
It is stored as a logical in the System logical name table if the SYSTEM runs
the command file, or in the process logical name table if any other users run
it.

We have been calling this variable the Julian day (which is incorrect), and
thus assigning date and time values in a JJJ HH:MM:SS.SS format.  That is 
the reason for calling the logical "JJJ".


ShowNet
-------
Author:  Steve LaRocque, Southam Computer Group, Hamilton, Ont, Canada

This simple command procedure allows DECnet End-nodes to do a "Show Network"
command on their router node.

It uses DECnet Task-to-Task communication to accomplish this.

To install:
 On the router node:
    Copy the SHOWNET.COM command procedure into SYS$MANAGER (it only needs
      World:Execute access)
    NCP> SET OBJECT SHOWNET FILE SYS$MANAGER:SHOWNET.COM
    NCP> DEFINE OBJECT SHOWNET FILE SYS$MANAGER:SHOWNET.COM
    (you may also want to create a network object server UAF account if you
      don't want to use a default non-privileged DECnet account)
 On the End-node:
    Create a symbol for easy access to the procedure in your LOGIN or SYSLOGIN
      procedure:
        $ NET :== @SYS$MANAGER:SHOWNET


You can now use the command "NET" to display the network.  This command will
also work at the Router node itself (it checks for this).

--
NOTE : This software is distributed free of any license charges on the
    understanding that no warranty is implied with this software, nor is any
    liability incurred by the original author nor by any person who has
    modified the file(s), nor any by person who permits a copy of the software
    to be made

Modifications:
--------------

   1-Aug-1990   Brad L. Tinney

      I added a translation from Area and Node numbers to actual sites and
      machine descriptions. This should provide most of the information 
      required by the network manager (missing the hops and cost), but finally

                                                               Page 18


      makes some sense to the general user who wants to know why he or she
      can't send mail to a remote site.

      Thanks to Bob Johns, the DECnet task to task stuff works by putting in
      the command NUMBER 0 in the NCP command line.

      To configure your site into this procedure, just add definitions of your
      local nodes to the num2name subroutine.


OS/2 Public Domain Desktop Utilities
====================================

The programs in the following 3 directories
have been downloaded from CompuServe. These
programs have been put into the public domain
by the original authors.

   [DESKTOP] - this program (DESKPIC) provides
               several interesting features for
               your OS/2 v1.2 desktop, namely:

                - loads .BMP & .GIF graphics
                  as a presentation mamager
                  background

                - provides many animated
                  screen savers

                - provides serveral animated
                  presentation manager
                  backgrounds, including an
                  animated aquarium

    [EXTANI]  - these files show how to develop
                your own animated presentation
                manager backgrounds for DESKPIC

    [EYECON]  - this is an interesting & fun program
                that creates a presentation manager
                icon that track your mouse movements.
                try it you'l like it.



John Novak
HAMLUG Newsletter Editor


NewMailDir
----------
 by Steve LaRocque, Southam Computer Group

This utility, designed to be run from SYLOGIN, will produce a list of new mail
messages for the user much like Mail's DIRECTORY function.

                                                               Page 19



It selects all the messages in the NEWMAIL folder rather than going by the new
mail count.  If there are no new messages or no mail file, the program prints
nothing.  If new mail messages exist, they are printed in the following format:


   New Mail Summary           You have  3  new mail messages

Num    Date          From            Subject
--------------------------------------------------------------------------------
  1  1-JUL-1990 VNCVR::STEVE         Re: Proposed change to Cluster
  2  2-JUL-1990 QUECTY::ANNETTE      Layout for new WAN connections
  3  2-JUL-1990 HALFAX::SYSTEM       Re: DECnet to Calgary (stability)


To install the utility, place the program someplace accessible, like Sys$System,
and add the following lines to the interactive section of your SYLOGIN:

   $ Define/User Sys$Input Sys$Command
   $ Run Sys$System:NewMailDir

If you have a lot of logins, you may want to Install it /Open/Header/Shared
for faster access.


--
NOTE : This software is distributed free of any license charges on the
    understanding that no warranty is implied with this software, nor is any
    liability incurred by the original author nor by any person who has
    modified the file(s), nor any by person who permits a copy of the software
    to be made


Action Keys (Set Keys)
----------------------
Process Permanent Programmable Action Keys
  by Lee K Gleason

  From:  VAX Professional, February, 1987


This package, described in detail in _VAX Professional_, is an excellent example
of setting up "action keys" where, for example, Control-F will display the names
of all the files the process currently has open, or toggle the procedure verify
bit.

Many thanks to the author for sharing his program with us and to
_VAX Professional_ for providing the VAX community with gems like this.


SQUEEZER - A Memory Economizer
------------------------------

This utility won first prize in the _VAX Professional_ "Call for Papers" on
Performance and was published in the December 1989 issue of that journal.

                                                               Page 20



Many thanks to the author, Frank Dolatshahi for sharing this excellent program
with the general public!

This program forces a flush of the working set of idle processes on the system,
which can greatly increase your free list size.  Full details can be found in
the accompanying article in _VAX Professional_.
TEXT FILE :             READ_ME.1ST

Author: Frank Dolatshai
Date: 8/24/89

                The explanation of Squeezer's parts :

        ******* Please Note: Squeezer in written to run under VMS 5.0 
                or higher versions.

SQUZ_STRT.COM : 
        This is the start up command procedure. When invoked it checks
        the size of the data file generated by Squeezer, to make sure that
        the file is not greater than 200 blocks. If it is the file is
        deleted. SQUZ_STRT.COM accepts one parameter for the detached process
        name(the default name is 'Squeeze!!'). It then sets the value for a
        switch logical ,called SQZ_RUN, to 'OK' in LNM$SYSTEM_TABLE. (OK will 
        be in upper case), and starts a detached process. 
        This procedure can be invoked from the system startup file. It assumes 
        that all of required files are in SYS$SYSDEVICE:[MEMPURGE].
        (format of passing a parameter to SQUZ_STRT is $@SQUZ_STRT procname )

SQUZ_STOP.COM : 
        The shutdown procedure assigns a different value than 'OK' to SQZ_RUN. 
        Once you run this procedure the Squeezer will shutdown within the 
        next run cycle. Please note that you must be in a privileged account.
        IT IS IMPORTANT TO USE THIS PROCEDURE TO SHUTDOWN SQUEEZER RATHER 
        THAN JUST USING 'STOP/ID', THIS WAY SQUEEZER WILL SHUTDOWN PROPERLY 
        AND WILL DEALLOCATE ITS NONPAGED SCRATCH AREA. 

SQUEEZER.MAR:
        This is the main part and runs as a detached process.
        While the program is executing, it checks to make sure that it
        is operating during the requested operation time.
        Squeezer checks the logical SQZ_RUN at each run cycle. If the value 
        of SQZ_RUN is set to 'OK' Squeezer continuous to run, otherwise it  
        shuts itself down.
        When Squeezer approaches the end of the daily operation time it 
        produces a report consisting the number of released pages per hour,
        and then hibernates until the next day. Squeezer also produces the 
        same kind of report before shutting down.
        The statistics produced by this program are written to a file
        with the format of {node-name}_SQUZ.DAT, which will reside in the
        directory SYS$SYSDEVICE:[MEMPURGE]. Thus it is important to
        create this directory before starting. Squeezer will append the data
        to this file. If the file does not exist it is created by
        Squeezer.
        Squeezer deallocates the nonpaged memory allocated during the 

                                                               Page 21


        initialization, in case of any errors or if the process shutdown
        is requested. If any error is detected, the message will be written 
        to a file called PURGE.LOG that explains the error code and/or the 
        location within the program. Following are the error codes:

        1110 - The AST routine is not present. (Be sure you have executed
               SQUZ_AST.COM and rebooted the system without any problem.).
        2220 - There was not enough nonpaged memory for squeezer to use
               as scratch area. (If this happens, check your NPAGEDYN parameter
               and make sure you have enough free space. Usually this
               error should not happen since squeezer uses very little 
                  nonpaged memory.).
        3330 - There was a problem with deallocation of the memory during
               the process shutdown, or a non-kernel error (this error 
               usually indicates problems with system. Check your system
               for any memory or cpu problems.)
 
SQUZ_PRM.MAR :  
        This is the only part that you should need to change. It includes 
        the input parameters for the program. These parameters are, 
        CREEP (integer-creep factor), PERIOD (ascii-activation intervals, 
        this value should be a multiple of 5), A_START (an absolute ascii time 
        format for start time), and A_STOP (an absolute ascii time format 
        for stop time). 
 
SQUZ_SETUP.COM : 
        This is a command procedure that will compile and link the proper 
        components to produce the main image file, SQUEEZER.EXE. 
        Invoke this procedure every time after you modify SQUZ_PRM.MAR.

SQUZ_AST.MAR :
        This is the AST routine that has the $PURGWS service for address
        ranges ^X00000000 to ^XFFFFFFFF.

SQUZ_AST.COM :
        This is the procedure that compiles, links, and prepares the AST 
        routine to be loaded into the memory as an executive image. After
        you run this procedure successfully, you must reboot the system
        in order to load the AST routine into the memory.

INSTALL.TXT :
        This text file has the steps to install squeezer on your system.


SYS$LOCAL.COM
-------------

**
NOTE: THE PROCEDURE CONTAINED HEREIN IS NOT RECOGNIZED BY DEC AND IS LIKELY
"NOT RECOMMENDED".  PLEASE READ AND UNDERSTAND THE PROCEDURES, REQUIREMENTS AND
IMPLICATIONS OF THIS PROGRAM BEFORE INSTALLING IT AS THE AUTHOR PROVIDES NO
WARRANTY/GUARANTY.
**

This procedure, when executed as part of your startup, will install add another

                                                               Page 22


root to your SYS$SYSROOT search list.

This is intended for use on MI/LAV Clusters where there exists sufficient local
disk capacity on the satellite to store SYS$SYSTEM and SYS$LIBRARY and
SYS$MESSAGE files (presumably on the same disk as your local page and swap
files).

This is done to increase performance by reducing the amount of MSCP-served
system-disk based image activations.  In development or general-use environments
there tends to be a fair amount of this.  Dedicated single-application machines
likely have fewer of these, however, and so won't benifit as much.

Basically, what we want to do is change the SYS$SYSROOT logical search list from
SYS$SPECIFIC,SYS$COMMON to SYS$SPECIFIC,SYS$LOCAL,SYS$COMMON.

This means that when attempting to activate an image, the system will first look
in SYS$SYSROOT (MSCP-Served), and normally not find the image, then in SYS$LOCAL
(local to the satellite) and find the image, load it and activate it.  True,this
means that it still first -looks- at the MSCP-served disk, but by placing the
SYS$LOCAL in the middle, instead of the front, maintainance is simpler.  You
know that the [SYSx.SYSEXE] on the Master node's system disk is indeed the first
place looked by the software.  It also helps when installing new software - some
Digital programs assume that the [SYSx.SYSEXE] is the first place looked and the
SYS$COMMON:[SYSEXE] is the last.

You will want to run this as early as possible in your Startup procedure so that
layered software starting up will use the local copy rather than the remote copy
in Sys$Common.

It is up to YOU to set up and keep up-to-date your SYS$LOCAL directory
structure.  This means when you update SYS$COMMON files which are duplicated in
SYS$LOCAL (such as a new VMS version), you must update your SYS$LOCAL files.

The easiest way of doing this is to simply BACKUP the files from SYS$COMMON to
SYS$LOCAL.

What we do here is this:

DISK$LOCALSYS:[LOCALSYS.SYSEXE]   <-contains a copy of SYS$COMMON:[SYSEXE]*.EXE
DISK$LOCALSYS:[LOCALSYS.SYSLIB]   <-contains a copy of SYS$COMMON:[SYSLIB]*.EXE
DISK$LOCALSYS:[LOCALSYS.SYSLIB]   <-contains a copy of SYS$COMMON:[SYSLIB]*.EXE

We are only interested in the .EXE files as they are generally the most
frequently accessed files.  You should be able to use BACKUP/IGNORE=INTERLOCK
to move them over.

When you call this procedure from startup, you must provide P1 as the value for
SYS$LOCAL.  In the case above, this might be expressed as:

  @Sys$Startup:Sys$Local.Com $2$DUA1:[LOCALSYS.]

When the procedure runs, it first defines the new logical (SYS$LOCAL) and then
redefines the SYS$SYSROOT search list as SYS$SPECIFIC, SYS$LOCAL and SYS$COMMON.
Unfortunately, by the time this procedure runs, most system images that are
going to be installed -are- already installed.  So the procedure then goes on

                                                               Page 23


to INSTALL> REPLACE all the images listed in SYS$MANAGER:VMSIMAGES.DAT.

If you make modifications/enhancements to this program, feel free to do so.

--
NOTE : This software is distributed free of any license charges on the
    understanding that no warranty is implied with this software, nor is any
    liability incurred by the original author nor by any person who has
    modified the file(s), nor any by person who permits a copy of the software
    to be made.
--


Trimbiont - is a simple piece of code, that strips extraneous spaces from
            the end of print lines, prior to being sent to the print device.
            Specifically, when utilized in WAN's (wide-area networks), may
            reduce over-head(depending of print job) and decrease print time.
            We found with our application print jobs, we saved an average of 
            30% savings in print times.

            Trimbiont.exe must reside in Sys$common:[Sysexe]. To activate, 

                      $ Stop/Reset queue_name
                      $ Start/Queue/Processor=Trimbiont queue_name

            Note: This software is only useful if you have print jobs that 
            do have extraneous spaces at the end of print lines.

            Note: This software does not have special LAT handling for multiple
            queues pointing to the same physical device.
 
VD3:[VAX91B.CANADA.OTT91.HAMLUG.CBS]AAAREADME.FIRST;1
 
Author: Craig Slattery
        (416) 335-2000
        This image uses kernal mode code - use at own risk.
        To compile and link this program simple use the following:
        $ MACRO SHUS
        $ LINK SHUS
        $ RUN SHUS    (from privileged account)
     
        This image can also be installed privileged (change mode to kernal)
        and shared.

        
 
VD3:[VAX91B.CANADA.OTT91.LIBRARY]AAAREADME.FIRST;1
 

      This directory contains contributions from the DECUS Canada Library
      group.

      [.Derrick]  contains a collection of DCL routines that I use often
                  at our site.  Some of them are obviou and some of them 
                  are just plain handy.

                                                               Page 24



      [.Rajah]    MDQ - Program to modify the disk quota for users.

      [.Tinney]   SNAP is a process control program for the system 
                  manager. It allows many different kinds of viewing 
                  and manipulations on user or system processes.  

 
VD3:[VAX91B.CANADA.OTT91.LIBRARY.DERRICK]AAAREADME.FIRST;1
 
This directory contains a collection of DCL routines that I use often
at our site.  Some of them are obviou and some of them are just plain handy.
Enjoy.

David Derrick
Ministry of Natural Resouces
North York, Ontario
M2N 3A1

Tape Copy, Library committee

ALLMAIL.COM             Check for All-In-One mail
ALLMAIL.FOR
PNAME.FOR

AUTHORIZE.COM           used to goto sys$system, run authorize, 
                        and go back to where we came

BIGDIFF.COM             differences between this directory and filespec p1 directory

DISKS.COM               show or watch disk space

DQ.COM                  show disk quota with totals

PIPE.COM                A "pipe" utility collection for different cases
EPIPE.COM               Great for software development
LPIPE.COM
PIPES.COM

PRIV.COM                set command promt to include new privs

SENDPRINT.COM           Send print jobs to a remote node using proxy logins.
RECEIVEPRINT.COM        Used very sucessfully at ours and a remote site.

SORT_US.COM             List users on a VAXCluster by node then username

TAPES.COM               Watch tape drives (like disks)

WHERE.COM               Where are we (or some one else)
 
VD3:[VAX91B.CANADA.OTT91.LIBRARY.RAJAH]AAAREADME.FIRST;1
 

MDQ - Modify disk quota of users.


                                                               Page 25


    Program MDQ allows authorized users to 

    (1) inquire disk quota usage by any user on the sytem on their
        home device, and
    (2) modify the permanent quota.

    We use this program at this University to allow secretaries to
    modify disk quotas of users upon authorization from the System
    manager. 

    Files that make up MDQ are:

    MDQ.FOR         -   FORTRAN main program
    GET_MDQ.MAR     -   MACRO routine that talks to the DISK ACP.
    MAKE-MDQ.COM    -   Command file to compile, link and install
                        MDQ.EXE

    Security:
    --------

    Access to MDQ.EXE is controlled by the Rights identifier ID_MDQ.
    Those usernames that can run MDQ must be granted this identifier.
    
    Authorized usernames are added to the Authorized_users array
    within the program.

    The program needs to be installed with SYSPRV which is not enabled
    until required.

    Submitted by:

        A. Mahendra Rajah, System Manager
        Dept of Computing Services,
        University of Regina, 
        Regina, Sask.

        CA*net address: Mahendra @ Meena.CC.URegina.CA

    If you are having trouble executing this program, I may be able to
    help!

 
VD3:[VAX91B.CANADA.OTT91.LIBRARY.TINNEY]AAAREADME.FIRST;1
 
                          DOCUMENTATION FOR

                                 snap

                                  BY

                           DANIEL J. GRAHAM

SNAP is a process control program for the system manager.  It allows 
many different kinds of viewing and manipulations on user or system 
processes.  

                                                               Page 26



SNAP is a very fancy SHOW USERS.  it gives a useful screen of 
information about each user process on the system.  (Optionally, it 
also gives the same stuff about system processes.)  You can get a 
bunch of statistics on the process, you can view what is going on on a 
terminal or write to that terminal's buffer, you can delete a process, 
force an image exit on a process, change priority, suspend or resume a 
process.

        WARNING:  Do not install this program with privs.  It is very 
        dangerous and could seriously compromise your system's 
        security if used by someone with intent to do damage.  Do not 
        make it available to any but trusted systems people.

-----------
Dan Graham
Dynamics Research Corporation, Andover, Ma
(508) 475-9090 x2352
Internet address:  graham@drcvax.af.mil
 
VD3:[VAX91B.CANADA.OTT91.MEZEI]AAAREADME.FIRST;1
 
********************** Sounds and Images *************************************

      Submitted by: Jean-François Mezei 
                    Vaxination Informatique
                    86 Harwood Gate
                    Beaconsfield, Quebec
                    
[.MEZEI]AAAREADME.txt 
        This file...

[.MEZEI]MODEM_MNP.TXT
        A description of the different MNP levels (types) available on
        modems. 

[.MEZEI]POSTSCRIPT_QUICK_REF.PS
        A quick reference card for postscript commands. Produced by
        U of LOWELL. (2 pages which shoudl be printed 2-sided and 
        folded to make a quick reference card. (source Compuserve)

**************** [.MEZEI.IMAGES] *************8000+ blocks*****************

     Some files, those with names ending in -LZ, in this directory are 
     LZCOMPressed to save space on the tape. Please use the LZDCMP.Exe
     program in [Ott91.Tools] directory to decompress them.
      
     The two *.PS files are in the text library POSTSCRIPT.TLB in DATA
     reduced format. Use 

        $ Library/Data=Expand POSTSCRIPT.TLB 

     command to expand the library and then extract the two files.

[.MEZEI.IMAGES]APOLLO.SIX;5             VT240 format. (from Compuserve)

                                                               Page 27


[.MEZEI.IMAGES]VAX-TEMPLE.LA75;1        VAX joke, LA75 format
[.MEZEI.IMAGES]VAX-TEMPLE.LN03;1                  LN03+ format (sixel)
[.MEZEI.IMAGES]VAX-TEMPLE.PS;9                    Postscript
[.MEZEI.IMAGES]VAX-TEMPLE.TIFF;1                  TIFF, B&W (no greyscale)
[.MEZEI.IMAGES]VAX-TEMPLE.VT240;5                 VT240 (sixel)

[.MEZEI.IMAGES]VELODROME.TXT            Explanation of VELODROME files
[.MEZEI.IMAGES]VELODROME.LN03;1
[.MEZEI.IMAGES]VELODROME.PS;1
[.MEZEI.IMAGES]VELODROME.TIFF;1
[.MEZEI.IMAGES]VELODROME.VT240;1

**************************** [.MEZEI.MACSOUNDS] **********11000+ blocks*******

These sounds are all for the MACINTOSH computer. They are all in MACBINARY
format. Some of the files contain sounds as resources, others are in
standalone files to be used by applications such as SOUND-COP or SOUND-EDIT.

Some files, those with names ending in -LZ, in this directory are  LZCOMPressed
to save space on the tape. Please use the LZDCMP.Exe program in [Ott91.Tools]
directory to decompress them.

This directory contains 

[.MEZEI.MACSOUNDS]ALARM_FOUR.SOUND;1            Various Star-Trek alarms
[.MEZEI.MACSOUNDS]ALARM_ONE.SOUND;1
[.MEZEI.MACSOUNDS]ALARM_THREE.SOUND;1
[.MEZEI.MACSOUNDS]ALARM_TWO.SOUND;1
[.MEZEI.MACSOUNDS]ALERT_KLAXON.SOUND;1

[.MEZEI.MACSOUNDS]APOLLO_LANDING.RSRC;1         Recordings of the first
                                                apollo landing.
                                                Such as "The eagle has landed"
                                                and "One small step..."

[.MEZEI.MACSOUNDS]HAL_COMPLETELY_OPERATIONAL.SOUND;1     Great startup sound.

[.MEZEI.MACSOUNDS]HAL_PUZZLING_LET_IT_FAIL_AGAIN.SOUND;1 More of HAL (2001 fame)

[.MEZEI.MACSOUNDS]HAL_SORRY_DAVE.SOUND;1                        "     "  "    "    "
[.MEZEI.MACSOUNDS]MISC.SOUNDS;1                         All sorts of sounds
                                                        Some BATMAN music
                                                        and fights etc etc.

[.MEZEI.MACSOUNDS]MISSION.IMPOSSIBLE;1                  Theme song from
                                                        Mission Impossible
                                                        In compressed format
                                                        4:1 (SOUND-EDIT)

[.MEZEI.MACSOUNDS]TREK.RESOURCES;1                      Various Star Trek
                                                        Captions from
                                                        "The Borg"  and
                                                        Star Trek IV.

[.MEZEI.MACSOUNDS]TREK_DOOR.;1                          Swish !

                                                               Page 28



[.MEZEI.MACSOUNDS]TREK_WHISTLE.;1                       Ship's whistle
                                        
 
VD3:[VAX91B.CANADA.OTT91.NAPLUG]AAAREADME.FIRST;1
 

   Submissions from NAPLUG.

[.KYLE]
        There are two programs in this directory.

        SCANP   -  Scans the system for processes matching a user
                   specified process name.
        SCANU   -  Scans the system for processes matching a user
                   specified username.

[.YOUNG]
                Read me first file for login.com stuff....


        At our shop we wanted to have each user's process name be their
        'real' name so when we are trying to provide support, we can see
        something other than cryptic usernames like SYS003, ISB032, etc.
        Unfortunately VMS doesn't provide us with an easy way of doing
        this (or at least as far as I could tell).  So I wrote a short
        FORTRAN program to extract the needed information.  When it is run,
        it gets the owner name and creates two DCL symbols:
        LOGIN$PROCNAME  = The process name (owner truncated to 15 chars)
        LOGIN$A1NAME    = Called this because we use All-In-1; this is 
                          the complete name (32 characters long)


There are three files included in this save set (besides this one).  They
are the following:


SAMPLE_LOGIN.COM        This is a sample LOGIN command procedure that calls
                        SAMPLE_USER to get the owner of the account.

SAMPLE_USER.FOR         This FORTRAN program uses the SYS$GETUAI system
                        service to haul out the 'owner' of the current
                        account.  This is useful for setting process names
                        and things like that...

WRITE_SYMBOL.FOR        This subroutine is called to write a value to a symbol.
                        Pretty simple, actually.


COMPILING INSTRUCTIONS:
=======================
FORTRAN/LIST SAMPLE_USER, WRITE_SYMBOL
LINK SAMPLE_USER, WRITE_SYMBOL



                                                               Page 29


Any comments/suggestions can be forwarded to:

Grant Totten
New Brunswick Department of Transportation
Information Systems Branch
P.O. Box 6000, Suite 630, King's Place
Fredericton, N.B.
E3B 1H5
(506) 453-2990

 
VD3:[VAX91B.CANADA.OTT91.NAPLUG.KYLE]AAAREADME.FIRST;1
 

        There are two programs in this directory.

        SCANP   -  Scans the system for processes matching a user
                   specified process name.
        SCANU   -  Scans the system for processes matching a user
                   specified username.

 
VD3:[VAX91B.CANADA.OTT91.NAPLUG.YOUNG]AAAREADME.FIRST;1
 
                Read me first file for login.com stuff....


        At our shop we wanted to have each user's process name be their
        'real' name so when we are trying to provide support, we can see
        something other than cryptic usernames like SYS003, ISB032, etc.
        Unfortunately VMS doesn't provide us with an easy way of doing
        this (or at least as far as I could tell).  So I wrote a short
        FORTRAN program to extract the needed information.  When it is run,
        it gets the owner name and creates two DCL symbols:
        LOGIN$PROCNAME  = The process name (owner truncated to 15 chars)
        LOGIN$A1NAME    = Called this because we use All-In-1; this is 
                          the complete name (32 characters long)


There are three files included in this save set (besides this one).  They
are the following:


SAMPLE_LOGIN.COM        This is a sample LOGIN command procedure that calls
                        SAMPLE_USER to get the owner of the account.

SAMPLE_USER.FOR         This FORTRAN program uses the SYS$GETUAI system
                        service to haul out the 'owner' of the current
                        account.  This is useful for setting process names
                        and things like that...

WRITE_SYMBOL.FOR        This subroutine is called to write a value to a symbol.
                        Pretty simple, actually.



                                                               Page 30


COMPILING INSTRUCTIONS:
=======================
FORTRAN/LIST SAMPLE_USER, WRITE_SYMBOL
LINK SAMPLE_USER, WRITE_SYMBOL


Any comments/suggestions can be forwarded to:

Grant Totten
New Brunswick Department of Transportation
Information Systems Branch
P.O. Box 6000, Suite 630, King's Place
Fredericton, N.B.
E3B 1H5
(506) 453-2990
 
VD3:[VAX91B.CANADA.OTT91.PAXLUG]AAAREADME.FIRST;1
 
Jean-François Mezei
Vaxination Informatique
Montréal, Québec, Canada   (LUG: PAXLUG)
---------------------------------------------------  October 1990 Submission.

*.SIX                   Various sixel files                         

CONVERT.DIR             Accented character conversion utilities (MAC-DEC-IBMPC)
                        Tab expansion utility (replaces tabs with blanks)

PSPRINT_ALDUS_PREP_FIX.PS  Fix to ALDUS PREP for use with DEC's PSPRINT
                           utility

SYS_MANAGER.DIR         Various utilities for the syustem manager, including
                        a broadcast program to send a long message to
                        a list of terminals.

WPSPLUS.DIR             Various forms and scripts which allow WPSPLUS to
                        be customized.      


All C source programs can be compiled on VAX-C without any special include
files, and can be linked regularly (with VAXCRTL.EXE).

 
VD3:[VAX91B.CANADA.OTT91.SLUG]AAAREADME.FIRST;1
 

Are you tired of all your batch jobs executing at once after a reboot or missed
executions completely?  Or maintaining separate batch definitions on each node?
Then DCLSchedule may be for you.

1.      Define all your nodes using logical names in
    Sys_Node_Service_Conig.Com and execute these definitions in SyStartup_V5
    -- or you could define them elsewhere.  Note that concatination of nodes
    is possible in ALLVAX.


                                                               Page 31


2.      @DCLSchedule_Run.com goes in SyStartup_V5 to start a detached process.

3.      Define all repeated batch jobs in DCLSchedule.Dat using the rules at
    the top of the .Dat file.

And you're off.
 
VD3:[VAX91B.CANADA.PVH]AAAREADME.FIRST;1
 
                RAILWAY TRAFFIC SIMULATION SOFTWARE
AUTHOR
   Ms. Pauline Van Havere       email: pvh@UReginaV.Bitnet
   Computer Science Department
   University of Regina
   Regina, Saskatchewan
   S4S 0A2

ABSTRACT
   This software simulates the bi-directional travel of any number of 
   trains over an east-west track layout consisting of any number of
   track segments. Trains are assigned a priority rating and track
   segments can be single or double track, sidings may or may not be
   present. The first priority in meets and overtakes is given to eastbound
   trains (traditional in the Canadian system). 
    
DOCUMENTATION
1. Simscript Rail Traffic Simulation Technical Report CS-88-04
                ISSN 0828-3494  ISBN 0-7731-0134-9
   contains: programmer's & user's guides, source code listings.
2. TRACK.FORMAT contains a description of the required format for the
   track layout data file.
3. TRAIN.FORMAT contains a description of the required format for the
   train schedule data file.

TRAIN.SIM
        This is a Simscript simulation program designed to simulate the
  travel of 'n' trains over at 'm' track segments. A train can begin and
  end in any track segment. Areas of congestion can be isolated by examining
  wait times for each track segment. New sidings and double track can be
  added in an attempt to minimize congestion. A train schedule file and a
  track layout file are required.
FILTER.C
        This is a C pre-processor to convert times in the train schedule
  file from 24 hour format to that expected by Simscript.
RUNTRAIN.COM
        This command file calls the C pre-processor, defines I/O files,
  runs the simulation program, and calls "sortit.com", a command file to sort 
  train travel times.
TRNSTATS.LIS statistical output of simulation run.
TRNTIMES.SRT train travel run times.
VIEWTRAIN.DAT pictorial trace of a specified train.
VIEWTRACK.DAT pictorial trace of a specified track segment.

 
VD3:[VAX91B.CANADA.SRS]AAAREADME.FIRST;1

                                                               Page 32


 
Symposium Registration System is designed to store records on Attendees,
Payments, Events, Counts and Messages.
The information store on Attendees fall under the basic catagories of
           address/personal data
           event flag bytes for events attending
           1st, 2nd, and 3rd choice event-code names for events attending
           basic payment details
Payment records store basic catagories
           payment type 
           amount
           details (additional comments)
Events records store basic catagories
           description
           date/time
           cost (pre-registration/walkin)
Counts record accumulative totals of attendee transactions
and Messages store 
           Names and SRNs for participants who have messages 
           Announcements for activities or special events

Each participant will use his DECUS number as his unique Symposium Registration
number (SRN). In the event that the attendee does not have a DECUS number, the 
system will assign a SRN.  This number is used as an index key to most data
files.  A standard FMS form is used throughout the program, for functions which
are related to the participant, to query for either the participants SRN or
Surname (or part of). The default of <RETURN> to exit, was implemented
throughout.

Symposium Registration System (SRS) Options

        0 - REGISTRATION        6 - REPORTS

        1 - PAYMENTS            7 - MESSAGES

        2 - PICKUP:             8 - BACKUP
            (not supported)
        3 - EVENTS              9 - BADGES

        4 - COUNTS              <PF2> - HELP

        5 - RECEIPTS            <CR>  - EXIT

Additional programs ..  FPLIST  

The system is initialized via SRS$STARTUP.COM.  The components, according
to the Main Menu, represent various subdirectories and are pointed to using
logicals which are set by SRS_LOGICALS.COM
Notable logicals;
                images reside in  SRS$IMAGES
                data   reside in  SRS$DATA
                form libraries in SRS$FORMS
Adjustments may be required in the LOGIN.COM file for defining logicals and
symbols.  A template file is found in [.SETUP] directory.


                                                               Page 33


Commands required to run DECUS Symposium Registration System

        SRS     to run the main system
                this is a symbol that points to the SRS.EXE image located
                in SRS$IMAGES

        SRSBCK  to backup the .DAT files (transfers files from SRS$DATA
                directory to SRS$BACKUP directory)
                this is a symbol that points to the SRSBACKUP.EXE image located
                in SRS$IMAGES

        DTR     to execute Datatrieve
                this may be required to get special reports or adjust some
                fields that are incorrect or have been inadvertently corrupted

COUNTS.DAT records must be initialized with key values being 4 letter codes
for events that will be registered as well as TOTA - total attending
                                              TOTD - total deleted
                                              NSRN - next SRN
                                              NMES - next message number
                                              NPAY - next payment number
Data Files required -   ATTENDEES.DAT,EVENTS.DAT,COUNTS.DAT
                        MEMBER.DAT,PAYMENTS.DAT,MESSAGES.DAT
                        ANNOUNCEMNT.DAT,HISTORY.DAT,REVENTS.DAT

Functions in the Symposium Registration System
REGISTRATION
   Function - adds, cancels, updates data records on registered participants

PAYMENTS
   Function - adds, deletes, updates data records on payment details

PICKUP  *NOT CURRENTLY SUPPORTED
   Function - adds additonal information when a registered participant comes
              in for on-site registration (whether pre-registered or not)
              (eg. registered with Convention's hotel, Room No.)
EVENTS
   Function - lists, adds, deletes, updates data records on Symposium events

COUNTS
   Function - displays current participant counts for all events including
              Total attending, Total deleted, and next SRN

RECEIPTS
   Function - Prints the receipt form, according to the data entered by the 
              operator, on an LN03 printer

REPORTS
   Function - Reports on all data that is requiring up to-date listings
              of current data (standard reports).
   Data File RPT.COM generated (output file)

MESSAGES
   Function - Post announcements on a monitor for changes in program
            - Post a message for another participant to be picked up at the

                                                               Page 34


              Registration Desk or Information Desk
BACKUP
   Function - creates a copy of all data (.DAT) files on SRS$BACKUP 
              subdirectory using VMS BACKUP

BADGES
   Function - create a badge with the participants name, affiliation, city
              major events attending, and SRN

Additional Comments
        Payment accounting could be more robust

Helpful Hints -
                Registration - You may wish to enter a class code in the
                <CLASS> field.  This will assist you in identifying those people
                with a special classification (Central Engineering, Library,
                Board, Planning...)
                             - You CANNOT split 1st,2nd, and 3rd choices for
                seminars between 2 different days (however, this could be
                stored in the data record by inputting directly using DTR)

                Payments - every single payment/refund/credit is one
                transaction.  Use multiple "payments" to adjust your final
                balance and use the comment field if the entry requires some
                clarification. 

                Badges -  The program is set so that when your doing a batch
                run (Print ALL unprinted badges) 20 badges are printed at a
                time.  This is to enable the operator to
                        1) exit or,
                        2) adjust the Badge paper in case it got misaligned.
                If you require the Badge_flags in all Attendee records to
                be cleared use  DTR> :clear_badge_flags
                this procedure will reset all the Badge_flags
                this may be required if there has been some problem during
                a batch run or all the badges must be reprinted

                                                                        
APPENDIX A

                --- DATA DICTIONARY DEFINITIONS ---
DELETE ACOUNT;
REDEFINE DOMAIN ACOUNT
 USING ACOUNT_REC ON SRS$BACKUP:COUNTS.DAT;

DELETE ACOUNT_REC;
REDEFINE RECORD ACOUNT_REC
USING
ALLOCATION IS LEFT_RIGHT
01 ACOUNT_REC.
   15 NEXT_COUNT PIC X(4).
   15 NXT_CNT REDEFINES NEXT_COUNT.
        20 TYPE PIC X.
        20 REMAINDER PIC XXX.
   15 COUNTS     PIC 9(4).

                                                               Page 35


;

DELETE ANNOUNCEMENTS;
REDEFINE DOMAIN ANNOUNCEMENTS
 USING ANNOUNCEMENTS_REC
     ON SRS$BACKUP:ANNONCMNT.DAT;

DELETE ANNOUNCEMENTS_REC;
REDEFINE RECORD ANNOUNCEMENTS_REC
USING
ALLOCATION IS LEFT_RIGHT
01 ANNOUNCEMENTS_REC.
   15 MESNUM    PIC IS X(5).
   15 CODE      PIC IS X(1).
   15 CREATION_TIME     PIC IS X(8)
      QUERY_NAME IS CT.
   15 CREATION_DATE     PIC IS X(9)
      QUERY_NAME IS CD.
   15 DELETION_TIME     PIC IS X(8)
      QUERY_NAME IS DT.
   15 DELETION_DATE     PIC IS X(9)
      QUERY_NAME IS DD.                   
   15 TEXT      PIC IS X(300).
;

DELETE ATTENDEES;
REDEFINE DOMAIN ATTENDEES
USING ATTENDEE_REC ON SRS$BACKUP:ATTENDEES.DAT
FORM IS ATTENDEE_FRM IN [REGISTRATION.DECUS.FORMS]REGISTER;

DELETE ATTENDEE_REC;
REDEFINE RECORD ATTENDEE_REC
USING
ALLOCATION IS LEFT_RIGHT
01 ATTENDEE_REC.
05   DATE_CREATED USAGE IS DATE.
05   LAST_UPDATE  USAGE IS DATE.
05   SRN          PIC IS 9999.
05   RECORD_STATUS   PIC IS X.
05   TYPE_A_REC.
          15 CLASS_OPT  PIC XXXX.
          15 CLASS      PIC X.
          15 DECUS_NO PIC 9(9).
          15 FIRST_NAME PIC X(25).
          15 SURNAME    PIC X(20).
    07  ADDRESS.
          15 COMPANY    PIC X(30).
          15 ADDRESS_1  PIC X(30).
          15 ADDRESS_2  PIC X(30).
          15 CITY_PROV  PIC X(26).
          15 PROVINCE   PIC X(4).
          15 POST_ATTN  PIC X(24).
          15 POSTAL     PIC X(6).
          15 TELEPHONE  PIC X(10).
          15 MAIL_STOP  PIC 9999.

                                                               Page 36


05 FLAGS.
        15 CLASS_FLAG   PIC X.
        15 PREREG_FLAG  PIC X.
        15 LABEL_FLAG   PIC X.
        15 BADGE_FLAG   PIC X.
        15 BADGE_FLAG1  PIC X.
05 TYPE_P_REC.
          15 PAYABLE       PIC S9(8)V99.
          15 PAID          PIC S9(8)V99.
          15 BALANCE       PIC S9(8)V99.
          15 ACCOM_COMMENTS   PIC X(70).
          15 ACCOM_PARTS REDEFINES ACCOM_COMMENTS.
                20 HOTEL      PIC X.
                20 COMMENT    PIC X(69).
05 TYPE_E_REC.
!       10 REGISTRATION_BEFORE.
          15 P1         PIC 9.
          15 P2         PIC 9.
          15 P3         PIC 9.
          15 P4         PIC 9.
          15 P5         PIC 9.
          15 P6         PIC 9.
          15 P7         PIC 9.
          15 P8         PIC 9.
          15 P9         PIC 9XXX.
          15 P10        PIC 9XXX.
          15 P11        PIC 9.
          15 P12        PIC 9.
!   07 SITE TOUR.
          15 P13        PIC 9.
!   07 STUDENTS & DAYS.
          15 P14        PIC 9XXX.
          15 P15        PIC 9XXX.
          15 P16        PIC 9.
          15 P17        PIC 9.
          15 C_NAME     PIC X(40).
          15 C_PHONE    PIC X(10).
!   07 EXTRA TICKETS.
          15 XL         PIC 99.
          15 XB         PIC 99.
          15 XR         PIC 99.
!   07 MONDAY SEMINARS.
          15 MS_1ST_CHOICE      PIC XXXX.
          15 MS_2ND_CHOICE      PIC XXXX.
          15 MS_3RD_CHOICE      PIC XXXX.
!   07 FRIDAY SEMINARS.
          15 FS_1ST_CHOICE      PIC XXXX.
          15 FS_2ND_CHOICE      PIC XXXX.
          15 FS_3RD_CHOICE      PIC XXXX.
!   07 FRIDAY WORKSHOPS.
          15 FW_1ST_CHOICE      PIC XXXX.
          15 FW_2ND_CHOICE      PIC XXXX.
          15 FW_3RD_CHOICE      PIC XXXX.
!   07 FRIDAY TOURS.
          15 FT_1ST_CHOICE      PIC XXXX.

                                                               Page 37


          15 FT_2ND_CHOICE      PIC XXXX.
          15 FT_3RD_CHOICE      PIC XXXX.
!   07 LIBRARY TAPES.
          15 L1         PIC X.
          15 L2         PIC X.
          15 L3         PIC X.
          15 L4         PIC X.
;

DELETE CLASS_TABLE;
REDEFINE TABLE CLASS_TABLE
" ":"Proceedings only",
1:"Day pass FEB. 09",
2:"Day pass FEB. 10",
3:"Day pass FEB. 11",
A:"General Attendee",
C:"Committee Member",
E:"Exhibitor",
G:"Guest",
H:"Chairman",
N:"Non-DECUS member",
P:"Participant",
S:"Speaker",
X:"Executive",
ELSE "Not in table"
END_TABLE

DELETE CLEAR_BADGE_FLAGS;
REDEFINE PROCEDURE CLEAR_BADGE_FLAGS
READY TMP_A SHARED WRITE
FIND TMP_A
MODIFY ALL USING BEGIN
BADGE_FLAG=" "
BADGE_FLAG1=" "
END
END-PROCEDURE

DELETE DECUS;
REDEFINE DOMAIN DECUS USING DECUS_MEMBERS ON
SRS$DATA:MEMBER.DAT
FORM DECUS IN [REGISTRATION.DECUS.FORMS]DECUS;

DELETE DECUS_MEMBERS;
REDEFINE RECORD DECUS_MEMBERS USING
01 DECUS_REC.
        05 DECUS_NO PIC 9(9).
        05 M_TYP        PIC X.
        05 M_STATUS     PIC X.
        05 M_RATE       PIC X.
        05 POSTAL       PIC X(12).
        05 M_COUNTRY    PIC XX.
        05 M_REGION     PIC XX.
        05 PROV         PIC X(15).
        05 NAME         PIC X(30).
        05 NAME_PTR     PIC X.

                                                               Page 38


    03  ADDRESS.
        05 COMPANY      PIC X(30).
        05 COMP_PTR     PIC X.
        05 N1           PIC X(30).
        05 ADDRESS_1    PIC X(30).
        05 ADDRESS_2    PIC X(30).
        05 CITY_PROV    PIC X(30).
        05 TELEPHONE    PIC X(20).
        05 FILLER       PIC X(211).
;

DELETE EVENTS;
REDEFINE DOMAIN EVENTS
 USING EVENT_REC ON SRS$BACKUP:EVENTS.DAT;

DELETE EVENTS_TABLE;
REDEFINE TABLE EVENTS_TABLE
"P1  ":"Seminar only ",
"P2  ":"Extra Seminar Supplement",
"P3  ":"Seminar/Symposium",
"P4  ":"Seminar/Symposium/Workshop",
"P5  ":"Seminar/Symposium/Site Tour",
"P6  ":"Seminar/Workshop",
"P7  ":"Symposium/Site Tour",
"P8  ":"Symposium only",
"P9  ":"Symposium - 1 Day",
"P10  ":"Symposium - 2 Days",
"P11 ":"Fri. Workshop - Half Day",
"P12 ":"Fri. Workshop - Full Day",
"P13 ":"Fri. Site Tour",
"P14 ":"Students - 1 Day",
"P15 ":"Students - 2 Days",
"P16 ":"Students - 3 Days",
"P17 ":"Companions' Program",
"XL  ":"Extra Luncheon Tickets",
"XB  ":"Extra Banquet Tickets",
"XR  ":"Extra Reception Tickets",
"M1  ":"Making Time Work For You",
"M2  ":"RSX Realtime and Performance Issues",
"M3  ":"Networks, Communications & Protocols",
"M4  ":"Introduction to the C Language",
"M5  ":"VMS Performance",
"M6  ":"Integrating PCs and LANs with VAX",
"M7  ":"Introduction to UNIX",
"M8  ":"Building Applications in 4GL and DBMS Environment",
"M9  ":"Introduction to VAX/VMS System Management",
"F1  ":"Effective Utilization of RMS",
"F2  ":"Developing Training Programs for End-Users",
"F3  ":"Advanced C Language Tips",
"F4  ":"Network Design for PC and Workstations",
"F5  ":"Hitchhiker's Guide to VMS Internals",
"F6  ":"VAXBI - DEC's High-Performance Bus",
"F7  ":"X.25 and PSI Technical Overview",
"F8  ":"Advanced Ethernet Concepts and Configurations",
"F9  ":"Introduction to VAX/VMS Perfomance Management",

                                                               Page 39


"F10 ":"Seminar en Francais"
"W1  ":"Workshop 1",
"W2  ":"Workshop 2",
"W3  ":"Workshop 3",
"W4  ":"Workshop 4",
"S1  ":"Site Tour 1",
"S2  ":"Site Tour 2",
"S3  ":"Site Tour 3",
"S4  ":"Site Tour 4",
"L1  ":"VAX/VMS     TK-50  Library Tape",
"L2  ":"VAX/VMS  1600 BPI  Library Tape",
"L3  ":"RSX      1600 BPI  Library Tape",
"L4  ":"PC/VAXMATE  RX-50  Library Tape",
"NSRN":"Next available Symposium Registration No.",
"NMES":"Next available Message record no.",
"NPAY":"Next available Payment record no.",
"TOTA":"Total Attendees to-date",
"TOTD":"Total Attendee records deleted",
ELSE "NOT IN TABLE"
END_TABLE

DELETE EVENT_REC;
REDEFINE RECORD EVENT_REC
USING
ALLOCATION IS LEFT_RIGHT
01 EVENTS_REC.
15 ASSIGNED_E_CODE      PIC 9999.
15 EVENT_CODE      PIC XX99.
  15 EVENT_CODE_PARTS REDEFINES EVENT_CODE.
  25 EVENT_TYPE    PIC X.
  25 HYPHEN        PIC X.
  25 EVENT_NUMBER  PIC 9.
25 ASSOCIATED_DATE PIC 9.
15 EVENT_DESC      PIC X(40).
15 EDATE        USAGE IS DATE.
15 COST        PIC 9(4)V99 EDIT_STRING $(4).99.
15 TIME_CODE    PIC 9999.
15 MAX_NO       PIC 999.
15 WALKIN_COST        PIC 9(4)V99 EDIT_STRING $(4).99.
;

DELETE HOTEL_TABLE;
REDEFINE TABLE HOTEL_TABLE
"Y":"l'Hotel",
"y":"l'Hotel",
ELSE "OTHER"
END_TABLE

DELETE INDEX;
REDEFINE PROCEDURE INDEX
DECLARE IDX PIC 9999.
IDX=0
FOR CURRENT BEGIN
IDX=IDX + 1; PRINT IDX, SRN,SURNAME||', '||FIRST_NAME ON *."Output Device"
 END

                                                               Page 40


END-PROCEDURE

DELETE LANGUAGE_TABLE;
REDEFINE TABLE LANGUAGE_TABLE
"X ":"English",
" X":"French",
"XX":"Eng-Fre",
ELSE "Not Specified"
END_TABLE

DELETE LETTER_LIST;
REDEFINE PROCEDURE LETTER_LIST
REPORT CURRENT ON LETTER.LIST
SET NO REPORT_HEADER
SET NO COLUMN_HEADER
SET LINES_PAGE = 90000
PRINT COL 1, SURNAME, SKIP,
COL 1, FIRST_NAME, SKIP,
COL 1, COMPANY, SKIP,
COL 1, ADDRESS_1, SKIP,
COL 1, ADDRESS_2, SKIP,
COL 1, CITY_PROV,
COL 1, POSTAL, SKIP,
COL 1, "-----------------"
END_REPORT
END-PROCEDURE

DELETE LOCATE;
REDEFINE PROCEDURE LOCATE
READY ATTENDEES
FOR ATTENDEES WITH SURNAME CONTAINING *."Attendee's Surname or part of (ie. BOYD)" BEGIN
PRINT FIRST_NAME||" "|SURNAME, HOTEL, COMMENT USING T(23)
END
END-PROCEDURE

DELETE MESSAGES;
REDEFINE DOMAIN MESSAGES
 USING MESSAGES_REC
     ON [REGISTRATION.DECUS.DATA.BACKUP]MESSAGES.DAT;

DELETE MESSAGES_REC;
REDEFINE RECORD MESSAGES_REC
USING
ALLOCATION IS LEFT_RIGHT
01 MESSAGES_REC.
   15 MESNUM    PIC IS X(5).
   15 CODE      PIC IS X(1).
   15 CREATION_TIME     PIC IS X(8)
      QUERY_NAME IS CT.
   15 CREATION_DATE     PIC IS X(9)
      QUERY_NAME IS CD.
   15 DELETION_TIME     PIC IS X(8)
      QUERY_NAME IS DT.
   15 DELETION_DATE     PIC IS X(9)
      QUERY_NAME IS DD.

                                                               Page 41


   15 TEXT      PIC IS X(25).
;

DELETE MOD_COMMITTEE_FLAG;
REDEFINE PROCEDURE MOD_COMMITTEE_FLAG
DECLARE TMP PIC X.
READY ATTENDEES WRITE
FOR ATTENDEES WITH SURNAME STARTING *."SURNAME (or part of)" BEGIN
TMP=*."Specific Committee flag"
MODIFY USING CLASS=TMP
END
END-PROCEDURE

DELETE PAYMENTS;
REDEFINE DOMAIN PAYMENTS
 USING PAYMENT_REC ON SRS$BACKUP:PAYMENTS.DAT
;

DELETE PAYMENT_REC;
REDEFINE RECORD PAYMENT_REC
USING
ALLOCATION IS LEFT_RIGHT
01 PAYMENT_REC.
15 PAY_NUMBER      PIC 9(5) QUERY_NAME PN .
15 DATE_CREATED    USAGE IS DATE.
15 LAST_UPDATE     USAGE IS DATE.
15 SRN             PIC 9(4).
15 NAME            PIC X(30).
15 PRC_FLAG        PIC X.
15 AMOUNT          PIC 9(7)V99.
15 CANCEL_FEE      PIC 9(7)V99.
15 PFI_FLAG        PIC X.
15 PAYMENT_TYPE    PIC X.
15 PAYMENT_DETAILS PIC X(60).
;

DELETE PAYMENT_TOTALS;
REDEFINE PROCEDURE PAYMENT_TOTALS
READY PAYMENTS
FIND PAYMENTS WITH DATE_CREATED AFTER *."After date: " SORTED BY PRC_FLAG, NAME
REPORT ON PAYMENTS.LIS
SET COLUMNS_PAGE = 132
SET REPORT_NAME = "PAYMENTS AT THE SYMPOSIUM"
AT TOP OF PRC_FLAG PRINT PRC_FLAG VIA PRC_FLAG_TABLE
AT BOTTOM OF PRC_FLAG PRINT TOTAL(AMOUNT)
PRINT CRN, NAME USING X(15), AMOUNT, PAYMENT_TYPE VIA PAYMENT_TYPE_TABLE, PAYMENT_DETAILS
END_REPORT
END-PROCEDURE

DELETE PAYMENT_TYPE_TABLE;
REDEFINE TABLE PAYMENT_TYPE_TABLE
1:"Cash",
2:"VISA",
3:"MASTERCARD",
4:"Business cheque",

                                                               Page 42


5:"Personal cheque",
6:"Traveler's cheque",
7:"Bank Charges",
8:"Other",
ELSE "Undefined"
END_TABLE

DELETE PRC_FLAG_TABLE;
REDEFINE TABLE PRC_FLAG_TABLE
D:"Discount",
G:"Gratis",
P:"Payment",
R:"Refund",
ELSE "Undefined"
END_TABLE

DELETE TMP;
REDEFINE DOMAIN TMP USING ACOUNT_REC ON SRS$DATA:COUNTS.DAT;

DELETE TMP_A;
REDEFINE DOMAIN TMP_A USING ATTENDEE_REC ON [-.DATA]ATTENDEES.DAT;

DELETE TMP_E;
REDEFINE DOMAIN TMP_E USING EVENT_REC ON SRS$DATA:EVENTS.DAT;

 
VD3:[VAX91B.CANADA.VANC89.ADD_LIST]AAAREADME.FIRST;1
 
The command file ADD_LIST.COM will add a definition (P2) to a
library list (P1).  The ususal library lists are HLP$LIBRARY
and LNK$LIBRARY, the only two I have yet encountered that use
this method.  P2 is defined as the translation (in the JOB
table) of the first of the following that is undefined:

        'P1'
        'P1'_1
        'P1'_2
        ...

Example:

        HLP$LIBRARY and HLP$LIBRARY_1 are defined.
        Then the command @ADD_LIST HLP$LIBRARY FOO.BAR
    will execute the command

        $ DEFINE HLP$LIBRARY_2 FOO.BAR
 
VD3:[VAX91B.CANADA.VANC89.MUN]AAAREADME.FIRST;1
 
     
    KEYPAD Programming Kit                              January 26, 1987
    ======================
     
        Prepared by William R. Garland for DECUS.
     

                                                               Page 43


                        Wm. R. Garland, Manager
                        Computer Services (Medicine)
                        Health Sciences Centre
                        St. John's, Nfld.
                        A1B 3V6

        INTRODUCTION       The following is a precis of an article from the
        ------------       MUN Faculty of Medicine Computer Services Newsletter.
     
        Those of you who have been around long enough to remember line-
        oriented editors will remember the great improvement in personal
        productivity that occurred when keypad editting arrived. People used
        to the many DIGITAL operating systems (RSTS/E, RSX, RT-11, VMS, TOPS)
        will know about TECO. TECO, which stands for Text Editor and COrrector,
        is an editor extraordinaire, which allows one to write editting
        programs, that is, programs which operate on text files (such as
        manuscripts, programs, documentation, etc.). One of the fancier features
        of TECO is VTEDIT, for Video Terminal EDITor, which is a TECO program
        that made one's screen come alive by providing instant feedback about
        the content of one's file by always displaying an up-to-date, screen-
        sized window into the file, and which allowed single keystroke commands
        to perform editting functions (such as search and replace, cut and
        paste, advance or backup in the text by a specified entity such as
        paragraph, sentence, word).
     
        There were some technical problems with TECO on the older systems,
        especially in that it was a resource hog. TECO was, however, a
        'freebee', written by dedicated hacks and provided to DECUS members.
        As such, it was an 'unsupported product'. There were some thirty-five
        or forty different versions of TECO over the years, and many survive
        today. Eventually, however, DIGITAL was forced to provide a 'supported'
        video editor, and they invented EDT, which did many of the things TECO
        did, although not all, but a few others as well. EDT became the standard
        text editor, and its most important feature was, again, keypad editting.
        EDT itself has now become old and is being replaced by TPU, the Text
        Processing Utility, which is the subject of another article.
     
        The point of all this is that the use of the keypad to provide single
        keystroke commands went a long way towards providing the individual
        programmer and other users with some of the power of the computer with
        which to perform editting tasks. The same phenomenon has occurred at the
        operating system level on VMS. One can now define keys to perform DCL
        (DIGITAL Command Language) commands, and, now that I am using these
        features, I wonder how I ever did things before.
     
        .....
     
        This programming kit includes the command files and a small patch
        one must apply to one's LOGIN.COM file in order to do use the keypad
        effectively. Individuals will want to start with blank files and
        define keys for themselves as they go. Crucial to the process is
        the DEFINE/KEY command, which is well DECumented.
     
        You should already be beyond the novice stage to use these tools,
        however, because it is vitally important that you understand fully the

                                                               Page 44


        steps in the program development cycle and the concepts of symbols and
        logical names used on VMS. Also, you should be able to invent many new
        tools of your own to add to the kit. Send me feedback, if you wish.

 
VD3:[VAX91B.CANADA.VANC89.PAXLUG]AAAREADME.FIRST;1
 

Submissions from PAXLUG Montreal


CONVERSION.C - A program to convert French ascii characters between the
               VAX, IBM PC and MACINTOSH. Uses external conversion tables
               in files which are assumed to be in the default directory.
               
                Submitted by Michel Savoie - Centre de Recherche d'Informatique
                de Montreal, 1550 de Maisonneuve O. Suite 1000, Montreal
                H3G 1N2 - 848-3983

PACK2DCL.COM - Command procedure to pack files together in a single container
                suitable for VMS MAIL. The container file will unpack itself
                when invoked as a DCL command procedure. Handles various
                types of binary files (libraries, executables etc.) without
                a problem and works over PSIMAIL. New version (with bug fixes)
                of procedures submitted last Year.  Invoke without arguments
                for more info. Submitted by C. Singleton - Tordion Consulting,
                2394 Park Row W. Montreal H4B 2G4 (514) 481-7908.

 
VD3:[VAX91B.CANADA.VANC89.UWO]AAAREADME.FIRST;5
 

                           UWO VAX ACCOUNTING UTILITY
                      COMPUTING AND COMMUNICATIONS SERVICES
                        THE UNIVERSITY OF WESTERN ONTARIO
                    CHRIS LEE & BRENT STERNER - FEBRUARY 1988



        Overview

                                                                        r
        The  "master" accounting system at UWO CCS is written in ACCENT '
                                                          r
        on our DECsystem-10, and will be ported to ACCENT ' on the VAX in
        the  next  year.    The  VAX  accounting  system described herein
        provides charging records for, and  receives  update  information
        from, that master system.

        The  VAX/VMS  operating  system provides an excellent audit trail
        which can be used in many ways.  After significant effort  trying
        to  make  an  interactive product from another site function, and
        after considering the merits (and  cost)  of  several  commercial
        products, UWO CCS decided to write its own VAX accounting utility
        from scratch, using VAX C as the programming language.

                                                               Page 45



        In summary, the UWO accounting utility tracks the VMS audit trail
        (ACCOUNTNG.DAT)  "live",  providing users of the VAX with account
        balances  and  session  cost  information.    Shift  and  holiday
        discounts  are  implemented,  as  are special rates for print and
        batch queues.

        The Components

        There are two discrete software components to the system.

           - DAEMON processor (the heart of the system)

           - USER interface (communications to the DAEMON)

        This product is now running on the VAXcluster (8600 and 8550)  in
        CCS  at  UWO.    The  latest  efforts  have been to stabilize the
        software and to package it suitably for DECUS distribution.   The
        product  was designed to fit our shop's unique circumstances, but
        should be easily extensible by any site having  Digital's  VAX  C
        compiler.    This  is our first effort at writing a large package
        from scratch using "C", and  we  welcome  suggestions  and  other
        comments.  

        The User Interface Utility

        This  component  provides  communication  between  users  and the
        DAEMON using VMS mailboxes.  Several "commands" have been defined
        to  invoke  the DAEMON, including LOGIN (so that the DAEMON knows
        about a new user), COST (so that the DAEMON can report a  session
        cost  to a user), and BYE (so that a user can be presented with a
        charge on his screen which  is  guaranteed  to  match  the  final
        session  bill).   Special privileged functions provide control of
        the system (for example closing of the charging files at midnight
        and  reading in updated account balances when they are determined
        daily from the master database).  

        The Accounting Daemon

        This component is the heart of the centralized accounting product
        for  the VAX.  It is initiated with system startup files when VMS
        is  booted.    Initialization  files  define   necessary   rates,
        holidays,  shift discounts, account balances, and the most recent
        "snapshot" if a restart of the DAEMON is requested.  All elements
        of  the  system  which are likely to change at our site have been
        defined in these files, so that rebuilding the utility is  not  a
        frequent necessity.

        Periodically,  this  module  reads (beginning where it previously
        left off) the VMS system accounting file (ACCOUNTNG.DAT)  through
        to  its  new  end of file, and updates the billing file (which is
        maintained as a parallel file for downstream input to the  master
        accounting system).  The period for this processing is defined in
        the initialization files (one minute  works  just  fine  for  our
        system).

                                                               Page 46



        At specified times, this component closes both the VMS accounting
        file and the billing file, keeping them in synchronization.    At
        UWO CCS, this occurs daily at midnight.

        Periodic  snapshots  are taken of all system users, consolidating
        charges for the most recent snapshot period.  Charging rates  may
        change  at  any snapshot boundary.  At UWO, rate changes occur on
        the  hour,  and  snapshots  occur  every   10   minutes.      The
        initialization files define these time frames.

        On  request from any user (through the user interface), a session
        cost calculation is performed.  All information relating  to  the
        session  cost,  are tallied as dollars and cents, and returned to
        the user via the user interface.

        On request (again through  the  user  interface),  a  "preferred"
        logout   process   is  performed.    This  first  implements  the
        equivalent of the cost  request.    Then  the  daemon  stops  the
        process  and creates the billing record.  The charge displayed to
        the user in this  case  is  remembered,  and  propagated  to  the
        billing file, guaranteeing consistency.

        All  requests from the user interface are processed with a higher
        priority than timed events. This was done to prevent unacceptable
        delays  during  such  events  as  snapshots.  Most user interface
        requests are processed in less than one second elapsed time.  The
        daemon  currently  runs  with elevated priority as a batch job to
        ensure timely response to user requests.

        If a user logs off in some other manner, it is his  choice.    He
        loses the logoff display of the session cost, but the VMS session
        termination entry  is  eventually  cut  and  processed,  and  the
        parallel entry still made in the billing file.  In this case, the
        session cost is determined when  the  daemon  "catches"  the  VMS
        entry in ACCOUNTNG.DAT.  

        Futures

        It would be nice to integrate a modified print symbiont with this
        system, so that the cost of a print task could  be  displayed  on
        the trailer page.  To date, this is still a dream.
 
VD3:[VAX91B.CANADA.VANC89.WORD11]AAAREADME.FIRST;1
 

This directory contains three Word-11 extras that were developed by 

                Brad L. Tinney
                Canadian Hydrographic Service
                867 Lakeshore Road
                Burlington, Ontario
                L7R 4A6
                (416) 336-4728


                                                               Page 47


 These are currently running on version 4.1 of Word-11. These items have been
 placed in the public domain and previous versions have been previously
 submitted to DECUS. They include a VMS access help file, a startup file memo
 form for the LN03 laser printer (eg. this page), and an index utility that
 gives a directory of Word-11 documents that includes the revision date and
 number of disk blocks as well as the document name and number (output can be
 sorted by any entry). 

 
VD3:[VAX91B.CANADA.VWS_CRIBBS]AAAREADME.FIRST;1
 

                  The Screen-Print and Screen-Save Utilities
                                      by
                                 Steve Cribbs
                       Atomic Energy of Canada Limited
                          Pinawa, Manitoba   R0E 1L0

    This submission consists of two VWS VAXstation specific programs 
that make use of the mouse-controlled copy and paste functions.  These
programs are intended for use only by a user logged in through the
VAXstation's windowing interface - don't run them from a terminal.  Text
file MOUSE_COPY_PASTE.TXT provides a brief explanation of the new VWS
mouse features.

    The Screen-Print program enables users to print a snap-shot of the
visible text in any of the windows on their screen.  This is similar
functionality to that provided by the [Print Screen] key on a DEC VT-200
or VT-300 series terminal which writes to a printer connected directly
to the terminal.  Screen-Print offers several extended capabilities.
With this program, users may route the text snap-shot to any print queue
defined for their VAXstation.  The text sent to the printer may be part
or all of the text visible within a window.  Users may also take
advantage of any of the VMS PRINT command options - such as specifying a
particular output format (eg. /form=LETP1).  Several copies of Screen-
Print may be running at the same time providing access to multiple print
queues and/or various output formats.

    Screen-Save offers the capability of capturing the text contents of
a workstation window into a file.  Part or all of the window's text may
be written out.  The contents of several windows may be combined in a
single file.  By default, the output file is created in the current
directory and is named SCREEN_SAVE.TXT.  Users may over-ride that file
specification.

    These two programs are intended as "handy gadgets" that the
VAXstation user may call up quickly as a need for them arises.  Once you
have logged in initially, by responding to the VMS' Username and
password prompts, new processes for the same account can be quickly
begun.  Simply select the "Create new VT220 window" option from the main
menu and type either command SPRINT[Return] or SSAVE[Return] when the
new window appears.  Through this method, Screen-Print and/or Screen-
Save may run along with your regular work sessions.  They have been
designed to automatically shrink to icon size as they start up and then
can be conveniently nudged to an unused corner of the screen or pushed

                                                               Page 48


into the background.  A simple mouse selection action recalls the
programs for use when needed.

    Remember, these utilities are only available to people logged in
through the VAXstation's windowing monitor.  A more detailed description
of operation and optional features is presented on your screen when the
programs are started with the following commands:

              SPRINT HELP[Return] and SSAVE HELP[Return]

========> [VAX91B.DATEBOOK]AAAREADME.TXT;1 <========



Datebook is a calendar program that keeps track of appointments for specific
times and dates as well as recurring (daily, weekly, monthly, yearly) events.
Calendar entries may be at a specific time or have no time associated with them.
Datebook will also keep track of general 'to do' lists, phone numbers, etc.

Remind is an accompanying program that runs in the background and will display
a message 10 minutes before, 5 minutes before and at the time of the calendar
entry.

========> [VAX91B.DECUSERVE_TAPES]AAAREADME.TXT;4 <========



VD3:[VAX91B.DECUSERVE_TAPES.1991_B.CONNEX]AAAREADME.FIRST;1
         
                                    CONNEX
                 External Dialup Connection Control Facility

         The CONNEX program is a rather crude hack of the DECUS UUCP
         UUCICO program. It manages dialup connections to external
         systems using a system and port database and scripting
         facility similar to that used by UUCP. It allows the user to
         use his own choice of technique for the actual data transfer.
         It is designed with automated batch transfers in mind.
         See CONNEX.RNO for details.

                                        George Merriman
                                        Cambridge Computer Associates
                                        New York City
                                        merriman@camb.com
 
VD3:[VAX91B.DECUSERVE_TAPES.1991_B.MASTER_MENU]AAAREADME.FIRST;1
 
Submission Title:       <One-line title>
        MASTER_MENU
    
Submitter/Author: 
    
        Chuck McMichael
        Pittsburgh Corning Corp.
        412-327-6100
    
Abstract: 
    
        MASTER_MENU is a set of four command procedures and one executable image
        that resides in SYS$MANAGER: and provides a set of customized menus
        based on the user's account name.  At startup, it creates one logical
        name per menued application (ITEM_application) and one per username
        (USER_username) in its own logical name table. 
    
VD3:[VAX91B.DECUSERVE_TAPES.1991_B.MEMO]AAAREADME.FIRST;1
 
Submission Title:       MEMO
    
Submitter/Author: 
    
        Jack Harvey 
        c/o GWA Information Systems
        1432 Main Street
        Waltham, MA, 02154    Telephone (617)890-1838
    
Abstract: 
    
    MEMO stores a small amount of your data in the Access Control List
    (ACL) of a VMS ODS-2 disk file.  It allows attaching (pasting on, so to
    speak) additional information about the file, or the environment of the
    file, without disrupting the normal file data or structure.  The file
    may be any VMS/RMS supported type.

                                                                Page 2



    For example, the auxiliary data might declare something special about
    the file:  "This file used for acceptance testing of PAYROLL II at Acme
    Bootstraps, on 3-Jan-91". Or, "Received from Paris office, 3/9/91". 
    Data may be stored as ASCII strings as in these examples, or in binary
    expressed as decimal or hexadecimal values.  Data can be in multi-field
    mixtures of these.

VD3:[VAX91B.DECUSERVE_TAPES.1991_B.NEWHELP]AAAREADME.FIRST;1
 

                                  NEWHELP
            Screen-Oriented Help for Character Cell Terminals

     This program uses an SMG window to provide scrolling help text 
     from the system help library. It works very much like the normal
     VMS help command, but does not support any command line
     qualifiers. Prev-Screen and Next-Screen scroll through the text.
     PF1-Prev-Screen and PF1-Next-Screen scroll to the top and bottom
     of the text. The command line prompt is a little different from
     that in the standard HELP command, but is easy to use with
     command line editing. Broadcast message are trapped and displayed
     on the bottom of the screen.

     NEWHELP must be defined as a foreign command. A DCL command
     similar to the following will replace the standard HELp command
     with NEWHELP:

        $ h*elp :== $<directory>NEWHELP

                                        George Merriman
                                        Cambridge Computer Associates
                                        New York City
                                        merriman@camb.com
 
VD3:[VAX91B.DECUSERVE_TAPES.1991_B.TK-LABELS]AAAREADME.FIRST;1
 
Submission Title:  TK-LABELS  Version 1.1  28-Sep-1991

Submitter/Author:
        Jack Harvey
        GWA Information Systems
        (617)890-1838

Abstract:
TK-LABELS converts a simple editor text file into an LN03 print file to 
produce a sheet of labels for the TK50/TK70 cartridge.  It prints a grid of
fine lines to guide cutting the sheet into individual slips that will fit
the cartridge label window. The text, which is variable length and may contain
up to eight lines, is attractively centered in the window.  There are up to
33 labels per sheet, printed on ordinary stock paper.

The printer used must be an LN03 (or compatible) but does not require any
advanced features, such as Post Script.


                                                                Page 3


Computer and O/S Version Information:

        VAX/VMS, any version from V4.7

VD3:[VAX91B.DECUSERVE_TAPES.1991_B.UAI]AAAREADME.FIRST;1
                               AAAREADME.TXT

    This submission contains two different programs that allow a DCL
    command file to easily determine what the actual login.com file is for
    a VMS account. This is the content of the LGICMD field of the record in
    the user authorization file, SYSUAF.DAT, for the account.  

    Both programs execute very quickly and return the content of LGICMD as
    a DCL symbol, UAI_LGICMD.

    The first, UAI_LGICMD.MAR, is a bare minimum program which assembles
    and links to produce a small (5 blocks) executable image.  It works
    only for the current process.  It is simply run, with no arguments.

    The second program, UAI_LGICMD.BAS, is a more sophisticated program 
    which defines the same DCL symbol, but can also be executed as a
    foreign command and takes an argument.  The argument is a username in
    the authorization file.  If the executing account has SYSPRV, the
    program will return the content of LGICMD for any account in
    SYSUAF.DAT.  


========> [VAX91B.DECWLOGINDOC]AAAREADME.TXT;1 <========



DECWLOGINDOC.PS is a file in postscript describing how LOGIN works on
DECWindows and how to control it and its defaults.

========> [VAX91B.DINKEY]AAAREADME.TXT;2 <========



The programs in this directory permit users to compare entire 
directories merely by pointing the respective programs at the 
directories.  If there is no match the next file name is used until
all of the files that have corresponding files have been compared.

In case of having the requirement that there be hard copy of the 
comparison for the purposes of governmental documentation, the 
'output' option is included.

The format of the command is:

$ @diffcomp directory1 directory2
        sample:
$ @DIFFCOMP DRA0:[A.B.C]  DRA0:[A.B.D]

========> [VAX91B.DNORTH]AAAREADME.TXT;2 <========



...]000READ.ME
--------------
I. Library DNORTH:
 Programs by directory:
        1LOGIN  - Selectively allows single login per user per vaxcluster.
                Another 'stupid DCL trick'', but some folks could use something
                like this (a site I worked for needed one!)  Also a number of
                small DCL tricks too small to mention, but handy if you need'em.
        C       - Lexical analyzer, C declaration parser, ACL blaster.
        CD      - MSDOS-like CD command w/extra features
                This command provides a CD command to VMS users that is
                similar in some ways to the MSDOS CD command.  It also
                provides methods for a user to define 'format' symbols which
                allow brief specifications for structured directory path
                formats.  Wildcards now supported.  Nice LIB$TPARSE example too!
        DETACHED - Useful tools for detached programming
        DO      - 'DO' a DCL command.
                Comes right out of the 'stupid DCL tricks' grab-bag.
                Good only for not depositing a command into the recall buffer.
        DSF     - Data Security Facility
                This is a small encryption facility used to keep prying eyes
                and privileges out of your private data.  HEX, BLOCK, and
                wildcards are supported on the newest version.
        ENTER   - Enter a specific file_id as a filename
                Used to enter a specific FID as a specified filename... useful
                for recovering TMD (marked for delete) files, or files that
                a user has $ SET FILE/REMOVEd.
        PATCHER - Procedure to force an image to call another shareable
                image for patching purposes... greatly simplifies some types
                of PATCH operations.
        PRV     - SET PRIVILEGE shortcut + set privileges for another process
                This procedure may be used as a much briefer way to do a
                $ SET PROC/PRIV=(list).  It also may be used to alter the
                privileges of another user.  Nice LIB$TPARSE example too!
        RMVFIL  - Try to remove a leftover file from INSTALL bug
                VMS V5.1-1 and V5.3 (at least) have a bug in INSTALL that can
                leave files open on a drive, and no way to close them.  This
                program may be used (as a last resort only) to force those
                files closed.  Also included are patches for VMS V5.1-1 and
                VMS V5.3-1 INSTALL which will prevent the problem.
        SETDATE - Set any/all file dates for wildcard specification.
                Provides a user capability to set any date on any file they
                can write to.  Two versions of the .CLD provided, one for
                managers, one for users.  Manager version changes anything,
                user version can only 'touch' or 'reset' a file's dates.
        SETUP   - Partial (in fact fairly complete) replacement for LOGIN.COM
                Implements most readily programmable aspects of what you need
                in a LOGIN.COM.  It is also node and mode -sensitive in the
                operations performed.
        SIGVEC  - Method to use LIB$SIGNAL to simultaneously call SYS$PUTMSG
                and control program flow. *** USED BY PERMISSION OF THE VAX
                PROFESSIONAL TECHNICAL JOURNAL ***
        TRACE   - Programmer callable utility to trap program traceback to a
                file.  The originating program is called back during image
                exit to allow the program to perform some action with the

                                                                Page 2


                newly created trace dump such as using callable mail to mail
                the dump to a programmer.
        TTFISW  - Procedure to allow a pre-loading of the typeahead buffer for
                a terminal-oriented application.  PY/TW programming example.
        UWDIMGSTA - User-written-debugger 'catcher' program.
                Modifies default behaviour of RUN command.  May also be used
                to bypass INSTALL's prevention of running an image with
                /TRACEBACK.  Misc. debugger control utilities.  Force an
                image into debug even though it was linked /NOTRACE.

========> [VAX91B.FLOWERS]AAAREADME.TXT;1 <========



   ___  ___  _____  ___ ___
   |  \/  | / ____\ | | | |
   | \  / | \____ \ | |_| |                  FALL 1991 VAX SIG TAPE SUBMISSION
   |_|\/|_| \_____/ \_____/
   Memphis State University

   Harry Flowers                          Internet: FLOWERS@MEMSTVX1.MEMST.EDU
   112 Admin Bldg                           Bitnet: FLOWERS@MEMSTVX1
   Memphis, TN 38152                         Phone: (901) 678-2663

   +-------------------------------------------------------------------------+
   | Disclaimer: The author, Memphis State University, and DECUS assume no   |
   |             responsibility for the use or reliability of this software. |
   +-------------------------------------------------------------------------+


   SUBMISSION DIRECTORY
   ====================

AAAREADME - This text file.  Most of these submissions require VMS 5.4
        or later.  The programs were linked with VMS V5.4-2.  If you're
        using an earlier version, you'll need to re-link them.  Remember
        to link /NOTRACE the ones requiring installation with privileges.
        Object files are included for those without a compiler for that
        language.  Documentation files with .PS types are PostScript and
        files with .LN3 are LN03/LN05/LN06 (not postscript "R" versions)
        compatible.  As I use most of these programs regularly, I would be
        interested in any problems of a general nature you may have with
        them, or enhancements which would prove generally useful.  Enjoy!

ABSTRACT - Included because this is also being submitted to the DECUS
        library.  It includes the abstract for the library catalog.


   Corrections and enhancements to previous submissions:
   -----------------------------------------------------

ASKOPER - Get an operator reply (like REQUEST/REPLY) in a symbol.
        Increased request text to maximum (255 characters).

CSWING - Directory and file management tool, C Swing v3.5.4.
        Many new features and bug fixes.  See the documentation for details.
        [.CSWING] - Contains sources for C Swing
        [.CSWING.DOC] - Contains sources for help and documentation.
        [.CSWING.OBJ] - Contains object files; the original is linked under
        VMS V5.4-2, so you'll need to go to the [.CSWING] directory and
        @LINK_V5 if you're running a previous version of VMS.
        Even if you don't try anything else here, you should try this.

DISK - Reports free disk space.
        Actually, this is a complete re-write, not a modification of the
        old version.  Added stripe set support and bar graph.

DISK_MOUNTER - Mounts disk drives; call from startup command files.
        Made modifications to support more than two disk bound volume

                                                                Page 2


        sets.  (Does not support mounting stripe or shadow sets.)

DISK_WATCHER - Monitors free disk space.
        Changed to work with stripe sets.  See command file for setup.

MASTER - Allows a nonprivileged holder of a nnn_MASTER identifier to grant
        or revoke any existing nnn_* identifier to any user.  The program
        must be installed with CMKRNL, SYSPRV, and WORLD.  This is intended
        to allow project managers to control access to their projects without
        having elevated privileges.  Using ACLs with these identifiers allows
        very fine control over files and types of access.  Changed to log
        changes to a file.  You must define a logical MASTER_LOG as follows:
        $ DEFINE/SYSTEM/EXEC/NAME=NO_ALIAS MASTER_LOG dev:[dir]logfile.ext
        The /EXEC and /NAME=NO_ALIAS are important, as MASTER makes no attempt
        to make sure the name is in the correct mode or table.

MENU - DCL Menu System V2.2.
        Changed to handle variable terminal page lengths.

SYSFILES - Check page and swap file usage.
        Changed to allow for no swap file.

SYSTAT - System status program (works cluster-wide).
        Minor bug fixes and exit status change when no matching records.

WILDCMD - File command substitution for wildcard file commands.
        Old FILCMDSUB.COM procedure.  Minor improvements for wildcard check;
        should be slightly faster.  Basically allows wildcarding in any DCL
        command, with flexibility with names, like renaming *.* to *.*-OLD.
        Easy to use, see command file for directions, syntax, and examples.

   New submissions:
   ----------------

DYNPRI - Dynamic priority adjustments.
        This program runs detached and modifies priorities of interactive
        processes based on their CPU time and the total available.  This
        effectively places interactive jobs that should be run in batch
        down to batch priorities.  Great aid to response time when ten
        users decide to run CPU-bound programs at the same time.  Start
        it with the command file.  Documentation is in the program source.
        Note that the logicals DYNPRI_MAXPRI and DYNPRI_MINPRI are only
        read on startup, and DYNPRI_STOP is checked every 30 seconds.

GET_BROADCAST_CLASSES - Define a symbol with enabled broadcast classes.
        This program defines a symbol BROADCAST_CLASSES that contains the
        current state of broadcast classes enabled and disabled.  Just run
        this program before changing broadcast classes, then, to restore
        them, just:   $ SET BROADCAST=('BROADCAST_CLASSES')

SYSGENCOMP - Compare active and AUTOGENerated parameters (in SETPARAMS.DAT).
        If you've started following DEC's new recommendations for running
        AUTOGEN, you might wonder how much the parameters have changed since
        you went through the SETPARAMS phase and rebooted.

========> [VAX91B.FRANCE_1991]AAAREADME.TXT;2 <========



DECUS France                                                   5 Décembre 1991

This is the DECUS France contribution to the VAX/L&T sig tapes, covering
spring and fall 1991.

        All the submissions runs under a system. See the associated NOTES
        in [FRANCE_1991.NOTES_91A]. The file is structured, for exemple
        Notes        : RESEAUX  379
        means : see the note NOTES_RESEAUX.0379.
        In French RESEAUX means NETWORKS and PROGRAMMATHEQUE means PROGRAMM
        LIBRARY.


                        The French Library Coordinator

                                Nicolas DIAKONOFF 
          
--------------------------------------------------------------------------------
Commentaires : This file.
Auteur       : DIAKONOFF_N
Notes        : PROGRAMMATHEQUE  70

AAA_LIRE_91A_VMS.;2     * This file for the international programm library.
--------------------------------------------------------------------------------
Commentaires : Replace the DEC Logo at login time.
Auteur       : FOUCHET_F
Notes        : DECWINDOW   151

CHAMPS.BCK;1            * Save set.
CHAMPS.DOC;1            * Documentation.
--------------------------------------------------------------------------------
Commentaires : French version of COMPRESS with news functionalities like U*IX.
Auteur       : FAUCONNET_A
Notes        : VAX_VMS 1015 / 1212  / 1320

 * Add two options : -i and -r :
 *
 *      -i:         Image mode (defined only under MS-DOS and VMS). Prevents
 *                  conversion between UNIX text representation (LF line
 *                  termination) in compressed form and MS-DOS text
 *                  representation (CR-LF line termination) in uncompressed
 *                  form.  Useful with non-text files.
 *
 *      -r rsize    Output file record size (defined only under VMS).
 *                  Defines RMS record size for output file when image
 *                  mode is specified. Output will be fixed record size
 *                  file with no record attributes. Implies -i.

COMPRESS.BCK;1          * Save set of COMPRESS (Sources, Objets, Executable).
COMPRESS.DOC;1          * Documentation.
--------------------------------------------------------------------------------
Commentaires : Presentation Sig Réseau 19/12/90 on EMA in French.
Auteur       : ROGGEBAND_P
Notes        : RESEAUX  379


                                                                Page 2


DECMCC_19_12_90.PS;1    * Presentation in Postscript.
--------------------------------------------------------------------------------
Commentaires : Reading and display the Home Block.
Auteur       : OURGHANLIA_B
Notes        : VAX_VMS  1221

DISPLAY : This example MACRO program will read, format, and print to
          SYS$OUTPUT the contents of a disk homeblock and storage control
          block. It requires read access to both INDEXF.SYS and BITMAP.SYS. 
          It prompts for the disk name.

DISPLAY.MAR;1   * Source.
--------------------------------------------------------------------------------
Commentaires : DM$SD Correction BUG of V00256 from Dale E. COY
Auteur       : GRACIA_J
Notes        : PROGRAMMATHEQUE  7

DM$SD_C.BCK;1   * Backup save set for SDTree_Subs.FOR et SDTree_Subs.OBJ
--------------------------------------------------------------------------------
Commentaires : Patch editor to modify the files in HEXA and ASCII mode.
Auteur       : LAKS_J
Notes        : VAX_VMS  1096

EDP.DOC;1       * Documentation du produit.
EDP.SAV_Z;1     * Save set compressé contenant le produit.
--------------------------------------------------------------------------------
Commentaires : Configure a VMS node to access InfoServer based disks.
Auteur       : OURGHANLIA_B
Notes        : VAX/VMS   1276

   This command file sets up the environment needed to use InfoServers.
   It should be run interactively by the system manager.
  
   The command file operates interactively unless invoked with P1 and/or
   P2 input parameters. P1 is set to the "interact" variable and if "Y"
   is specified, interactive mode will be entered without asking. If P2
   is specified as "Y", command mode is entered. If P3 is entered as "Y"
   then BOOKREADER libraries will automatically be added when detected in
   both interactive and command modes. See help below.

ESS$CONFIGURE.COM;1     * Procédure DCL.
--------------------------------------------------------------------------------
Commentaires : Network meeting October 1990. Presentations.
Auteur       : GROSSETETE_P
Notes        : RESEAUX  360

FDDI.PS;1       * Presentation on FDDI.
ROUTAGE.PS;1    * Presentation on Routing DECnet Phase V.
--------------------------------------------------------------------------------
Commentaires : Disks, files, free spaces and fragmentation.
Auteur       : FOUCHET_F - PETIT_JP
Notes        : VAX/VMS  1092  /  1270

FRAG_FREE.MAR;1         * Display free space on a disk.
FRAG_LIST.MAR;1         * Display files with n extension headers.

                                                                Page 3


SHOW_LBN.MAR;1          * Display the map area of files.        
ODS-2.PS_Z;1            * Presentation in French on the ODS 2 structure.
--------------------------------------------------------------------------------
Commentaires : Get three longwords from the target and return to the caller.
Auteur       : OURGHANLIA_B
Notes        : VAX_VMS   1091

     GET3 : Goes into kernal mode, builds an ACB from nonpaged pool, queues
            a special kernal mode AST to the target process so that the target
            process can copy the data the acb extension. Then the ACB is turned 
            around and the caller is issued a special kernal mode AST with the
            data.
  
            This code runs in kernal mode at IPL$_ASTDEL and IPL$_SYNCH. While
            this code is running at elevated IPL, comments will start with two
            semicolons rather than one for IPL 0.

GET3.C;1                * "Brico" utilisant la technique qui consiste à allouer
GET3_CLI.CLD;1          * un bout de npp, créer dedans un ACB, y inclure le code
GET3_MAC.MAR;1          * à faire exécuter et poster l'AST pour que le process
GET_GENERIC.FOR;1       * cible l'exécute.
--------------------------------------------------------------------------------
Commentaires : Get caller's number of args
Auteur       : FOUCHET_F
Notes        : VAX_VMS   1297

        This routine get the number of arguments passed to the routine
        whitch call it. Previous AP is found using Call Frame (pointed by FP).
        The call stack frame, described in "VAX Architecture Reference
        Manual", page 89.

GET_NUMBER_OF_ARGS.MAR;1        * Source.
IS_ARG_DEFINED.MAR;1            * Test if a parameter is defined.
--------------------------------------------------------------------------------
Commentaires : Alias table for X400 adresses for VAX MAIL.
Auteur       : GERARD_G
Notes        : VAX_VMS   1288

GMAIL.BCK;1     * Save set.
--------------------------------------------------------------------------------
Commentaires : Setup a condition handler at image startup time.
Auteur       : FOUCHET_F
Notes        : VAX_VMS   1101

        This module setup a condition handler at image startup time. This
        condition handler will be called by VMS for each error not dismissed by
        a previous condition handler.
  
        To setup the condition handler, just link this module with your
        code (no call neccessary), and with a routine nammed CONDITION_HANDLER.

INIT_HANDLER.DOC;1      * Documentation.
INIT_HANDLER.MAC;1      * Source.
--------------------------------------------------------------------------------
Commentaires : Adds, removes, modifies or lists "user labels" attached to a file

                                                                Page 4


Auteur       : COLLOT_JY
Notes        : VAX_VMS   941

  This utility gives to the users an opportunity of attaching any kind
  of comment to a file. 
            $ LABEL [/quals]  file(s) [comment]
  The maximum size of the label is 120 characters. 
  Those labels are kept by the BACKUP utility, but not by COPY.
  file(s)  : Specifies the file (or files) to be searched for adding, modifying
             or listings labels. You may use the wildcard specification 
             (* or %). DECnet access is not supported.
  comment  : Specifies the label you want to give to your file(s). This 
             parameter is required with the /MODIFY qualifier.
   /ALL    : If this qualifier is present on the command line, all files mat-
             ching the specification are listed, even those which have no label.
   /OUTPUT : Specifies a file name for the output listing. 
   /SYMBOL : Creates the named DCL symbol and equates it to the label of the
             specified file. 
   /MODIF  : Specifies that the text provided as the second parameter of the
             command is to be included as a label for all the files specified
             by the first parameter.
   /EDIT   : If you use this qualifier, for each file being modified, the old
             label is dispayed on the screen, and can be edited using the 
             standard keys (arrows, etc...)
   /LOG    : Controls whether the LABEL command displays the file specification
             of the files being modified.

LABEL_ACE.BCK;1         * Save set.
--------------------------------------------------------------------------------
Commentaires : How to print a Word file on a LN03 ?
Auteur       : GALLAUSIAUX
Notes        : PC       148

LASERPREP.PS;1          * Explanations in french. Postscript format.
--------------------------------------------------------------------------------
Commentaires : New functionality for LAT VMS 5.4-1
Auteur       : OURGHANLIA_B           / FOUCHET_F - JOLIN_R
Notes        : VAX_VMS   1119 - 1280  / VAX_VMS 1100

 KERMIT_CONNECT : This module is an interface to KERMIT, allowing automatic
                  transfert betwheen two VAXes.

LAT.COM;2               * \
LATSYM$SETUP.C;1        *  > Procedures for LAT / VMS 5.4-1
LAT_CONNECT.COM;1       * /

KERMIT_CONNECT.MAR;1    * Equivalent exemple to SET HOST/DTE.
LAT_PORTAL.BCK;1        * Connect two VAXes via 2 async. ports with Ethernet.
--------------------------------------------------------------------------------
Commentaires : Open the MAIL file from an other user.
Auteur       : OURGHANLIA_B
Notes        : VAX_VMS   1187

  MALL : This example demonstrates using the callable interface to VMS MAIL
         to move messages from one folder to another.  It will also update

                                                                Page 5


         the newmail count field if the NEWMAIL folder is selected.

         The program will prompt for a username and mailfile name.  It will
         then display a list of folders in that mailfile, allow the user to
         select a folder, target folder and a message number.

MALL.C;2                * Exemple in C using MAIL$USER.
COPY_FOLDER.C;3         * Including the current documentation deficencies ...
--------------------------------------------------------------------------------
Commentaires : Commands U*IX makedepend for VMS.
Auteur       : PIERRONNE_J
Notes        : VAX_VMS  1208

MKDEPEND.BCK;1  * Save set.
--------------------------------------------------------------------------------
Commentaires : Physical memory : total, free and in use..
Auteur       : FOUCHET_F
Notes        : VAX_VMS   991

MONITOR_MEMORY.MAR;1    * Source.
--------------------------------------------------------------------------------
Commentaires : The QIO interface of NETACP (No documented by DEC).
Auteur       : FOUCHET_F
Notes        : RESEAUX   403  / VAX_VMS   1230

NETACP.BAS;1    * Exemple in Basic.
NETACP.DOC;2    * Documentation in French.
REACH.MAR;2     * Program to probe reachability of a remote node.
--------------------------------------------------------------------------------
Commentaires : VAX/VMS Null Printer Device Driver
Auteur       : COLLOT_JY
Notes        : VAX_VMS   951

NULDRIVER.MAR;1         * Source.
--------------------------------------------------------------------------------
Commentaires : Boot date, Elapse time, Inactivity time, # active process.
Auteur       : KERMA_G
Notes        : 

OISIF.FOR;1             * Source Fortran of the subprogramm..
--------------------------------------------------------------------------------
Commentaires : Set the ownership of a file while the file has been locked
               by another user.
Auteur       : OURGHANLIA_B
Notes        : VAX_VMS   1104

OWNER.B32;1     * Source in BLISS32.
OWNER.CLD;1     * ... Define verb owner ...
OWNER.MAR;1     * Source in macro-32.
--------------------------------------------------------------------------------
Commentaires : Fixes bug and adds new functionality for PARMQUAL.
Auteur       : OURGHANLIAN_B      / PERROT_B
Notes        : VAX/VMS    678.*   / VAX_VMS 1278

        This program is designed to be used inside command procedures.

                                                                Page 6


        It parses the arguments passed to the procedure (the DCL Symbols
        P1 through P8), which are assumed to be in the format of DCL
        command parameters and qualifiers.

PARMQUAL.SAV;1          * Save set (.FOR, .OBJ et .EXE)
PARMQUAL.TXT;1          * Documentation.
--------------------------------------------------------------------------------
Commentaires : Pipe Driver for VMS.
Auteur       : OURGHANLIA_B
Notes        : VAX_VMS  1232

PIPEDRIVR.EXE;1         * Only the executable for VMS 5.4.
PIPEDRIVR_V53.EXE;1     * Only the executable for VMS 5.3.
--------------------------------------------------------------------------------
Commentaires : How to use SYSMAN to manage the startup procedure.
Auteur       : LECOMPTEBO_M
Notes        : VAX-VMS 1300

PRES_STARTUP.PS;1       * Documentation in Postscript.
LIST_STARTUP.COM;1      * Full listing of the databases in startup.
--------------------------------------------------------------------------------
Commentaires : Exemples of PSI security.
Auteur       : GERARD_G
Notes        : DECUS    196

PSI_SECURITY.COM;1      * Procedure for PSI security.
--------------------------------------------------------------------------------
Commentaires : Display Username and Personal name form VMSMAIL_PROFILE.DATA
Auteur       : PETIT_JP, DIAKONOFF_N
Notes        : PROGRAMMATHEQUE 81

QUI.BCK;1       * Full distribution in French.
--------------------------------------------------------------------------------
Commentaires : File attributs recovery and select a file.
Auteur       : QUIVOGNE_L 
Notes        : DECUS   188

RETURN_FILE_ATTRIBUTES.COB;1    * Source Cobol.
RETURN_FILE_ATTRIBUTES.OBJ;1    * and the Objet.
FIND_FILE_WITH_SELECTION.COB;1  * Select a file with some attributs.
FIND_FILE_WITH_SELECTION.OBJ;1  * Objet.
--------------------------------------------------------------------------------
Commentaires : Select the path with VMS 5.4 et VMS FMR (Futur Major Release).
Auteur       : OURGHANLIA_B
Notes        : VAX_VMS   1144      1340

SELECTPATH : VMS has added preferred path selection QIO to V5.4 of VMS.  
             This MACRO program provides a DCL foreign command line 
             interface to this QIO.

PREFER     : VMS Version 5.4 allows you to select a preferred disk path 
             at mount time or force a preferred disk path (move a disk that 
             is already mounted to its preferred path) through the use of a 
             new $QIO function called IO$_SETPRFPATH and its function 
             modifier IO$M_FORCEPATH. This applies to RA series disks and 

                                                                Page 7


             disks accessed through the MSCP server.  

             Although VMS does not provide preferred path functionality at the 
             command line level, this article contains a MACRO program called 
             PREFER.MAR and its DCL command line interface PREFER.CLD which 
             provide access to the IO$_SETPRFPATH QIO. 
             Future version of VMS will contain these programs in SYS$EXAMPLES. 

HSCCMD : This program will issue one command to an HSC via a DUP connection.
         The command to be sent is read via the DCL foreign command line 
         interface. This allows "one-liners" to be issued from command 
         procedures (and batch jobs).

SELECTPATCH.MAR;2       * Source.
PREFER.CLD;1            *  \ 
PREFER.MAR;1            *   > functionality for CRONIC V600 [VMS FMR].
PREFER.TXT;2            *  /
HSCCMD.MAR;1            * Source.
--------------------------------------------------------------------------------
Commentaires : Open a window and define a cursor.
Auteur       : FOUCHET_F
Notes        : DECWINDOW        139

SHOW_CURSOR.C;2         * Source in C.
SHOW_CURSOR.DOC;1       * Documentation in French.
--------------------------------------------------------------------------------
Commentaires : Search and find the meaning of a message by the number.
Auteur       : FOUCHET_F
Notes        : VAX/VMS  1041

SHOW_ERROR.COM;4                * DCL procedure.
SHOW_ERROR.DOC;1                * Documentation.
--------------------------------------------------------------------------------
Commentaires : Recover the Secondary Status Value.
Auteur       : OURGHANLIA_B
Notes        : RESEAUX   81 

STV.MAR;3       * Source.
--------------------------------------------------------------------------------
Commentaires : Trace errors in programms.
Auteur       : FOUCHET_F
Notes        : VAX_VMS   1113

TRACEBACK : This module is designed to replace DEC default traceback handler.
            It's called by VMS when an unhandled error occurs. Activation is 
            made trought the LIB$TRACE logical (witch point to this file). 
            As decribed in the VMS Microfiches (module TBKSTART), a special 
            vector must be present at address 0. This vector describe the data
            portion of the image (starting and ending address) and the image 
            entry point (in the third longword). It also seems to be neccessary
            to define the image first transfert vector to this entry point.

TRACE.BCK;1     * Save set.
TRACE.DOC;1     * Documentation.
--------------------------------------------------------------------------------

                                                                Page 8


Commentaires : Procedure to find very easily a title into NOTES.
Auteur       : FOUCHET_F
Notes        : DECUS    186

UPDATE_NOTES_TITLE.COM;1        * Procedure DCL.
--------------------------------------------------------------------------------
Commentaires : VMS 5.4 (210 pages) and VMS 5.4-1 in french.
Auteur       : OURGHANLIA_B
Notes        : VAX_VMS   1004    et    VAX_VMS   1119

V54_DECUS_ALL.PS;1      * French presentation in Postscript for 5.4.
V541_DECUS.PS;1         * French presentation in Postscript for 5.4-1.
NEW_MEMMGT.PS;1         * French presentation of NEW MEMORY MANAGEMENT.
--------------------------------------------------------------------------------
Commentaires : Memory management for VAX/VMS in french.
Auteur       : PETIT_JP
Notes        : VAX_VMS  1189   ET VAX_VMS  1136

VIRTUAL_MEMORY.PS;1     * Presentation in Postscript (1134 blocks).
--------------------------------------------------------------------------------
Commentaires : More informations about the locked files and the used files.
Auteur       : FOUCHET_F   /   MANET_P
Notes        : PROGRAMMATHEQUE    93


VMSLOCKS : This program will list all F11B$a file locks for a specified file.
           This is usefull to display all processes that have a file open on 
           a cluster.

RMSLOCKS : This program will list all RMS$ file locks for a specified file.
           This is usefull to display all processes that have a file open 
           by RMS on a cluster.

SHOW_CALLED_FILES : This program will list the files used by a DCL procedure.

VMSLOCKS.MAR;1          * Utilisation des locks XQP.
RMSLOCKS.MAR;2          * Utilisation des locks RMS.
SHOW_CALLED_FILES.MAR;1 * Visualisation des fichiers utilisés par une proc. DCL.
--------------------------------------------------------------------------------
Commentaires : VMSTAR : a TAR reader/writer for VMS.
Auteur       : FAUCONNET_A
Notes        : VAX_VMS  948

        VMSTAR is a TAR reader/writer for VMS. It can read archives ("tarfiles")
        created by the Un*x command "tar" and also create such archives. 
        Tarfiles can be disk files or directly on tape.

        TAR2VMS and VMS2TAR have been merged into a single program. Made several
        improvements, bug fixes and message cleanup. For those who know TAR2VMS
        and VMS2TAR, the main differences are:

        o everything is now in a single program that can be used for extracting
          files from tar archives, listing the contents of tar archives or 
          creating them.


                                                                Page 9


        o VMSTAR now accepts a `f tarfile' option to explicitely specify the 
          tarfile name (either a VMS file name or a VMS device name).

        o VMSTAR allows VMS-style wildcarded strings for Un*x-style file names
          to be specified when extracting from a tar archive.

        o VMSTAR will attempt to create relative tar archives i.e. archives 
          where filenames are recorded as "./foo/bar/baz" whenever possible.

        o VMSTAR has a VMS help file (VMSTAR.HLP) that can be added to your 
          HELPLIB.HLB to provide online help.

VMSTAR.BCK;1    * Distribution of VMSTAR.
--------------------------------------------------------------------------------
Commentaires : Some very usefully programms ...
Auteur       : BROWN_N
Notes        : DECUS   188

XCOPY.BCK;1

  A program to copy files, with one major improvement on VMS COPY.

  Should the copy fail (for example, because one file is on a remote
  node, and the connection is lost), XCOPY returns (to SYS$OUTPUT, and
  DCL via symbols) sufficient information about the failure to enable
  the copy to be restarted from the point of failure.  Only disk-to-disk
  transfers are supported.

WHO.BCK;1

  Invokes a program to display various attributes of processes on the
  local node, another cluster node, or any other node in the network.

  If you are running VMS V5.2 or higher, WHO uses cluster-wide system
  services for efficiency.  Otherwise, you can still access other cluster
  nodes by using the DECnet access methods.

  WHO was written in response to a need to see which users in a network,
  where everyone had lots of privileges (developers !) and people tended
  to increase their base priority because they thought they were
  important.  It has evolved into a general-purpose tool for examining
  the processes on the VMS systems in your network.

PTT.BCK;1

  Invokes a program to display and optionally correct various fields of
  the VMS MAIL user profile data file (VMSMAIL_PROFILE).

  PTT will normally be run by the system manager (with SYSPRV privilege) to
  correct problems in users' mail profiles.  A non-privileged user can also
  run PTT, but will only have access to their own profile.

TCOPY.BCK;1

  A program to copy tapes.

                                                               Page 10



  TCOPY allows direct tape-to-tape copies, on systems with more than
  one tape drive, or copying of tapes via an intermediate disk file.

  TCOPY allows you to make exact copies of VMS, Ultrix, diagnostic,
  and other tapes, without the need for two tape drives. If you have two
  drives, you can use TCOPY without any extra disk space.

SHRIMG_STUFF.BCK;1                          

    MAKE_XFER.COM
        Makes a transfer vector for all modules in library 'P1'.
        Assumes a module name is an entry point, which works OK for COBOL 
        and FORTRAN, but may give problems with other languages.
        After creating the transfer vector, maintain it by hand. 
        Running this file to re-create it will endanger programs already 
        linked with the shareable library. If you do re-run this program,
        increase the major version of the shareable library to force relinking.
    NO_SHR_WRT.COM
        Takes a .MAP file (/FULL) from linking a shareable image, and
        generates the necessary PSECT_ATTR statements for a link options file
        to ensure that shareable writeable PSECTs become NOshareable.
        This is necessary for COBOL/FORTRAN shareable images which reference
        COMMON data areas.
        After generating the .OPT file, use it to rebuild the shareable image,
        and append it to the .OPT files of programs which link with the image.
--------------------------------------------------------------------------------

DECUS France                                                 5 Décembre 1991
                            GRAPHIC APPLICATION SIG CATALOG
                            ===============================

        Submissions between 1/06/91 to 15/11/91 on The VAX DECUS France.
        Commentaires : Few abstract of the purpose.
        Auteur : The person who submits the programm.
        Notes : See [FRANCE_1991.VAXF91B.NOTES_91B]NOTES_xxxx.yyyy
                where xxx is the name of the conference (ie DECUS, DIVERS,
                GRAPHIQUE, HARDWARE, PC, PROGRAMMATHEQUE, RESEAUX, UNIX and
                VMS); yyyy is four digits ( ie 70 = 0070)

--------------------------------------------------------------------------------
Commentaires : This file
Auteur       : DIAKONOFF_N
Notes        : PROGRAMMATHEQUE  70

AAA_LIRE_91B_GRAPH.;4           * This file.
--------------------------------------------------------------------------------
Commentaires : PLOT_PS V4: A PostScript  C graphic library.
Auteur       : VIBERT_JF
Notes        : PROGRAMMATHEQUE  98 et 112

   PLOT_PS is a degraded version of PLOT_DPS, specifically designed for users
   not interested by the X Window possibilities of PLOT_DPS.  Nevertheless, it
   is fully PLOT_DPS compatible, except for the X functions.


                                                               Page 11


   PLOT_PS is a library of graphic C functions designed to build PostScript
   files from C programs.  This library allows the production of graphics on a
   PostScript printer such as the DEC LN03R or any standard PostScript printer,
   or on an X window using Display-PostScript (DPS).  All functions begin with
   the prefix ps_ and need to have the plot_ps.h header file included.  The
   very first function to be called is ps_iniplot.  It opens the postscript
   file, and allow to choose to plot in a PS file or on a PDS window, or both.
   PLOT_PS allows to work in both absolute (in cms) and user or subject space.

PLOT_4_2.BCK;1          * Save set complet.
--------------------------------------------------------------------------------

DECUS France                                                 5 Décembre 1991
                            PC SIG CATALOG
                            ==============

        Submissions between 1/06/91 to 15/11/91 on The VAX DECUS France.
        Commentaires : Few abstract of the purpose.
        Auteur : The person who submits the programm.
        Notes : See [FRANCE_1991.VAXF91B.NOTES_91B]NOTES_xxxx.yyyy
                where xxx is the name of the conference (ie DECUS, DIVERS,
                GRAPHIQUE, HARDWARE, PC, PROGRAMMATHEQUE, RESEAUX, UNIX and
                VMS); yyyy is four digits ( ie 70 = 0070)

--------------------------------------------------------------------------------
Commentaires : This file.
Auteur       : DIAKONOFF_N
Notes        : PROGRAMMATHEQUE  70

AAA_LIRE_91B_PC.;6      * This file.
--------------------------------------------------------------------------------
Commentaires : Two conversion programms : DEC et IBM-PC 8 bits
Auteur       : GARBASI_JP
Notes        : PC       195

ACDECIBM.C;1            * Source C : Conversion ASCII DEC to PC IBM.
ACIBMDEC.C;1            * Source C : Conversion ASCII IBM PC to DEC.
--------------------------------------------------------------------------------
Commentaires : More than one Boot in CONFIG.SYS
Auteur       : PEYRARD_JC
Notes        : PC       234

BOOT142.ZIP;1           *  Compress distribution.
--------------------------------------------------------------------------------
Commentaires : Fix for DECstation warm start keyboard problem.
Auteur       : BROWN_N
Notes        : PC   167

    On a DECstation 200/220 (others ?) and/or Olivetti M250, there is an
    intermittent problem whereby after a WARM boot (Ctrl-Alt-Del), the
    keyboard ignores the first keystroke typed.  If this is the Ctrl (or
    Shift) part of (say) a Ctrl-C, the C will be given to the BIOS; otherwise
    the whole character is ignored.
    
    This problem is particularly prevalent on systems with DEPCAs and

                                                               Page 12


    LK250s; for some reason AZERTY LK250s are more susceptible than
    QWERTYs.
    
    Anyway, thanks to a very diligent Digital Field Service person (who is
    not really responsible for this, but found the fix anyway, bravo, why
    can't Digital find a few more like him ?), I have a fix for this
    problem.  It won't help people with diagnostics-level passwords, as it
    is run as part of AUTOEXEC.BAT, butI have found it useful.  It is
    incredibly frustrating to explain to people the 1000's of benefits a
    move from VT to PC-based word processing will bring if they are going
    to let a minor thing like this upset them.

LK250.BCK;1     * Save set.
--------------------------------------------------------------------------------
Commentaires : Supervision of PCs across a DECnet-DOS network.
Auteur       : BROWN_N
Notes        : PC       200

        SMILEY and MOLE - a PC monitoring system
        ----------------------------------------

    SMILEY and MOLE (apologies to John le Carre, not that I expect he's reading
    this) are a pair of programs which allow you to monitor a PC across a
    DECnet-DOS network.  You can perform the following functions:

       - see which files are open on the PC.
       - look at the top-level COMMAND.COM environment.
       - set variables in the top-level COMMAND.COM environment (ie, outside
         any currently running program).
       - reboot the remote PC (cold or warm start).
       - display the PC's screen.
       - if your monitoring system is a DOS PC, you can monitor the screen
         continuously and type as if you were on the remote keyboard (ZAP mode).

    MOLE is a small (about 1K) TSR which runs on a DECnet-DOS node.  It listens
    for requests from SMILEY, an interactive program which can be run on
    another DOS PC or a VAX/VMS system.

SMILEY.BCK;1            * Save set (sources, documentation, ...).
--------------------------------------------------------------------------------

DECUS France                                                 5 Décembre 1991
                            ULTRIX SIG CATALOG
                            ==================

        Submissions between 1/06/91 to 15/11/91 on The VAX DECUS France.
        Commentaires : Few abstract of the purpose.
        Auteur : The person who submits the programm.
        Notes : See [FRANCE_1991.VAXF91B.NOTES_91B]NOTES_xxxx.yyyy
                where xxx is the name of the conference (ie DECUS, DIVERS,
                GRAPHIQUE, HARDWARE, PC, PROGRAMMATHEQUE, RESEAUX, UNIX and
                VMS); yyyy is four digits ( ie 70 = 0070)

                        The French Library Coordinator


                                                               Page 13


                                Nicolas DIAKONOFF 
--------------------------------------------------------------------------------
Commentaires : This file.
Auteur       : DIAKONOFF_N
Notes        : PROGRAMMATHEQUE  70

AAA_LIRE_91B_ULTRIX.;5          * This file.
--------------------------------------------------------------------------------
Commentaires : File management for U*IX.
Auteur       : BERENGUIER_J
Notes        : UNIX     167

CVS12.TAR_Z;1           * Over RCS.
RCS55.TAR_Z;1           * Managment versions and tree.
--------------------------------------------------------------------------------
Commentaires : Format a floppy disk without privilege.
Auteur       : VIBERT_JF
Notes        : UNIX     194     / PROGRAMMATHEQUE 113

FD_UTIL.SHAR;1          * Full kit.
--------------------------------------------------------------------------------

DECUS France                                                 5 Décembre 1991
                            VMS SIG CATALOG
                            ===============

        Submissions between 1/06/91 to 15/11/91 on The VAX DECUS France.
        Commentaires : Few abstract of the purpose.
        Auteur : The person who submits the programm.
        Notes : See [FRANCE_1991.VAXF91B.NOTES_91B]NOTES_xxxx.yyyy
                where xxx is the name of the conference (ie DECUS, DIVERS,
                GRAPHIQUE, HARDWARE, PC, PROGRAMMATHEQUE, RESEAUX, UNIX and
                VMS); yyyy is four digits ( ie 70 = 0070)

                        The French Library Coordinator

                                Nicolas DIAKONOFF 
--------------------------------------------------------------------------------
Commentaires : This file.
Auteur       : DIAKONOFF_N
Notes        : PROGRAMMATHEQUE  70

AAA_LIRE_91B_VMS.;4             * This file.
--------------------------------------------------------------------------------
Commentaires : Full package to create, manage and edit bibliographic databeses.
Auteur       : VIBERT_JF
Notes        : PROGRAMMATHEQUE    101

BIBLIO_README.1ST;1     * Abstract.
BIBLIO_VMS.BCK;1        * Version VMS au format BACKUP.
--------------------------------------------------------------------------------
Commentaires : BROWSER is a tool to read Online documentation.
Auteur       : ALBERT_JN
Notes        : PROGRAMMATHEQUE   106


                                                               Page 14


BROWSER.ALIRE;1         * Documentation in french.
BROWSER.BCK;1           * Save set and documentation in English.
--------------------------------------------------------------------------------
Commentaires : HSC Cache Needs Analysis.
Auteur       : OURGHANLIA_B
Notes        : VAX_VMS  1521

CACHE_TEST.BCK;1        * Save_set. Read the documentation BEFORE.
--------------------------------------------------------------------------------
Commentaires : Test the entry points sending/reading for MAIL.
Auteur       : BACH_J
Notes        : VAX_VMS  1355

CALLABLE_MAIL.PAS;1             * Source Pascal.
PASCAL$MAIL_ROUTINE.PAS;1       * Declarations.
--------------------------------------------------------------------------------
Commentaires : Change via programm the form of a printer queue.
Auteur       : PELLE_PY (Via COLLOT_JY)
Notes        : VAX_VMS     1367

CHFORM.BCK;1            * Save_set (All in french).
--------------------------------------------------------------------------------
Commentaires : Presentation from BO (our French Guru). French symposium 1991.
               All are in French and Postscript.
Auteur       : OURGHANLIA_B
Notes        : VAX_VMS      1366

DECAVAIL.PS;1                   * Layered product DECavail.
DECUS_POSIX.PS;1                * POSIX and Digital.
DECWINDOWS_V3.PS;1              * DECWINDOWS Version 3.
V55_DECUS.PS;1                  * VMS Version 5.5.
--------------------------------------------------------------------------------
Commentaires : Test a Postscript printer with accent lowercases.
Auteur       : JOLIN_R
Notes        : GRAPHIQUE    136

CONFIG_LASER.PS;1       * Test file.
--------------------------------------------------------------------------------
Commentaires : New version for the DCL debugger.
Auteur       : QUIVOGNE_L
Notes        : DECUS    217     / VAX_VMS       1364

DEBUG_DCL.BCK;1         * Save set complet.
--------------------------------------------------------------------------------
Commentaires : Presentation DECnis 500/600 in french.
Auteur       : GROSSETETE_P
Notes        : RESEAUX  498

DECNIS.PS;1             * Presentation.
--------------------------------------------------------------------------------
Commentaires : Presentation from BO. October 1991.
Auteur       : OURGHANLIA_B
Notes        : 

DECUS_PM_1.PS;1         * Concepts for an open applications.

                                                               Page 15


DECUS_PM_2.PS;1         * Open system bye DEC on VMS and ULTRIX.
--------------------------------------------------------------------------------
Commentaires : Presentation DECRam.
Auteur       : OURGHANLIA_B
Notes        : VAX_VMS          1498

DECRAM.PS;1             * Presentation.
--------------------------------------------------------------------------------
Commentaires : This program acts as a control panel for a SCSI audio CD player.
Auteur       : OURGHANLIA_B
Notes        : VAX_VMS  1398

        This program acts as a control panel for a SCSI audio CD player. It
        creates a workstation window with buttons for playing, pausing, 
        selecting tracks, etc. The program uses the DECwindows toolkit 
        routines to create and manage the display and its widgets (RDD42).

DECW$CD.C;1             * Source en C.
--------------------------------------------------------------------------------
Commentaires : Recover all informations about a file.
Auteur       : OURGHANLIA_B
Notes        : VAX_VMS  1441 / 1475

DIR_SLASH_FULL.C;1      * Source C.
--------------------------------------------------------------------------------
Commentaires : WatchDog for a cluster.
Auteur       : BROWN_N
Notes        : VAX_VMS  1354

DOG.BCK;1               * Save_set.
--------------------------------------------------------------------------------
Commentaires : Look at global buffer hits more closely.
Auteur       : BROWN_N
Notes        : VAX_VMS  1376
        
GBLHIT.BCK;1            * Distribution Save set.
--------------------------------------------------------------------------------
Commentaires : Manager for multi-windows.
Auteur       : QUIVOGNE_L
Notes        : DECUS    229

GMENU.BCK;1             * GMENU011.A and GMENU011.B (VMS install).
GMENU.TXT;1             * Documentation in french.
--------------------------------------------------------------------------------
Commentaires : HOT_FILES with multi-processors.
Auteur       : OURGHANLIA_B / FOUCHET_F / PANNETIER_AM
Notes        : VAX_VMS  966

HOT_FILES_SMP.B32;1     * Source  Bliss.
HOT_FILES_SMP.MAR;1     * Source MACRO-11.
--------------------------------------------------------------------------------
Commentaires : Presentation : Lock Manager VMS.
Auteur       : COLLOT_JY
Notes        : VAX_VMS  1409


                                                               Page 16


LCKMGR.PS;1             * Presentation.
--------------------------------------------------------------------------------
Commentaires : SUBMIT/USER without a priviligied account.
Auteur       : PELLE_PY (Via COLLOT_JY)
Notes        : VAX_VMS     1367

LCTBATCH.BCK;1          * Save_set.
--------------------------------------------------------------------------------
Commentaires : LOG_PORT is a small program to allow the terminal server 
               and port id to show up in the accounting file.
Auteur       : BROWN_N
Notes        : DIVERS      165

LOG_PORT.BCK;1          * Full kit.
--------------------------------------------------------------------------------
Commentaires : Automatic connection in MAIL if new mail.
Auteur       : QUIVOGNE_L
Notes        : VAX_VMS  1423

MAIL_INSPECT.COM;1      * Generate file for COBOL sources.
--------------------------------------------------------------------------------
Commentaires : Multi Yield Editor based on TPU version 1.1.
Auteur       : BERENGUIER_A
Notes        : VAX_VMS   1092

            It is my eve, this is for emulate all fonctions than i use on edt.
                        M U L T I   Y I E L D   E D I T O R
            Increase yield of programmers by decrease the hit of keys.
  
    Many COMMANDS : Ascii, Display_Character, Edit, Format_Help, Format_Ident,
                    Format_Isole_Word, Format_Word, Globalset_Start_Line,
                    Hextype, Include, Indent_Columns, Indent_Tab, Load_Selected,
                    Macro, Rol_Edit, Scratch, Sort_Buffer, Substitute, 
                    Translate_Spaces_To_Tabs, Translate_Tabs_To_Spaces, 
                    Word_Column, Word_Mcolumn, Zcnl, Znl.
  
    KEYS_FUNCTIONS : Assign_Go_Buffer, Blue_Keypad, Date, Get_Lis, Get_Log,
                     Get_Ruler, Goto_Last, Go_Buffer, Make_Signature, 
                     Mye_Cmd, Swap_Char, Toggle_Screen_Update, Toggle_Tabs, 
                     Toggle_Timer, Toggle_Wrap, Word_Format, Word_Space, 
                     Word_Toggle.

MYE_TPU.BCK;1           * Distribution of MULTI_YIELD_EDITOR.
--------------------------------------------------------------------------------
Commentaires : Utility to collect information about the size and ownership
               of files. New functionnalities.
Auteur       : RICHARD_M
Notes        : VAX_HARDWARE     216

        This program examines the file header file (INDEXF.SYS)
        to retrieve information about the largest files strored
        on disk and who owns them. Back link pointers in the
        INDEXF.SYS file are followed to obtain a complete
        directory specification.


                                                               Page 17


NEWFILES.BCK;1          * Save set de la distribution.
--------------------------------------------------------------------------------
Commentaires : OPCOM catcher.
Auteur       : OURGHANLIA_B ; BROWN_N
Notes        : VAX/VMS  1445

OPCOM_CATCHER.TXT;1     * Original from BO.
OPCOM_CATCHER2.TXT;1    * Modifications from NB.
--------------------------------------------------------------------------------
Commentaires : Presentation "Techniques to optimize RMS".
Auteur       : LECOMPTEBO_M (Mathieu LECOMPTE-BOINET)
Notes        : VAX_VMS  1390

PRES_RMS.PS;1           * Presentation.
--------------------------------------------------------------------------------
Commentaires : PSICOPY Version 2.1. New functionalities.
Auteur       : GERARD_G
Notes        : DECUS    196

PSICOPY021.A;3          * PSICOPY Version 2.1.
PSICOPY_BOOT.MAR;1      * Bootable version to get the full PSICOPY kit.
--------------------------------------------------------------------------------
Commentaires : Test the CPS 4.0 on APPLE.
Auteur       : ALBERT_JN
Notes        : VAX_HARDWAE      226

PS_STATUS.COM;1         * Test file.
--------------------------------------------------------------------------------
Commentaires : Remote" cat via a TCP connection.
Auteur       : FAIPOT_L
Notes        : RESEAUX  502

RCAT.C;1        * Source C with english documentation.
--------------------------------------------------------------------------------
Commentaires : RECALL more than 40 DCL commands.
Auteur       : QUIVOGNE_L
Notes        : VAX_VMS  1457

RECALL.COM;1    * Construct RECALL.EXE (Foreign command).
--------------------------------------------------------------------------------
Commentaires : Patch for fixe a RMS-F-IRC on MAIL.MAI
Auteur       : OURGHANLIA_B
Notes        : VAX_VMS  1392
        
RMS_FIX.EXE;1           * Patch generator.
--------------------------------------------------------------------------------
Commentaires : Fixe a bug on SET VOLUME/REBUILD=FORCE
Auteur       : OURGHANLIA_B
Notes        : VAX_VMS  1432

SET.CLD;1               * For DCLTABLE.
SET.EXE;1               * Executable V5.4-2R02
--------------------------------------------------------------------------------
Commentaires : Forces the target to set itself in NO RESOURCE WAIT MODE.
Auteur       : PANNETIER_AM

                                                               Page 18


Notes        : VAX_VMS      1357

SET_PROC_NO_RWMOD.MAR;1         * Source in MACRO-32.
--------------------------------------------------------------------------------
Commentaires : Utility for SHUTDOWN the system like the startup.
Auteur       : PERROT_B
Notes        : VAX_VMS     1469

SHUTDOWN$README.1ST;1   * Documentation.
SHUTDOWN.BCK;1          * Full kit.
--------------------------------------------------------------------------------
Commentaires : Symbolize offsets, bit mask, bit position, field size.
Auteur       : FOUCHET_F
Notes        : VAX_VMS      1319

SYMBOLIZE_MACRO_CODE.TPU;1      * Source TPU file.
--------------------------------------------------------------------------------
Commentaires : UCX security
Auteur       : GERARD_G
Notes        : RESEAUX       488

TCPFILTER.MAR;1         * Source in MACRO-32.
--------------------------------------------------------------------------------
Commentaires : Translate characters MCS <---> DOS ASCII
Auteur       : BROWN_N
Notes        : VAX_VMS  1350

TRANSLATE.BCK;1         * Backup (Source, objet,exe, .HLP et .CLD)
--------------------------------------------------------------------------------
Commentaires : Recovery deletes files. French version.
Auteur       : GARBASI_JP, BROWN_N, LECOMPTEBO_M (From COLLOT_JY)
Notes        : VAX_VMS   1428 ; URGENT  128

UNDEL.BCK;1             * Full kit.
--------------------------------------------------------------------------------
Commentaires : Version number of an image.
Auteur       : KERMA_G
Notes        : RESEAUX  461

VERSION.COM;1           * DCL procedure.
--------------------------------------------------------------------------------
Commentaires : Set to 0 the LTA number.
Auteur       : SPITALIER_A
Notes        : VAX_VMS  1483

ZEROLTA.COM;1   * DCL procedure.
--------------------------------------------------------------------------------

========> [VAX91B.FTS]AAAREADME.TXT;1 <========



FTS 1.0 Release Notes
=====================
 
Overview:
---------
The Functional Testing Suite (FTS) is a do-everything utility for
monitoring and controlling VMS systems.  The philosophy here is that
everytime I want to do something under VMS, and there's no command
to do it, I'll write it myself and add it to FTS.  It started out as
a monitor for images which I didn't have source code for (like UCX
applications) and grew into a sort of grab-bag of hacks.
 
FTS (Functionality Testing Suite, aka Futz) is a utility program which
provides services not offered by the standard VMS distribution.  The only
file required is FTS.EXE which should be installed as a foreign command
(ie. "$ FTS :== $disk:[dir]FTS.EXE").
 
WARNING!!!  FTS is an rather brutish program which may very well do nasty
things to your system, least of all crash it.  Don't use this program
unless you think you know what you're doing!
 
Comments and additions are cheerfully accepted:
        Bruce R. Miller
        TGV, Inc.
        603 Mission St.
        Santa Cruz, CA  95060
        (403) 427-4366
        Internet: MILLER@TGV.COM
 
 
New and Changed Features:
-------------------------
 
ALONONPAGED [/size=n]
        Allocate some nonpaged pool.  If no size given, 512 is assumed.
        A 12-byte system header including allocated size is presumed.
DEANONPAGED S0addr [/size=n]
        Deallocate some nonpaged pool.  If no size explicitely given,
        The size in the system header is used.
 
CRASH [/PID=pid]
        Crash the system.  The /PID qualifier specifies the ID of the
        process to blame, but is not currently implemented.  The command
        crashes the system by placing a -1 in the PC.
HALT
        Execute a HALT instruction in KRNL mode.  Sometimes quicker
        than reaching back behind the machine for the HALT button.
 
DEPOSIT location value [/PID=pid]
        Write a value to a location in memory.  Runs in kernel mode but
        does a kmode PROBER/W first.  /PID option not implemented, yet.
EXAMINE location [/PID=pid]
        Fetch a value from memory.  Fetches from kernel mode but executes
        a PROBER instruction first.  /PID option not implemented, yet.
 

                                                                Page 2


EXIT/QUIT/^Z
        Leave the FTS utility.
 
FORCEX [pid] [/rcode=x]
        Forces image exit of a given process with the given status.
        SS$_NORMAL assumed if /RCODE not specified.
 
HELP
        Currently prints a simple help message.  Needs to be improved.
        Can't use standard VMS help facility since that would require
        another file and I want to limit things to FTS.EXE.
 
LOAD JASMON
        Installs the JASMON code in P1 space and takes over the
        P1 system service vector.  Jasmon resides in P1 space and comtinues
        to operate across image activations.  Use WATCH to monitor
        service, UNWATCH to stop monitoring them, and UNLOAD JASMON
        to restore the process to normal.
WATCH SS service
        Intercepts calls to a particular system service.
        For example, "WATCH SS TRNLNM" monitors logical name translation.
WATCH SS QIO[W] device [/STYLE=NULL|DEFAULT|TGV|UCX]
        Intercepts $QIO[W]s to a  particular device (ie. DK: or INET:).
        The /STYLE switch controls the formatting of P1 though P6.
WATCH RMS service
        Intercepts calls to a particular RMS service.
        For example, "WATCH SS OPEN" monitors RMS file opens.
UNWATCH SS service
        Disable monitoring of a system service and restore P1 dispatch vector.
UNWATCH RMS service
        Disable monitoring of an RMS service and restore P1 dispatch vector.
UNLOAD JASMON
        Uninstalls the JASMON code from P1 space and restores the
        P1 system service vector to it's previous state.
Currently supported system services:
        ASSIGN,CANCEL,CANEXH,CANTIM,CANWAK,CHKPRO,CRETVA,DASSGN,DEQ,
        ENQ,ENQW,GETLKI,GETLKIW,LKWSET?,QIO,QIOW,SETIME,SETPRT,TRNLNM
Currently supported RMS services:
        CLOSE,CONNECT,CREATE,DELETE,FLUSH,GET,OPEN,PUT
 
LOAD XDT
        Install XDelta and invoke it.  Works even if system was not
        booted with XDelta.  Caution: XDelta will cause LAVC nodes
        to crash with CLUEXIT run for more than 20 seconds.  You can
        use the EXAMINE and DEPOSIT commands to modify memory in a cluster.
 
NOOP
        Does nothing.  Doesn't even execute a NOOP command.
 
SET PAGE addr [size] /PROTECTION=prot {[/PID] [/REFCOUNT]}
        Modify a memory page in some way.  /PROT sets the page
        protection bits in the PTE to the value specified by the
        given string (eg. "URKW").  /PID and /REFCOUNT not yet
        implemented.  Size only used for process pages.
 

                                                                Page 3


SHOW DEFAULT [pid]
        Print the Default Directory string for the given process
SHOW ERROR hex_code
        Print the text of an error signal.
SHOW ETHER
        List protocols assigned to the EtherNet card.  Not Yet Implemented.
 
SPAWN [command-line]
        Spawn a CLI process and optionall execute a command.
        Currently broken, but not interesting enough to fix.
 
VERSION
        Display information about this FTS version, including authors.
 
WAKE [pid]
        Wakes up a given process.
 
WATCH DEVICE device [/FDT] [/START] [/ALTSTART] [/CANCEL] [/IOPOST]
        Monitors the given device by patching it's DDT.  Interactive
        utility; type any key to exit.
        /FDT prints calls passing through the Function Decision Table.
        /START intercepts the device's StartIO routine.
        /ALTSTART intercepts the device's alternate StartIO routine.
        /CANCEL monitors device request cancellations.
        /IOPOST plugs the IOC$IOPOST interrupt vector and watches it
                for completion of requests for this device.
        Type any key to exit the monitor.
        Take care in monitoring disk and terminal devices with this comand.
 


Note: A conditional assembly in a second version of JASMON here allows
the $setprv service to appear to always indicate a privileged envrionment.
This is done to allow one to set up a mousetrap for checking code for
covert behavior by making it believe it is running in a fully privileged
environment (when hopefully it is not). The VMS SET WATCH command should
be used in such a situation as well to monitor RMS operations, to tell
what files are being accessed (or attempted).

========> [VAX91B.F_GETLKI]AAAREADME.TXT;1 <========




      USE AT YOUR OWN RISK.

      NO WARRANTY OF ANY TYPE IS PROVIDED BY ANY PERSON OR ENTITY.


      USE AT YOUR OWN RISK.

      NO WARRANTY OF ANY TYPE IS PROVIDED BY ANY PERSON OR ENTITY.

F_GETLKI has been tested through VMS 5.4-2.  The RMS lock searching feature
uses undocumented internals of RMS and is therefor subject to failure without
notice (specifically, if the RMS record lock resource names are ever changed).
The .CLD file assumes that UTIL_EXE is a logical name where F_GETLKI.EXE can be
found.  Most of the detail on what this program does and how to use it are in
the .HLP file.  CMEXEC privilege is required, as well as SYSLCK in most cases.

AAREADEM.1ST    this file
F_GETLKI.CLD    the DCL command line definitions for F_GETLKI
F_GETLKI.EXE    the executable
F_GETLKI.FOR    the source
F_GETLKI.HLB    a sample help library
F_GETLKI.HLP    the help file text, to be put into an .HLB by LIBRARIAN


   R. Koehler
   1100 West St.
   Laurel, MD. 20707

========> [VAX91B.GCE91B]AAAREADME.TXT;9 <========



Miscellaneous things from Glenn Everhart

[.analy]        AnalyRim program (combined spreadsheet and relational
                DBMS, for VMS, Unix, and AmigaDos. Also AnalytiCalc
                spreadsheet for unix (Sun executables). AnalyRIM has a
                new graphics command making it trivial to obtain high
                quality plots of spreadsheet data while still in AnalyRIM
                using GnuPlot (V3.0, included prebuilt for VMS) as the
                plotting engine. Most of the capabilities of GnuPlot
                can be used.
[.anunewsmods]  Compendium of posted patches for ANU News 6.0-3 since
                the Spring 1991 tapes. These include the newly released
                alphas of ANU News 6.1 as well as the 6.0-3 fixes.
[.boss]         The BOSS multisession monitor, with mods by Tony McGrath
                to allow it to compile with Gnu C.
[.bulletin]     Latest BULLETIN software; this is a bulletin system that
                works like vax mail but allows many to many communications
                in lots of folders, and can also act as a news reader for
                net news.
[.virtualdisks] Complete virtual disk package. Updates to FDDRV to make
                it more bulletproof; extensions to many routines. Also
                initial code for a Sun version of fddrv. Remote and local
                virtual/crypto/shadow/file/memory disks. Shadowing disk
                assign now allows both hosts to be specified by LBN so both
                can be raw devices. Also the fdhostcry4 program (better debugged
                than it used to be) now adds a more robust /CLEAR option to
                unjam some stuck I/O that could be caused by injudicious use
                of STOP/ID. FDdriver has also been made more bulletproof. There
                have been enhancements and bugfixes to vddriver4ae also to
                correct a problem that occurred in very high concurrent
                access situations, and an ASNVD mod which recognizes files
                which are contiguous by virtue of having only one extent
                is included, allowing these to be used even where they are
                not marked contiguous. (Often sysdump.dmp will qualify!)
                Several bugfixes to VD and FD drivers are included. The older
                ASNVD version is also present, since the one-extent recognition
                only works on ODS2 disks.
Forbidden_Knowledge.txt Discussion by Glenn Everhart on techniques for 
                intercepting VMS I/O at interesting points, and a few of
                the things that can be done with such techniques (meant to
                encourage more of this kind of discussions).
[.Kenney]       Technical hints from Forrest Kenney on terminal monitoring
                (including rt: terminals)
[.net91b]       Lots of bits from info-vax and other net sources. Includes
                Fortran-to-C translator update, POP3 mailserver for VMS,
                VNEWS news reader, MOST lister, Gnu Grep, Zip, Bulletin 
                update, ada grammar, much more. Also includes pc based
                ethernet bridge/router code (use a PC for bridge or router),
                and pathworks file clients for unix.
[.MX123]        Copy of the "user contributed" mods for MX. Note these all
                predate the release of MX 3.0 (in the [.rpi...] tree on this
                tapeset) and so should be examined carefully to determine if
                they are helpful with the current MX release.
[.uucp_update]  Couple of updates to DECUS UUCP 1.3 (from 1.3-2) from Tom
                Allebrandi and Earle Ake.

========> [VAX91B.GCE91B.BRUREAD]AAAREADME.TXT;1 <========



RSX 91A Submission:
        This directory contains an update to BRUREAD, a program to read
        RSX BRU backup sets under VMS. The modifications were applied to
        G. Kums' submission to the Fall 1990 RSX SIG tape (which in turn
        came from Adrian Weiler's submission to the U.S. Fall 1989 VAX
        SIG tape, part 1 (VAX89B1) that appeared in directory
        [.BRUREAD].)

        To use this program, simply:
                $ DEFINE BRUDIR <wherever you put these files>
                $ SET COMMAND BRUDIR:BRU
        What documentation there is is in BRU.TXT, which is accessable
        via the command BRU/HELP (or, of course, your favorite editor).
        A working knowlege of "real" BRU may be helpful.

        The modifications in this update are mainly in the area of
        command interface: 

        * The input spec now simply specifies the input file (I found 
          the old device:backupset format awkward for TPC files).

        * There is a /BACKUP_SET qualifier, which takes multiple backup
          set names, with wildcards.

        * /ZERO qualifier to supress complaints about files whose 
          maximum record length is zero.

        * /BRIEF qualifier to /LIST, which causes it to display only the
          backup set name and its size.

        * An output spec is also accepted, specifying the directory to 
          restore the tape under. The old functionality (still 
          supported) is equivalent to specifying [.<backup set name>].


        The directory contains the following files:
                                                
        AAAREADME.1ST   This file, for more info see AAAREADME.TXT
        BRU.CLD         Set Command BRU
        BRU.TXT         Short documentation
        BRUREAD.COM     Recompile/relink BRUREAD.
        BRUREAD.PAS     program source written in Pascal
        BRUREAD.OBJ     Object file
        BRUREAD.EXE     Executable build under VMS V5.1-1
        BRUMSG.MSG      Message/OBJ
        BRUMSG.OBJ      Message object.

        T. R. Wyant
        E. I. DuPont de Nemours
        P. O. Box 27001
        Richmond, VA 23261
        USA

========> [VAX91B.GPLOT]AAAREADME.TXT;1 <========



6-DEC-1991
GPLOT is a library of high-level subroutines for use with DEC GKS graphics.
You will need DEC GKS full-function software to develop programs using
this library. Executables developed with the library can be run on systems
with DEC GKS run-time only licenses.  EZPLOT is an interactive plotting
program which uses this library.  It was written by one of our users and is
made available here in executable form only. 

GPLOT includes the following types of routines:
        Linear and logarithmic axis routines
        routines for drawing curves with/without error bars
        curve interpolation routines
        Legend creation routines
        Enhanced text output routines (superscript, font-switching, etc.)
        contour plot routines
        3D-surface plot routines
        routines for vectors with arrowheads
        bar chart routines
        Device-selection menu routines/automatic printing
        Routine for interpreting GKS metafiles
        
To install GPLOT on a VAX which has VAX GKS installed, copy the GPLOT
directory tree to a disk with sufficient space (~12000 blocks), then define
the logical name GPLOT_DIR to point to directory [GPLOT] on that disk, and
the logical name GPLOT_SRC to point to the directory [GPLOT.SRC] on that
disk.  Add these logical name definitions to SYS$MANAGER:SYLOGICALS.COM so
the names will not be lost when you reboot.  You should also add the
following symbol definition to SYLOGIN.COM: 

        $ EDIT_GMENU:==RUN GPLOT_DIR:EDIT_GMENU.EXE

If you need to reduce the amount of disk space used, you can delete all files
in the [GPLOT.EXAMPLES] and [GPLOT.DOC] directories and all the ".for" files
in the [GPLOT.SRC] directory.  You can also delete GPLOT3.* AND GPLOT11.* in
[GPLOT]. 

Use the EDIT_GMENU routine to customize the graphics device menu for your site.
You will need the GKS Workstation type numbers from the DEC GKS manuals to add
a new device.  After customizing the graphics device menu for your site,
edit the file GPLOT.HLP to enter site-specific device information, then use
the command:

        $ library/help/create sys$help:gplot gplot.hlp

Individual users can create private graphics menus by copying the file
GPLOT_SRC:GDINIT.DAT to SYS$LOGIN: and then using EDIT_GMENU to modify it
as desired.  When GSTART or GMENU are called they will use the menu data
from SYS$LOGIN:GDINIT.DAT if it exists.  Otherwise the version in GPLOT_SRC
will be used. This file should be protected against modification by users
since EDIT_GMENU will operate on this file if there is no GDINIT.DAT in the
SYS$LOGIN directory.  Use EDIT_GMENU from the SYSTEM account to modify the
default version of GDINIT.DAT.

Documentation on GPLOT is given in the [GPLOT.DOC] directory.  It is given
in both the source MASS11 form and as a postscript printer file.  Example

                                                                Page 2


routines are in the directory [GPLOT.EXAMPLES].  Users can link to GPLOT by
including "GPLOT_DIR:GPLOT/OPT" in their link statements. 

There is an old version of GPLOT in the main directory (GPLOT3) which is
for compatibility with older versions.  Delete this unless you have an
old version of GPLOT or are converting from an old version of DISSPLA.  There 
is a subdirectory intended for the Unix version of GPLOT.  This is not yet
in operation, but may be useful for someone doing their own conversion.  The
source code format on most of these routines is tab format.  The new version of
the MODIFY command can be used to convert the source code format and comment
format if desired.

There are some known DEC GKS bugs which affect the operation of GPLOT. One of
the current bugs is that software characters are only two-thirds of the correct
size, but Postscript hardware characters are the correct size. Thus switching
fonts on a postscript printer will result in mismatched character sizes.  The
other serious bug occurs for circular and elliptic arcs on postscript devices. 
The GPUSH and GPOP routines do not work when multiple workstations are open. 
This may be a GKS bug or a GKS design problem.  Workstation Independent Segment
Storage is not currently working correctly.  The only way to add to the plot
interactively is to select both the screen and plotter devices initially. 
There are also bound to be a number of other bugs in GPLOT which have not yet
been discovered.  Any bugs found in GPLOT should be reported to: 

        Tom Worlton
        Intense Pulsed Neutron Source Division
        Argonne National Laboratory
        Argonne, IL 60439

        WORLTON@ANLPNS                  (BITNET)
        WORLTON@ANLPNS.PNS.ANL.GOV      (INTERNET)
        ANLPNS::WORLTON                 (HEPNET)
        708-972-8755

ANLPNS   DECnet node number is  46.535
ANLPNS Internet node number is  130.202.20.244

GPLOT is the property of the author and the Argonne National Laboratory of the
United States Department of Energy.  Distribution or sale of this software 
without the express permission of the author is prohibited.


========> [VAX91B.GRC]AAAREADME.TXT;2 <========



General Research Corporation
Scientific Computer Network
P.O. Box 6770
5383 Hollister Avenue
Santa Barbara, CA 93160-6770

(805)964-7724
(805)967-7094  [fax]

The contributing authors are:
     David W. Deley      [.GRC.DAVID...]


     [.GRC]--------+--[.CONTROLLER]
                   |--[.EDX]
                   |--[.OPTIMIZE]
                   |--[.PRIMES]
                   |--[.PROSE]
                   +--[.RANDOM]


[.GRC.CONTROLLER]
        This is an example of how to get a batch job which may take more
        than a day to complete to run at night and suspend itself during
        the day.


[.GRC.EDX]
        The very latest version of the EDX editor which now includes a
        built-in spelling checker, the ability to edit modules in VMS
        text libraries, buffer journaling, and bugfixes for VMS 5.3 & VMS 5.4

        EDX is a powerful EDT-style TPU based text editor which supports
        all the major functions of the EDT editor plus many other
        advanced features not available in the EDT editor or the newer
        EVE editor.  It is intended for users familiar with the EDT
        editor who would like to switch to a faster, more powerful
        editor without having to learn a new editor all over again.  EDX
        also supports a WPS-style keypad mode for users who prefer the
        WPS-style keypad.

        Following are some of the advanced features of the EDX editor
        which are not available in EDT or EVE:

        · Built in spelling checker with 70,000 word dictionary.  Spell
              check a buffer, range, word, or display the dictionary and
              browse.  Includes guessing algorithms and personal
              supplemental dictionary support.
        · Edit modules within VMS text libraries.
        · Obtain a directory listing
              Include optional /SIZE and /DATE qualifiers.
              Read in a selected file from the directory listing,
              delete a selected file, or lock a selected file.
        · Wildcard search and replace mode, with optional string to
              exclude as a match, case sensitive or insensitive.

                                                                Page 2


        · List all lines containing a specified string or wildcard
              pattern along with the corresponding line number.
              (The EDT 'TYPE ALL' command)
        · Search for and highlight matching parenthesis.
        · Lock files, preventing others from editing them while you do.
        · Sort a buffer, range, or columnar range.
        · Columnar cut and paste in insert or overstrike mode.
        · Encrypt a buffer using the American National Standard
              algorithm X3.92-1981.
        · Translate a buffer from EBCDIC to ASCII, and vice versa.
        · Compare two buffers line by line.
        · Translate DCL symbols and logical names.
        · Create DCL symbols and logical names.

        Note that all of the above features are performed within the
        editor, without spawning a subprocess.

        EDX is built on the VAX Text Processing Utility (VAXTPU).  Users
        familiar with VAXTPU can dynamically extend the editor's
        abilities by adding new functions which perform complex tasks.
        EDX makes this job easier by defining over 40 general purpose
        functions not available in VAXTPU itself.

        The EDX editor is also available from the DECUS library as
        program #V00385.  New updates are submitted to the DECUS
        library.


[.GRC.OPTIMIZE]
        Some code for performing numerical optimizations.  Given a
        function of several variables, find the values for the variables
        which minimizes the function value.  Two methods are presented,
        the Conjugate Direction Method of Fletcher and Reeves, and
        Powell's method.

                   
[.GRC.PRIMES]
        Routines for generating prime numbers and for finding the prime
        factors of a given number.  Also a routine for finding the
        next highest prime given a starting number.
        

[.GRC.PROSE]
        This is a small collection of a few fun things to read.
     

[.GRC.RANDOM]
        A paper on computer random number generators, with analysis
        of several commonly found random number generators including
        MTH$RANDOM (used by VAX FORTRAN and BASIC) and the standard
        ANSI C rand() function.  Anyone using random number generators
        will find the research done here most interesting and
        enlightening.

========> [VAX91B.HG]AAAREADME.TXT;1 <========



                          Western Kentucky University
                      Fall 1991 DECUS VAX SIG Submission
                               January 12, 1992

All submitted programs by:

        Hunter Goatley
        VMS Systems Programmer
        Western Kentucky University
        Academic Computing, STH 226
        Bowling Green, KY 42101
        Voice:  502-745-5251
        E-mail: goathunter@WKUVX1.BITNET
        
[.BAT]          BAT lets you quickly and easily submit multiple commands
                to batch queues without creating temporary command files.
                For example,

                        $ BAT DEL *.TXT;*|RENAME *.TMP *>TXT

                submits a batch job that sets its default directory to the
                one current at the BAT command, deletes all .TXT files,
                and renames all .TMP files.

                Source: BLISS-32, but MACRO-32 sources also provided

[.CVTLIS]       CVTLIS converts CD-ROM VMS source listings back to .B32, .MAR,
                or .C files for easy reading.

                Source: MACRO-32

[.DCL_RECALL]   DCL_RECALL is a program that will apply my DCL command recall
                patch to DCL.EXE.  It works for *all* versions of VMS.

                The patch allows the DCL RECALL command to recall as many as
                62 commands, instead of the default 20.

                Source: MACRO-32

[.GETCMD]       GETCMD lists the DCL command recall buffer for any process
                on the system.

                Source: MACRO-32

[.JNET_LINKWATCH]
                JNET_LINKWATCH runs as a detached Jnet process that checks
                link connections and reports link failures via operator alarms
                and optional mail messages.  Requires Jnet to run.

                Source: BLISS-32, but MACRO-32 sources also provided

[.RCARD]        RCARD reads DECwindows CardFiler files and displays them on
                normal VT terminals (non-X terminals).  Works with DECwindows
                and Motif v1.0.


                                                                Page 2


                Source: VAX C (can also be compiled with GNU C)

[.SET_PRCNAM]   SET_PRCNAM allows you to set the process name for any process
                on the system.

                Source: MACRO-32

Internet/BITNET sites can retrieve many other programs via e-mail by sending
e-mail with the body HELP and DIR ALL (on separate lines) to
FILESERV@WKUVX1.BITNET.  The following lists all packages available as of
January 12, 1992:

================================================================================
FILESERV@WKUVX1.BITNET                               Western Kentucky University
Last updated:  2-JAN-1992 21:00
================================================================================
The following VMS programs and files are available from the Western Kentucky
University file server (FILESERV@WKUVX1.BITNET).  To retrieve one or more
packages, send e-mail with the body consisting of the following command:

        SEND package-name

Multiple commands may be specified by putting each command on a separate line.
In addition to SEND, HELP and DIR are also supported.  For more information
on a particular package, send DIR package-name.

Package Name            Description
------------            -----------
APRT                    Lee Gleason's Change Protection on Pages in Memory
BAT                     BAT - Easily execute multiple commands in a batch queue
CD_ROM                  Read High-Sierra format CDs under VMS
CLRREF                  Program to clear the owner fields for a device (Gavron)
COMPRESS                UNIX-compatible compress
CVTLIS                  Converts CD source listings to BLISS, MACRO, or C source
DCLKEYS                 Routines to define DCL keys from a program
DCL_RECALL              DCL patch to allow recall of more than 20 commands
DECW_COOKBOOK           DECwindows Cookbook (PostScript)
DISM32                  Andy Pavlin's DISM32 VMS disassembler
DVIDVI                  VMS port of Tom Rokicki's DVIDVI
FLIST                   TPU-based directory and file manager
GETCMD                  Display the recall buffer for another process
GREP                    VMS port of GNU grep, egrep, & fgrep (w/ on-line help)
GREP_EXE                GNU grep, egrep, & fgrep executables (w/ on-line help)
INVISIBLE               Ehud Gavron's INVISIBLE: Hide your process on the system
JNET_LINKWATCH          Periodically checks to ensure BITNET links are connected
KEYS                    Lee Gleason's Process-Permanent Action-key routines
LABELS                  TPU procedure to renumber MACRO local labels
LASERV2_3               PostScript symbiont
LOGIN                   MACRO program to replace most of LOGIN.COM
LZW                     LZW compression/decompression programs for VMS
MXSUM                   Generate summaries from Message Exchange (MX) files
NEWSLETTER              TeX macros for formatting newsletters
PBMPLUS                 VMS port of Portable BitMap routines
PBM_TEX                 Convert Portable Bitmap to TeX .PK font
PRCPRV                  Grant privileges to another process (Ehud Gavron)

                                                                Page 3


RAMDRIVER               Gerard K. Newman's RAM disk driver
RCARD                   Display DECwindows Cardfiler cards on VT terminal
SED                     VMS port of GNU sed (stream editor) (w/ on-line help)
SED_EXE                 GNU sed executable (w/ on-line help)
SET_PRCNAM              Change the process name for any process on the system
STB                     Display contents of symbol table files (.STB)
SWIM                    SWiM v2.0 -- a multi-session windowing package for VMS
TQE                     Display Timer Queue Entries (TQEs) (Lee Gleason)
TURBO                   Locks shareable images into memory for faster access
UNMACRO                 Interactive disassembler for VMS (Robert Chojnacki)
UUCODE                  UUENCODE/UUDECODE - two versions: Pascal and C
VMS_SHARE               Packages source files into files suitable for mailing
WATCH                   Watch another terminal
XDVI                    TeX .DVI previewer for DECwindows
ZIP-UNZIP               Zip v1.0 & UnZip v4.1 for VMS, DOS, UNIX, & OS/2
ZIP_EXE                 Zip and UnZip executables (w/ on-line help)
ZOO210                  Sources for ZOO v2.10

FILESERV Manager: Hunter Goatley, goathunter@WKUVX1.BITNET

========> [VAX91B.JBAKER]AAAREADME.TXT;1 <========




  The following are a list of subdirectories and a short description of
what is contained in each.  Some changes may be required due to the 
location of files and related routines (obviously).  Hopefully any of 
these can be done with the least amount of effort.  All higher level 
programs are documented internally to help any user that may want to 
modify any of the code.  If a user does modify any code so that it works 
better I would appreciate a copy.  All work with any version of VMS (as 
far as I know, unless stated otherwise).


[.CONFIRM]     - Utility to keep that pain in the rear from saying that they
                 did not get some important message.  Some new qualifiers
                 have been added to confirm to allow messages to become
                 reminders at times.  Also fixed a security hole in the
                 program.  Also not as stringent to file names.

[.LIST]        - A username phone list that allows user modification.
                 The new version of LIST is version 2.0-A.  There was a bug
                 when adding a username that matched up with the beginning
                 of a longer username.  Also some input modifications.

[.NEURAL_NET]  - A toy neural network that uses backpropagation to learn
                 the exclusive or (XOR).  Also some research documents.

[.SHOWCUSERS]  - A modification of an earlier DECUS release.

[.USERCOUNT]   - A DCL command procedure used in identifying a user's 
                 "other" interactive processes across the cluster.  A rewrite
                 of previous program.

[.VERSION]     - A utility that displays the current version of software
                 whether it be personal files, layered products or the 
                 version of the operating system (NOT THE FILE NAME 
                 VERSION).  This does not require the SYSTEM MANAGER to 
                 update any files.  There have been a few internal mods
                 to the previous version of VERSION.  I think you will really 
                 like this one.

I have other projects that I had hoped to include in this submission, however,
time has been limited around here in the past year.  Hopefully I can get those
out next time.

  If there are any questions or problems contact:

               JONATHAN C. BAKER
               NAVAL SURFACE WARFARE CENTER
               CODE N23
               DAHLGREN, VA    22448
               (703)663-8705

========> [VAX91B.LEVINE]AAAREADME.TXT;1 <========



                        MACRO PRE-PROCESSOR
Michael N. LeVine
Naval Weapons Center
Code 3511
China Lake
Ca 93555
(619)939-2614
 avn 437-2614
LEVINE%FIDLER.DECNET@NWC.NAVY.MIL


                        Abstract

        This macro PRE-PROCESSOR is provided to allow the user to write code
that can easily modified for multiple environments, conditions, etc  simply by
changing parameters at the beginning of his code. 
        Capabilities included are: macros, conditional assembly, loops,
automatic label generation, including other files, macro directive nesting,
etc. 


        A program written for the macro PRE-PROCESSOR consists of directive
declarations and substitution operations. directives are to be on lines by
themselves (no source code). Substitution operators can be almost anywhere. 
        Two output files can be generated, a list file(.LIS) and a resulting
source file (.SRC) .
        The following is a summary of directives, substitution operators and
predefined variables:

*COMMENT
*ENDCOMMENT

*MACRO(name)
*ENDMACRO
*DOMACRO(name)(arg1)(arg2)(arg3)(arg4)...(arg10)
or
*name(arg1)(arg2)(arg3)(arg4)...(arg10)

*IF(expression)
*ELSEIF(expression)
*ELSE
*ENDIF

*SET(var=value/string/logical expression)
*REPLACE(var=value/string/logical expression)
*DEFAULT(var=value/string/logical expression)
*DELETE(var)
*REMOVE(var)

*DO(idx=start expression,end expression[,increment expression])
*ENDDO

*LIST(name)
*ENDLIST
*RESET(name)

                                                                Page 2


*MLIST(name,name,....name)
*ENDMLIST

*OPTION(option_var=value/string/logical)

*END
*EXIT

*DUMP

*INCLUDE(filename)

*PAGE

*ERROR('msg')
*TRACEBACK

*OPEN(expr,filename)
*APPEND(expr,filename)
*CLOSE(expr)
*REDIRECT(expr)

$varname$
$LABEL$
$LABEL0$
$LABEL1$
$LABEL2$
$LABEL3$
$LABEL4$
$LABEL5$
$LABEL6$
$LABEL7$
$LABEL8$
$LABEL9$
$INPUTLINE$
$DEF(varname)$
$TYPE(varname)$
$LENGTH(varname)$

DATE
FILE
TIME
VMS=VMS (VAX/VMS only)  or UNIX=IRIX (SGI IRIX )
VAX=VAX (VAX/VMS only) or SGI=SGI (SGI Irix)
LANGUAGE=NONE or Language name

========> [VAX91B.LOMASKY]AAAREADME.TXT;1 <========



AAAREADME.DOC                                                           12/03/91

                                Brian Lomasky
                              c/o TERADYNE, INC.
                        321 Harrison Ave., Mail Stop H87.
                              Boston, MA  02118
                               (617) 422-2259

DEC's AUTHORIZE utility has two reporting options for the SYSUAF.DAT file:

        1) Too little (AUTHORIZE LIST/BRIEF)

        2) Too much (AUTHORIZE LIST/FULL)

This is almost useless for meeting the system manager's requirements of
maintaining and monitoring the SYSUAF and its users.

--------------------------------------------------------------------------------

SYSUAF V5.00 is a reporting program for the SYSUAF and RIGHTSLIST data files.

Simply turn on READALL (or equiv) privilege and run SYSUAF.EXE.  (Do NOT install
this program with privilege; otherwise, any user could execute it).  A menu of
reporting options will be displayed.  The best way to see what is available is
to try them and see what data is displayed.

You can print reports either to the screen, to a data file (SYSUAF.LIS), or to
create a DCL command procedure (SYSUAF.COM) which can then be easily edited and
then executed.

SYSUAF.EXE will try to open SYS$SYSTEM:SYSUAF.EXE and SYS$SYSTEM:NETPROXY.EXE
(or SYS$SYSTEM:NETUAF.DAT), unless the logical name of SYSUAF and/or NETPROXY
(or NETUAF) is defined, in which case the SYSUAF.EXE program will try to open
the SYSUAF and/or NETPROXY (or NETUAF) files pointed to by the logical name(s),
respectively.

AAAREADME.DOC is this file.
SYSUAF.BAS is the source code for the main program (written in VAX BASIC V3).
SYSUAF.OBJ is the compiled source code
SYSUAF.EXE is the executable file for the main program.
TRANSFER_PWD_TO_NODE.BAS is the source code for the password-copying program
  which is executed by the command file created by the SYSUAF.EXE report option
  "L" (written in VAX BASIC V3).
TRANSFER_PWD_TO_NODE.OBJ is the compiled source code
TRANSFER_PWD_TO_NODE.EXE is the executable file for the password-copying program
  (which must reside in a directory pointed to by the logical name:   TOOLS:
   in order to be available to the SYSUAF.COM command file created by
   SYSUAF.EXE)

You do not need the TRANSFER_PWD_TO_NODE.* files if you never select the "L"
option on the SYSUAF menu.

You should not need to recompile or relink either of the executables unless you
need to change the features of the program.  (Instructions for compiling and
linking SYSUAF are contained at the beginning of the source code).  These

                                                                Page 2


programs have been tested on VMS V4.6, V4.7 and V5.1, V5.2, and V5.3.

Special note on report option "K":

        Report option "K" is used to copy all SYSUAF.DAT data (except for
        any encrypted password data - which is handled by the "L" option) for
        selected users (based upon the responses to the other SYSUAF prompts)
        from one node's SYSUAF.DAT to another node's SYSUAF.DAT.  It does this
        by creating a command file, which when executed, will copy the account
        data.  You will be prompted as to whether you want to copy only
        usernames which do not have a matching username (as yet) on the remote
        node or whether to copy data for all selected usernames (based upon the
        responses to the other SYSUAF prompts).

        Normally, you would run this option and then run option "L" to create
        the two SYSUAF.COM command files which will then be subsequently
        executed, as follows:

                1) Copy the SYSUAF.COM command file produced by the report
                   option "K" to the remote node and execute it on the remote
                   node to add the required new accounts (less passwords).

                2) Then execute the command file produced by the report option
                   "L" on the local node to copy the encrypted password
                   information from the local node's accounts to the accounts
                   on the remote node.  The command file will prompt you for
                   the name of the remote node to be updated.

        Besides the usual SYSPRV (or equiv) privilege that is required to run
        this utility on the local node, you will also need a proxy from the
        local node to a similarly-privileged account on the remote node in order
        for the program to open both nodes' SYSUAF.DAT files for the transfer
        operation.

Special note on report option "L":

        Report option "L" is used to copy the encrypted password information
        from one node's SYSUAF.DAT to another node's SYSUAF.DAT.  It does this
        by creating a command file, which when executed, will copy the data.
        You will be prompted as to whether you want to copy only passwords whose
        usernames do not have matching usernames (as yet) on the remote node or
        whether to copy passwords for all selected accounts (based upon the
        responses to the other SYSUAF prompts).

        Note that the command file created by this option will attempt to
        execute a utility called TRANSFER_PWD_TO_NODE.EXE which is located in
        a logically-named directory called TOOLS:  (You must define the TOOLS:
        logical name and ensure that the executable resides in that directory,
        prior to executing the command file).

        This report option does not affect the local node's SYSUAF.DAT file in
        any way; Only the remote node's encrypted password data in its
        SYSUAF.DAT file is updated.
 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -


                                                                Page 3


**** Besides the Username, select the data item(s) to appear on the report: ****
A) Access Restrictions           Quotas:      !) Last Password #1 Change Date
B) Account Expiration Date     R) ASTLM       @) Last Password #2 Change Date
C) Account Name                S) BIOLM       #) Last Interactive Login Date
D) Base Priority               T) BYTLM       $) Last Non-Interactive Login Date
E) CLI Name                    U) CPUTIME     %) Number of Login Failures
F) CLI Table                   V) DIOLM       ^) Any Existing Userdata
G) Default Device              W) ENQLM       &) Customer-site-specific data
H) Default Directory           X) FILLM       *) Held Identifiers
I) Login Command filespec      Y) JTQUOTA
J) Login Flags                 Z) MAXACCTJOBS
K) Minimum Password Length     0) MAXDETACH
L) Owner Name                  1) MAXJOBS
M) Password Lifetime           2) PBYTLM
N) Primary/Secondary Days      3) PGFLQUOTA
O) Privileges - Authorized     4) PRCLM
P) Privileges - Default        5) SHRFILLM
Q) UIC                         6) TQELM
                               7) WSDEFAULT
                               8) WSEXTENT
                               9) WSQUOTA

========> [VAX91B.NSWC]AAAREADME.TXT;1 <========



FALL 1991 DECUS VAX SIG TAPE SUBMISSIONS FROM

        DAHLGREN VAX LUG

        Naval Surface Warfare Center
        Dahlgren, Virginia  22448


For each submission, all of the sources are present.  The sources, and other
files necessary to build the products from their sources, are compressed.
See SOURCES.0README for more information.  Most of the programs are written
in Fortran, and require object library NXXXLIB (whose sources are also
present) to link.  Each product has a command procedure (named product.BUILD)
to build the product from sources.

Several of the programs require some site-specific configuring, often edit-
ing a .CLD file.  I believe everything should work without tinkering if you
set your default directory to this directory, and define logical name HERE
to be this directory.

   Submissions from Alan Zirkle, NSWC Code K55      (703) 663-8023
                                 Dahlgren, VA  22448

                                 Just got on DECUServe:  "ZIRKLE"

         SD -- SET/SHOW DEFAULT -- This version of SD is related to Dale
               Coy's excellent version, in that they both descend from a
               common ancestor.  This incorporates his features, plus
               several new ones.  Read SD.0README and SD.HLP for further
               information.  Small fixes since Spring 1991.

        LET -- Related to SD.  A shorthand DEFINE command for defining
               logical names.  Read LET.HLP for more information.  To use,
               first execute the command $ LET == "$dev:[dir]LET".  Small
               fixes since Spring 1991.

      USERS -- Continuously-updating cluster-wide display of information
               about all or selected processes (select by nodes, process
               types, and/or usernames).  Read USERS.HLP for more infor-
               mation.

     VGRAPH -- A very, very simple viewgraph producer for PrintServer 20
               and 40 printers.  Uses PostScript.  Read VGRAPH.HLP for more
               information.  To use, first execute $ SET COMMAND VGRAPH.
               Two sample input files *.VIEW are included.  Tailoring for
               your local print queues is now done in a companion command
               procedure.  Many improvements since Spring 1991.

      BOXES -- A utility to allow documents and screen displays to easily
               use the line-drawing characters in the DEC Special Graphics
               character set on DEC-compatible terminals and printers.
               You write your document using +, -, and | to construct boxes
               or line segments, for example:
                                                +-----+-----+
                                                | TST | 001 |

                                                                Page 2


                                                +-----+-----+

               and the BOXES utility will translate these characters to the
               applicable corners, tees, etc. so that solid lines print in
               the finished document.  Read BOXES.HLP for more information.

   IF_ENDIF -- A command procedure which checks other command procedures for
               proper nesting of IF/ELSE/ENDIFs.  See usage notes and re-
               strictions in IN_ENDIF.COM.

      ZMENU -- A utility to produce a menu display inside a command proced-
               ure.  You provide a simple template file, and ZMENU displays
               it along with a pointer which it moves between your selections
               based on the user's arrow key input.  See ZMENU.HLP for more
               information.  Execute @ZMENU.TEST for a demonstration.

    NXXXLIB -- Subroutine library needed to link the above programs.  Many
               of the routines may be useful to you in other applications.
               The library and its sources are in the compressed sources
               file; see SOURCES.0README for more information.

Subdirectory [.OLDSD] contains what may be the original version of the SD
utility, from 1979.


========> [VAX91B.POP]AAAREADME.TXT;1 <========



This is the POP3 system for various machines. POP stands for Post Office
Protocol and is a means for PCs to access mail stored on servers whose
network connections remain up all the time.
 
 
On VMS the Indiana university POP3 server is here.
 
For the Mac's  we have:
 
Eudora 1.2 (requires MacTCP)
 
For the PC's we have
 
POPmail 2.4b1 (or 2.3) (requires a clarkson packet driver)

========> [VAX91B.RAGOSTA]AAAREADME.TXT;1 <========



                   Fall 1991 DECUS Symposium Release
                   Arthur E. Ragosta
                   RAGOSTA@MERLIN.ARC.NASA.GOV  (Internet)
                   MS 219-1
                   NASA Ames Research Center
                   Moffett Field, Ca.  94035
                   (415) 604-5558


This directory tree contains new versions of (mostly) previously released
software.  Included are:

ADAM      - the ADAM text editor.  Updated for EVE 5.3.
FPT       - FORTRAN Programming Tools.  Many program-development and support 
                tools.  Some are FORTRAN-specific.
GRAPHICS  - latest release of the GRAF program.  Interactive technical graphics
                using DISSPLA.  Latest release of DISSPLA-based viewgraph
                program.
KRONOS    - latest version of the super batch job scheduler.  Enhanced, more
                robust, etc.  Also more/improved sample jobs.  Also notes and
                viewgraphs from session VA052 "Automating VMS System Management
                Tasks".


Most files are archived using the LHARC utility provided on the Fall 1990
Symposium tape.

========> [VAX91B.RICHARDSON]AAAREADME.TXT;1 <========



SUBMISSION:  VARIOUS SOFTWARE ITEMS FROM COMPASSION INTERNATIONAL AND/OR
             KEN RICHARDSON - 06-Dec-1991

Submitted by:

        Ken Richardson
        Compassion International
        PO Box 7000
        Colorado Springs, CO  80933

        Phone:          (719) 594-9900
        FAX:            (719) 594-6271
        TELEX:          (025)910-380-9380 (CMPASHUN)
        Easylink:       62868920

Disclaimer:

        This software is made available to the public with no warranties,
        guarantees, or liability for its use or any consequences thereof.
        After all, it's free.  However, I wouldn't submit it if I didn't think
        it worked correctly.  And the code written at our site tends to be
        well-structured, efficient, clean, and debugged.
        New this year:  ENPAGE_HP.
        Changed:  SYSTATUS, INITMODEM, and DIALUPINI.

Detailed descriptions:

        The following are descriptions of most of the files you'll find in this
        submission.


CLOSE_VMS_ACCT.COM

        We use this command procedure to close our VMS accounting files every 
        month.  This facilitates usage analysis and archiving of accounting data
        by month.  Nothing fancy, but if you don't have it, here it is.

CONCATENATE_SIXEL.EXE

        This program concatenates SIXEL graphs side-by-side.

        At our site, we do Datatrieve graphs of CPU performance statistics.
        Lots of them.  So I wrote this program to minimize paper by printing
        these graphs in two columns.  First we run our REGIS graphs through
        RETOS, which gives us SIXEL graphs.  Then we run the SIXEL graphs
        through this program.

CONCATENATE_SIXEL_EXAMPLE.COM

        This little command procedure shows the basics of using
        CONCATENATE_SIXEL.

COUNTREC.EXE

        I got tired of copying files to the null device in order to find out how

                                                                Page 2


        many records they contain (copy/log file.dat nl:), which can be quite
        slow and resource-intensive with large files, so I wrote this simple
        record-counting program.  If you define it as a foreign command, you can
        specify the input file on the command line.  Otherwise, it prompts you.
        Wildcards are not implemented yet; however, COUNT_RECORDS.COM provides
        this.

COUNT_RECORDS.COM

        This procedure allows wild-carded counting with COUNTREC.EXE.  We have a
        COUNT command defined as @CI$COMMAND:COUNT_RECORDS.COM, which lets us
        type "COUNT filespec" to count records in a bunch of files. 

DIALUPINI.EXE

        We use US-ROBOTICS hayes-compatible modems on our dialups (the kind that
        use the AT command set).  They work fine; we use the same lines both for
        dialing in and for dialing out.  However, when the modems power up, they
        default to sending extra information to VMS (like "RING<CR>" and
        "CONNECT<CR>") every time someone dials in.  This causes VMS to complain
        that username RING is trying to break in.  So we run DIALUPINI.EXE to
        tell the modems to be quiet, and everything works much better.

        DIALUPINI.EXE expects a logical name (DIALUP) to point to the port that
        needs to be reset, and it expects you to already have allocated the port
        and set the appropriate speed (assuming you are using autobaud on the
        port).  You might need a privilege to allocate the dialup port,
        depending on how your ports and system parameters are set.  I think it's
        SYSPRV.  For more info about DIALUPINI.EXE, see INIT_DIALUPS.COM.

DROIDS.EXE

        This game lets you get chased by robots on a 24x40 field.  Only in a
        weak moment will I confess who wrote it.  It runs efficiently, using
        only one QIO per screen update and one per input.  It requires write
        access to a CI$GAMES directory, which is where it stores the "droids
        champions" list (droids.dat).  If more than one player will be using the
        same droids.dat file, you need to SET FILE/PROT=W:RW to the file after
        the first player creates it.

EATCPU.EXE

        This program consumes an (almost) exact percentage of a VAX's CPU
        capacity.  It is typically used to test the response time of various
        software packages under controlled load conditions.  For example, "How
        fast (slow) is product X when the CPU is Y% saturated?"

        If you are considering using a slower processor for an application,
        response times on slower processors can also be predicted fairly
        reliably by slowing down the faster processor by the appropriate
        ratio.

EMPTY.SIXEL

        This "empty" sixel graph is used by CONCATENATE_SIXEL_EXAMPLE.COM.  It

                                                                Page 3


        is used as the "left-hand" graph in a concatenation operation in order
        to indent a SIXEL graph.  It has the minimum SIXEL codes needed by
        CONCATENATE_SIXEL for a successful concatenation operation.

ENPAGE.DOC

        ENPAGE.DOC is a documentation file describing the ENPAGE utility.
        For more info, see ENPAGE.EXE or read ENPAGE.DOC.

ENPAGE.EXE (and ENPAGE_HP.EXE)

        When we got our nifty new LN03 laser printers, we needed a way to put
        all that power in the hands of our office staff.  ENPAGE is how we did
        it.  New this year is ENPAGE_HP, necessary now that we've got HP
        Laserjets floating around the VAXcluster.

        The idea is to provide basic formatting capabilities without resorting
        to a word processor.  (We do have WordPerfect on our VAXes, but often
        it's faster and easier just to fire up a text editor followed by
        enpage.)

        ENPAGE reformats a text document, adjusting margins (left, right, top,
        & bottom), pitch (both vertical & horizontal), orientation (portrait or
        landscape), point-size, and stuff like that.  It compensates for
        embedded tabs regardless of the left margin you specify.  If you've
        never encountered that problem, please ignore the previous sentence.

        For people who write letters, ENPAGE can optionally output the first
        page separately from the rest of the document.  We use this feature
        to drive two LNO3 printers, one loaded with letterhead, the other with
        plain-bond.

        ENPAGE output can be directed either to devices or to files.  ENPAGE
        output is suitable primarily for DEC or HP laser printers (it inserts
        control sequences into the results).  To use the output on some other
        printer, you'd probably have to edit the device control sequences out
        of the first and last lines of the output files.

FORCEX.EXE

        Have you ever had a program get into an infinite loop?  Well, neither
        have I, but just in case it ever happens, this program will exercise the
        VMS system services just enough to list out all the processes on the
        system and ask you if you want to force-exit any of them.  The display
        format has been upgraded since Fall 1989.

        It's not any fantastic new discovery, but it does have the advantage of
        stopping just the current image rather than the entire process.  The
        process returns to the $ if it's interactive, or to the next line in
        the command procedure if it's batch.  FORCEX requires WORLD privilege,
        GROUP privilege, or the same username, depending on the target process.

INIT_DIALUPS.COM

        We have three dialup lines; they are known by system-wide logicals

                                                                Page 4


        ci$dialup_1, ci$dialup_2, and ci$dialup_3.  We initialize the modems on
        those lines during system startup and once per hour (in case someone has
        been using a modem and left it in a non-standard condition).

        The INIT_DIALUPS.COM command procedure looks for all devices pointed to
        by ci$dialup_n.  For each such unallocated device, INIT_DIALUPS.COM
        allocates the device, sets the speed, initializes the modem (using
        DIALUPINI.EXE), and deallocates the device.

        The maximum speed for each modem must be specified by the logical
        ci$dialup_max_speed_n (e.g. ci$dialup_1 = "TXA0" and
        ci$dialup_max_speed_1 = "2400").

LASER2.COM

        This is the procedure that drives the ENPAGE utility.  Actually, at our
        site we have another procedure that provides novice users with somewhat
        simple access to rather sophisticated printer characteristics on several
        printers throughout the office, including our plain-bond laser printer.
        However, LASER2.COM shows the basics of using ENPAGE.EXE when driving a
        letterhead/plain-bond printer combination.

LOCK_TERMINAL.EXE

        This is a simple program that accepts and verifies a password, then
        locks your terminal until you type the password again.  Useful for
        leaving an account logged in while you go away for a couple of minutes.
        It traps CONTROL-C and CONTROL-Y.  However, if you are logged-in
        remotely using $SET HOST, CONTROL-Y could still be used by a malicious
        user to return to your original process on the local node.  For this
        reason, I use it mainly on local nodes.

REMINDPRT.COM

        This is a simple command procedure to provide access to REMINDPRT.EXE.

REMINDPRT.EXE

        We are using a REMINDER utility that came from a DECUS tape a few years
        ago.  It was written by someone at AT&T.  If you are using the same
        REMINDER program, you might find REMINDPRT.EXE useful.  It is NOT
        compatible with other reminder programs from more recent DECUS tapes!

        We needed more flexibility in printing out reminders, so we wrote this
        program to print simple calendars from the reminder file.  No REMINDER
        user should be without it.  Output goes to CI$OUTPUT.

REMRESCHD.EXE

        One of the annoying things about that AT&T REMINDER utility is that it
        deletes old reminders automatically, even if you never got to see it.
        Well, every night right after midnight I run REMRESCHD.EXE to reschedule
        old reminders up to today.  That way REMINDER becomes a to-do list that
        won't let me forget a reminder unless I explicitly delete it.


                                                                Page 5


        Caution:  If your login.com automatically displays your reminders
        ($REMIND ME) like mine does, you need to jump over that line when f$mode
        is "BATCH" so your midnight rescheduling job can run REMRESCHD on your
        reminder file before REMINDER gets to it.

SHUT_LOGS.COM

        We use this command procedure to close our OPERATOR.LOG file nightly and
        open a new one.  It also closes our database monitor logfiles, which are
        produced by VAX DBMS.  It resubmits itself nightly, skipping weekends
        automatically.  Again, nothing fancy, but if you don't have it, here it
        is.

        For some reason, the VMS developers wrote the $REPLY/LOG command to
        require a terminal as its sys$command device.  Therefore, in order to
        shut OPERATOR.LOG, this procedure temporarily grabs the operator console
        as its sys$command device.  Back when I wrote this procedure, it
        wouldn't work from batch unless it did some sort of trick like this.  I
        haven't checked to see if VMS has lifted this requirement since.

SYSTATUS.EXE

        This is SYSTATUS version 5.6 for VMS version 5.2 or later.  It's a
        system status monitor with some interesting display flexibility.  We
        rely on it heavily at our site.


VMSDOWN.COM (and VMSDOWNUP)

        These procedures allow under-privileged operators to take a VAX down
        (optionally with automatic reboot).  They are to be submitted /HOLD on
        a batch queue from a privileged account like SYSTEM.  When the operator
        releases one of these jobs, it resubmits itself /HOLD again, and then
        creates a detached process that does the actual shutdown.

USING COMPASSION INTERNATIONAL SOFTWARE

        If you use any of the software in this submission, you will probably
        need to edit our command procedures or define logical names to account
        for the conventions that we use at Compassion.  The items you will
        probably need to change or define include:

        LOGICAL NAMES:

        ci$command      The directory that holds our local command procedures.
        ci$dialup_n     The dialup ports at our site (n = 1, 2, 3, etc.).
        ci$dialup_max_speed_n
                        The dialup port speeds at our site (n = 1, 2, 3, etc.).
        ci$games        The directory that holds games and related files.
        ci$images       The directory that holds our local images.
        ci$input        The primary input device for a program.
        ci$output       The primary output device for a program.
        ci$output_2     The secondary output device for a program.
        ci$workfiles    The intermediate directory commonly used at our site.


                                                                Page 6


        QUEUE NAMES:

        laser$print_1   The name of our plain-bond print queue.
        laser$print_2   The name of our letterhead print queue.
        normal$batch    The name of our priority-4 batch queue.

        FORM NAMES:

        letter1         The form type normally mounted on laser$print_2.
        plain_bond      The form type normally mounted on laser$print_1.

========> [VAX91B.RPI]AAAREADME.TXT;2 <========





                   DECUS VAX Systems SIG Tapecopy Submissions
                        Rensselaer Polytechnic Institute
                                   Fall, 1991


                                 submitted by:


                                Matthew Madison
                         Engineering Computing Services
                        Rensselaer Polytechnic Institute
                         Troy, New York 12180-3590 USA
                                +1 518 276 2606

                       madison@vms.ecs.rpi.edu (Internet)
                           MADISON@RPIECSVX (BITNET)



     This submission contains six subdirectories  with  items  of  possible
     interest to VMS system managers and users.  All entries include source
     code,  object  code,  executables,  and  documentation.   Updates   to
     previously submitted entries are noted.

     All entries,  unless  otherwise  noted,  are  written  BLISS-32.   All
     entries include the BLISS source code contained in a compressed BACKUP
     save set to save space.  Use the LZDCMP program to decompress the save
     sets  and  BACKUP  to  unload  them.  Some of the entries also contain
     MACRO source code as generated by the BLISS compiler.

     All entries include an AAAREADME.DOC file; most also  include  further
     documentation.

     All entries require VMS V5.0 or later.

     1.  [.MDMLIB]

         MDMLIB is a set of utility routines called by some of the programs
         in  this  submission,  and  is required if rebuilding the programs
         from sources.  [update of Spring 1991 submission]

     2.  [.MX]

         Mesage  Exchange  (MX)  is  an   electronic   mail   routing   and
         distribution  facility,  supporting  local  delivery via VMS MAIL,
         SMTP  over  TCP/IP  (CMU-Tek,  TGV  MultiNet,  or  DEC  VMS/ULTRIX
         Connection),  SMTP  over  DECnet,  BITNET mail over Jnet, and UUCP
         mail via DECUS UUCP.  It also  supports  mailing  lists  and  file
         distribution over E-mail.  [update of the Spring 1991 submission]

     3.  [.NETLIB]

         NETLIB is a library of routines  that  provide  access  to  TCP/IP

                                                                Page 2


         services  in  a  transport-independent  fashion.  Supports CMU-Tek
         TCP/IP, TGV MultiNet, and DEC VMS/ULTRIX Connection.

     4.  [.NEWSRDR]

         NEWSRDR is an NNTP client program for reading  Usenet  news.   Can
         use  CMU-Tek  TCP/IP  or  VMS/ULTRIX Connection as NNTP transport.
         [update of Spring 1991 submission]

     5.  [.NSQUERY]

         NSQUERY is  a  utility  that  interrogates  Internet  domain  name
         servers.   Requires  the  NETLIB  library,  also  provided in this
         submission.  [new]

     6.  [.UCX_FINGER]

         A simple FINGER utility and server for DEC VMS/ULTRIX  Connection.
         Nothing fancy, but it works.  [new]


========> [VAX91B.RSX91B]AAAREADME.TXT;2 <========

RSX Fall 1991 SIG TAPE
--- 
[301050]
	TPC - Tape - Disk - Tape copier update. Fixes register save
	bug in BIGTPC. Submitted by Alan Frisbie.

[301200]
THIS DIRECTORY CONTAINS:
	AAAREADME.1ST, THIS FILE.

	BRUSHELL.FOR
	A Fortran shell for the DECUS program BRUREAD. This is a fortran 
	program for VAX/VMS 4.6 or later which system services to manage
	BRUREAD. It may be installed and used through the system DCL tables
	or a user may do a SET COMMAND and use it from a local directory.
	Please refer to program BRUSHELL for configuration parameters. The
	tape drive is set to _MTA0: and should be set according to individual
	requirements.

	NOTE: BRUREAD MUST BE INSTALLED IN THE SYSTEM DCL TABLES OR EXIST
	IN LOCAl CONTEXT VIA THE "SET COMMAND" FACILITY.


	INSTALL_BRUSHELL.COM
	Installation command file. Tailor this to your specific requirements.


	BRUSHELL.CLD
	Command Line Definition file. Patch the image statement as required.

	BRUSHELL.OBJ
	VAX/VMS Fortran 4.4 object


	BRUSHELL.EXE
	VAX/VMS 4.6 executable
From Bruce Prendergast
[314100]
	THIS SUBMISSION INCLUDES 2 PROGRAMS:

	DIR.CMD IS A COMMAND FILE TO GIVE THE USER MUCH MORE INFOR-
	MATION ABOUT THE CONTENTS OF A DIRECTORY FILE THAN CAN BE
	GOTTON WITH MOST OTHER PROGRAMS SUCH AS PIP OR DIR.

	SDF (SHOW DISK FRAGMENTATION) IS A MACRO PROGRAM TO GIVE
	THE USER INFORMATION ABOUT THE FRAGMENTS ON A DISK.  THE
	OUTPUT CAN BE DIRECTED TO A FILE FOR STORAGE FOR THOSE PEOPLE
	WHO WANT TO KEEP RECORDS OF SUCH THINGS.  BE ADVISED:
	THIS PROGRAM WILL NOT WORK FOR THE VERY LARGE NEW DISKS
	SUCH AS THE RA-90.  WHEN I FIND OUT HOW DEC MODIFIED THE
	BITMAP FILE TO HANDLE THESE LARGE DISKS, I WILL MODIFY
	AND RESUBMIT THIS PROGRAM.



					THANKS
					ANTHONY E. LEVAN
					513-426-6000
[351144]
This is a reissue and update of the SIG Tape Road Map by Annamaria 
Szentgali of DECUS MUNCHEN, updated by Jan H. Belgraver of DECUS 
Holland. It includes all known RSX tapes (both Europe and US), 
plus Pascal SIG and selected IAs and RT SIG tapes.

Additions since the last issue (Fall 1990) are:

	Spring 1983 RSX SIG tape.
	Fall 1990 RSX SIG tape.
	Spring 1991 L&T SIG tape (RSX portion).

					Tom Wyant
					DECUS U.S.
					December 1991
[351145]
	    This directory contains four papers to be presented
	at the Fall 1991 DECUS U.S. Symposium - 

	  Favorite RSX problems (DA115) 

	  RSX Indirect Command Processor (as AT_INTRO and
		AT_ADV) 

	  RMS Utilities for Non-RMS RSX Users (DA120-?)	\ Session
	  A Practical Introduction to RMS (DA120-?)	| du
	  ACP QIOs from High Level Languages (DA120-?)	/ Jour

	Also included are example command files from the "@"
	processor talk. 
		From Tom Wyant
[351146]

         CRPADD:  Cryptic Addition - V91.340

         Author:  T. R. Wyant III, E. I. DuPont  de  Nemours,  Richmond,
         VA.

         Operating System:  RSX, VMS

         Language:  Fortran-77/VAX FORTRAN

         Memory Required:  VMS:  6KB
                   RSX:  28KB (no resident libraries)

         Other Hardware Required:  None

         Keywords:  Mathematical

         Abstract:

         This program solves cryptic addition problems by a  brute-force
         depth-first  search.  In its current incarnation it will handle
         problems of up to 10 addends of up to 60 digits each.  The user
         is  prompted  for  number  of addends, verification (useful for
         large problems) whether or not all solutions are  desired,  and
         whether  a  trace  of  the  logic  is desired.  Then the actual
         addends and sum are requested (with a verify pass if  desired).
         Input is case-sensitive.
[351147]
	BRUREAD, a BRU tape reader for VMS. Submitted by Tom Wyant.
	(A later correction is in version BRUREAD2.*; the file may
	be relinked if desired.)

========> [VAX91B.RUCKERT]AAAREADME.TXT;1 <========



This is a submission from Medtronic, Inc., Minneapolis, MN.  It consists of 1
thing:

  (1) WordPerfect Kermit keys.  These would be useful to have a PC, with  
      the enhanced keyboard running Kermit, emulate the standard WordPerfect
      PC keys (regular function key, shifted function key, alt function
      key, and control function key).  It takes advantage of the WordPerfect
      "compose" function.

      To use it, simply add it as a "take" file in Kermit's initialization.


Roger G. Ruckert
Senior Technical Analyst
Medtronic, Inc.
Mail Stop 111
7000 Central Ave.
Minneapolis, MN  55432

(612) 574-4742

========> [VAX91B.SABATINE]AAAREADME.TXT;1 <========





VMS device driver names are, by convention, two letters and the word
DRIVER, as in LDDRIVER.  This name is not only a file name, but must be
encoded in the device image itself.  In this way, the device identifies
itself to VMS.

Problems can exist if a site has two different drivers to be loaded, both 
of which have the same name.  This can sometimes happen when sites
purchase or evaluate a number of third party vendor products.  Since VMS 
will not allow different drivers to share the same name, one driver either 
must be renamed (typically through the vendor), or only one device can be 
used at a time. 

FIXDRIVER solves this problem by modifying the driver image internal name to
a user specified value.  Thus, a driver named LDDRIVER could be changed to
something else, say SPDRIVER.  Please note that FIXDRIVER only changes the 
internal image name.  The user will need to perform a RENAME on the file 
itself to rename it.

FIXDRIVER assumes that the "current" name of the driver is of the form
XXDRIVER.  If it is not, no change will be made to the image, and the 
program will report an error.

========> [VAX91B.SWIM]AAAREADME.TXT;1 <========



SWiM version 2.0 by Steve Jennen       jennen@tigger.stcloud.msus.edu
Student Programmer, Academic Computer Services
St. Cloud State University, St. Cloud, MN 56301
=========================================================================

Welcome to SWiM, the multi-session windowing terminal application for
VAX/VMS.  SWiM let's you open windows on your terminal screen, each window
becoming a terminal in itself.  In the windows then, you can log into your
same account (the one running SWiM) or into a different account.  Each
window is an almost full featured VT100 terminal, running most popular
applications available for the VAX.

SWiM allows dynamic sizing of the windows, movement of windows to anywhere
on or off the screen, CUT and PASTE between windows and a back-scroll
feature to look at information that has just scrolled off your screen. 
Once you have the number of windows you're comfortable with and you've
placed them in your favorite location, SWiM allows you to save that
information in a script file.  Next time you run SWiM, you can specify the
loading of the script file and your setup will be properly reproduced. 
SWiM is fun, useful and addicting and I hope you enjoy it.

To set up SWiM on your system, first install the pseudo-terminal drivers
according to the documentation for them.  (Note: The pseudo-terminal drivers are
now part of DECwindows, so if you've installed that you're ready to go.  If not,
then you may have already installed them for some other utility, just do a SHOW
DEV and look for two devices called PYA0 and TWA0.  If they are there, then
you're set.)  Then, compile and link SWiM as follows:

        $ cc/opt=(disj,inline) swim
        $ link/notrace swim,swim.opt/opt

The VAX C compiler can be resource intensive during a compilation with
optimizations turned on, so if you get a "Compiler Abort" message, use an
account with sufficient quotas to compile SWiM or simply compile using
"cc/noopt".

Then, create the help library for SWiM:

        $ library/create/help swim swim

Or use the command procedure to compile, link and create the help library:

        $ @build

SWiM uses a logical SWIM_LOCATION to point to the location of the help
library.  This logical must be defined before running SWiM.

SWiM needs to be INSTALLED with privs and you can do this by:

$ INSTALL
INSTALL> CREATE SWIM_LOCATION:SWIM  /OPEN /HEADER /SHARE /PRIV=SHARE
INSTALL> EXIT
$

The important option there is the PRIV=SHARE.  SWiM needs this priv to modify

                                                                Page 2


the pseudo-terminal device characteristics that may be owned by a process other
than the process activating the SWiM image.

Setup SWIM as a foreign command:

        SWIM == "$swim_location:swim"

It'll accept one parameter, that being the script-file-name:

        $ swim [script-file-spec]

The script-file has a default extension of ".SWM", which will be added
automatically by SWiM during the creation of the script file.

For information on differences between version 2.0 and 1.0, please read the
first few pages of the source file SWiM.C.

========> [VAX91B.TAYLOR]AAAREADME.TXT;1 <========



Fall 1991 DECUS Submission

This directory contains the example programs from session VA091
Introduction to VMS System Services.

The programs in this submission can be used freely.  They are not
much different from example programs in VMS, C, and FORTRAN documentation.
The authors accept no responsibility for the use or reliability of these
submissions.

The following files are included:

FORTRAN examples

  SETPRN_FOR.FOR    ! Uses SYS$SETPRN to set process name
  SETPRN_FOR.OBJ    ! compiled and linked on VMS V5.4
  SETPRN_FOR.EXE

  SHOW_PRCNAM_FOR.FOR   ! Uses SYS$GETJPI to show process name
  SHOW_PRCNAM_FOR.OBJ   ! compiled and linked on VMS V5.4
  SHOW_PRCNAM_FOR.EXE   

C examples
 
  SETPRN_C.C    ! Uses SYS$SETPRN to set process name
  SETPRN_C.OBJ  ! compiled and linked on VMS V5.4
  SETPRN_C.EXE

  SHOW_PRCNAM_C.C    ! Uses SYS$GETJPI to show process name
  SHOW_PRCNAM_C.OBJ  ! compiled and linked on VMS V5.4
  SHOW_PRCNAM_C.EXE

The following logical was created before linking the C programs:

   $ DEFINE LNK$LIBRARY SYS$LIBRARY:VAXCRTL


Mike Taylor
Retha Taylor
Taylor Made Software
St. Louis, MO

We apologize for not giving a complete address.  The address will change
soon and the new address was not available at submission time.

========> [VAX91B.UALR]AAAREADME.TXT;1 <========



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


   Submissions by:      Dale Miller
                        University of Arkansas at Little Rock
                        Data Center
                        2801 S. University
                        Little Rock, AR  72204-1099
                        (501) 569-8714
                        DOMILLER@UALR.EDU


To further your computing experiences, the following directories are
enclosed for your inspection and use:


[.ETAPE]     -  The latest version of an old favorite.  This ETAPE has a few
                fixes in since the last one on DECUS.  Converts to/from
                EBCDIC, non-standard ASCII and Honeywell GCOS BCD tapes.
                Added in this version: Packed decimal support, bug fixes,
                reformatting records while translating.

[.CB]        -  CB simulator (a la Compuserve) to go with UBBS

[.READBACK]  -  Read a VMS BACKUP save tape and produce a backup save set
                from a subset of files.

[.UBBS]      -  A full-function public-access bulletin board system for
                VMS.  This is most likely the last production release of
                UBBS.

Permission is given to all DECUS members to copy, distribute, and use all files
contained in this submission.  Not to be sold!

========> [VAX91B.VAXPRO]AAAREADME.TXT;2 <========



THis is a submission from the VAX Professional Magazine.  The file
1_MASTER_LIST.TXT is information on the material in this submission and 
information on the VAX Professional Magazine.
ORDERING INFO  
      
CONTACTS

Georgiann Dunion   (215) 957-4266

VAX Professional subscriptions
Back issue information and orders      

*** *** ***

Tape Contents:

C Utilities In Ada
Filename: ADA.VAX
This file features code published in VAX Professional, February 1991. It
was written by Alan Cohn and appeared in his article, "C Utilities In Ada."
The procedure, called ada.string, contains astring functions and procedures.

RMS Block I/O
Filename: BLOCKO.VAX
This file features code published in VAX Professional, February 1991. It was
written by Mark Petrie and appeared in his article, "RMS Block I/O." RMS
offers the capability to do block I/O transfers which allow for large data
transfers. Each block contains many records, so you can move a lot of data
per call. This procedure allows you to do that. This file was updated
to include a correction, described in a text forward to the actual program.

Synchronize Processing Across A VAXcluster System
Filename: SYNCHR.VAX
The programs featured in this file were published in VAX Professional,
February 1991, as part of an article titled "Using The VAX Distributed Lock
Manager To Synchronize Processing Across A VAXcluster System," written by
Tom Speake. The programs LATCH and STROBE start programs simultaneously on
several VAXcluster nodes.

Zeroing In On Runaway Identifiers
Filename: RUVOLO.VAX
This file features code published in VAX Professional, February 1991. It
was written by Joseph P. Ruvolo as part of his article, "Zeroing In On
Runaway Identifiers." The program finds all the holders of an identifier or
all the identifiers of a holder.

Using PHONE Object To Show Users On Another Node
Filename: PHONEU.VAX
This file features code published in VAX Professional, February 1991. It
was written by Jim Egerton and appeared in his article, "Using The PHONE
Object To Show Users On Another Node." The procedure tells you if a
particular user is logged onto another node in the network. It starts up a
PHONE slave process through Decnet and follows the PHONE protocol.

Storing The Terminal Server And Port

                                                                Page 2


Filename: LOGPRT.VAX
This file features code published in VAX Professional, February 1991. It
was written by Kevin Homan and appeared in his article, "Storing The
Terminal Server And Port In VMS Accounting." This procedure stores the port
and server in the remote ID and remote node name fields, and restricts AUDIT
to logging only login failures and break-in attempts.

The Hitchhiker's Guide To VMS: Episode 7.2
Filename: HIKER7.VAX
This file features code published in VAX Professional, February 1991. It was
published under the title, "The Hitchhiker's Guide To VMS: Episode 7.2," by
Bruce Ellis. The program prompts for a directory specification, opens the
directory file, and uses the file ID of the files catalogued in
the directory to count the number of file headers and mapping pointers for
each file.

Creating DECterm Windows
Filename: DECTRM.VAX
This file features code published in VAX Professional, February 1991. It
was written by David W. Bynon as part of his article, "Creating DECterm
Windows." The program enables you to create your own DECterm windows for
just about any purpose, including working on multiple accounts.

Break-In Detection Notifier Facility
Filename: BREAKN.VAX
This file features code published in VAX Professional, February 1991. It
was written by J. Wren Hunt and appeared in his article, "Break-In
Detection Notifier Facility." The program reads the audit mailbox, acts on
incoming audit messages, and notifies designated terminals of break-in
attempts.

VMS Kernels: MAIL In Alphabetical Order
Filename: MAIL.VAX
This file features code published in the April 1991 issue of
VAX Professional magazine. Written by Jerrold Leichter, Ph.D. as part of
his article, "VMS Kernels: MAIL In Alphabetical Order," which appeared on
page 32, the program here cleans up and reorganizes mail stuff. Evrything in
the DEAD folder is discarded. Everything in the DELETED folder more than
a month old is discarded. Then the MAIL.MAI file is rebuilt, and the
mail subdirectory is rebuilt.

A Remote DECterm Client And Server
Filename: WINDOW.VAX
This file features code previously published in the April 1991 issue of
VAX Professional magazine. The procedure was written by John McMahon as part
of his article, "A Remote DECterm Client And Server," which appears on
page 15. Here's a resource saving twist on the normal method of having the
local VAXstation access a remote VAX through DECwindows. With the
procedure presented here, a remote VAX opens a window on the local
workstation.

Extending VAX COBOLs Argument-Accepting Mechanism
Filename: RENAME.VAX
This file features code previously published in the April 1991 issue of VAX
Professional magazine. Originally run as part of Joseph P. Ruvolo's article,

                                                                Page 3


"Extending VAX COBOL's Argument-Accepting Mechanisms," which appears on page
20, the program here makes COBOL programs accept arguments both by reference
and descriptor.

Saving And Restoring The DCL Recall Buffer
Filename: RECALL.VAX
This file features code previously published in the April 1991 issue of VAX
Professional magazine. It was originally run as part of M.D. Kosta and Phil
LoVecchio's article, "Saving And Restoring The DCL Recall Buffer,"
which appeared on page 28. Sometimes, it might be handy to reconstruct the
contents of the RECALL buffer after logging out of a session. Here's a
method to accomplish that task.

Poor Man's CASE
Filename: FDE.VAX
This file features code previously published in the April 1991 issue of VAX
Professional magazine. Originally run as part of Don Weyel's article, "Poor
Man's CASE," which appeared on page 24, this home-grown CASE utility uses
existing VMS facilities to increase programmer productivity on small
to medium sized programming projects. It lacks the bells and whistles of
VAXset; use it when simplicity is sufficient.

Using PC DECwindows
Filename: PCDECW.VAX
This file contains code previously published in the April 1991 issue of VAX
Professional magazine. Written by Hunter Goatley and originally run as part
of his article, "Using PC DECwindows," which appears on page 8, the command
file is executed by the PC DECwindows display facility. It starts the
DECwindows Session Manager (DECW$SESSION), waits for it to get started, and
then starts the DECwindows Window Manager (DECW$WINMGR).

The Hitchhiker's Guide To VMS: Episode 8
Filename: GUIDE8.VAX
This file features Episode 8 of Bruce Ellis' "The Hitchhiker's Guide To
VMS," which ran in the April 1991 issue of VAX Professional magazine on page
34. The code here has a lengthy description which wouldn't fit into this
tiny buffer. What does Billy do when he gets stuck in heavy traffic? Read
Episode 8 and see!

Automating Cluster Shutdown
Filename: SHUTDN.VAX
This file features a commmand procedure to shut down all the nodes on a
cluster. It preserves most of the flexibility of the standard VMS
shutdown command. It asks the same questions in the same order as the normal
shutdown procedure. It synchronizes the shutdown so the nodes can exit in
the correct order. SHUTDN.VAX first ran on page 14 of the June 1991 VAX
Professional, as part of Barry J. Gillin's article, "Automating Cluster
Shutdown."

X Views: Using DEC PHIGS With DECwindows
Filename: PHIGSX.VAX
This file features code previously published in the June 1991 issue of VAX
Professional magazine. It was first run as part of Garry Poegel's
article, "X Views: Using DEC PHIGS, DEC GKS, And DEC GKS-3D With
DECwindows," which appeared on page 29. DEC GKS, DEC GKS-3D and DEC PHIGS

                                                                Page 4


provide facilites that allow an application to use both the graphics library
and X11 as needed. Here's how to integrate these higher-level graphics with
X.

The Hitchhiker's Guide To VMS: Episode 9
Filename: HIKER9.VAX
This file features code written by Bruce Ellis as part of his article,
"The Hitchhiker's Guide To VMS: Episode 9." Originally run in the June 1991
issue of VAX Professional magazine on page 35, Episode 9 answers these
questions: Does Billy ever write a program to track open files or is he just
blowing smoke? Does the girl really like the SHOW_SHARE program? Does she
like Billy? Can OLTP really be done on windowing systems?

Restricting Access To WAN And Cluster Nodes
Filename: CHECK.VAX
This file features code published in the June 1991 issue of VAX Professional
magazine, as part of James McNamara's article "Restricting Access To WAN And
Cluster Nodes," which appeared on page 17. Because of programs like the WANK
worm, you might want to restrict network access by FAL, PHONE and NML to a
small group of trusted nodes in a WAN. A filter program run at login can
serve this purpose by logging out access attempts by unknown nodes.


========> [VAX91B.VEGAS]AAAREADME.TXT;2 <========



This entry contains several "Vegas" type games.  Sources and OBJ are
provided, EXE's require LINKing.

   1) NFLBOOKIE allows betting on NFL games based on the lines
      published in the newspaper.  It allows betting on teams
      and total points, plus parlay and teaser bets; and keeps
      tract of who has won and lost for the season.  Requires
      several files in the directory NFL$LOC:, and supports up
      to 12 users (more if source is modified).  This version
      takes no "juice" on straight bets, the next version will!

   2) BJTRNR and CCTRNR are for practicing Blackjack prior to 
      a trip to Las Vegas, Atlantic City, Reno, etc.  They DO
      NOT play a game of blackjack - they are only for training.
      BJTRNR tests whether you should hit, stand, split or double
      based on your cards and the dealer's up card. A log file of
      mistakes can be maintained in SYS$LOGIN:.  CCTRNR tests 
      your ability to "count" cards.

   3) CRAPS simulates a Vegas-style crap game, allowing bets on
      PASS/DON'T PASS, COME/DON'T COME, place bets, odds bets, etc.
      The outcome of each session is logged to GAMES$LOC:CRAPS.LOG.

See you in Vegas after Anaheim - I'm staying at the Stardust this trip!

========> [VAX91B.VMSNETARCH]AAAREADME.TXT;2 <========



This area contains updates for the VMSNET archives since the Spring 1991
VAX/L&T tapes.

LZDCMP.EXE                      Program to decompress .*_Z files.
[.MAILSERV...]                  ASCII VMS_SHARE files sent by the mail server.
                                These files are automatically archived from
                                vmsnet.sources.
                                See [.MAILSERV]INDEX.TXT and HELP.TXT.
[.VMSNET]                       Various things (but far from all) from
                                vmsnet.sources saved as compressed BACKUP save
                                sets.
The following areas are included:

Directory [VAX91B.VMSNETARCH.MAILSERV]

ARCHIE_CLIENT.DIR;1 ARCHIVER.DIR;1      CD.DIR;1            CRASHME.DIR;1      
CSWING.DIR;1        DATEBOOK_V510.DIR;1 DCL_MAILBOX.DIR;1   DCL_MENU.DIR;1     
DCL_MENU_2.DIR;1    DCL_RECALL.DIR;1    DEF.DIR;1           DRIBBLE_V1.DIR;1   
DRLOGIN.DIR;1       DWPROFILE_V22.DIR;1 DXRN_614.DIR;1      FTS.DIR;1          
GET_NFSNAME.DIR;1   GREP.DIR;1          HELP.TXT;11         INDEX.TXT;370      
JOBLOG.DIR;1        MAILCOMPRESS.DIR;1  MEMTRIM021.DIR;1    MINISHAR010.DIR;1  
MOST.DIR;1          MOVE_LOGIN_BOX.DIR;1                    MXRN_DXRN.DIR;1    
PASSWORD_POLICY.DIR;1                   PBMPLUS.DIR;1       PBMPLUS_OCT91.DIR;1
PBMPLUS_VMS.DIR;1   PBM_TEX.DIR;1       PCAL.DIR;1          PEEKFILE.DIR;1     
PRIMGR.DIR;1        PROMPT.DIR;1        PTD.DIR;1           QUEUE_DISPLAY.DIR;1
RAMDRIVER.DIR;1     REMOTE_TAPE.DIR;1   REMPRTSMB.DIR;1     SED.DIR;1          
SQUEEZER.DIR;1      SWIM.DIR;1          TEXT-POSTSCRIPT.DIR;1
TIFF.DIR;1          TIME_PROMPT.DIR;1   TURBO.DIR;1         UNSHAR.DIR;1       
USERS.DIR;1         UUENCODE.DIR;1      UUSTAT.DIR;1        VERTICAL_MENU.DIR;1
VMS-NEWS.DIR;1      VMSTAR.DIR;1        VMSTIME_FOR_VMS047.DIR;1
VMS_SHARE.DIR;1     VNEWS.DIR;1         XLOADIMAGE_V203.DIR;1
XROACH.DIR;1        XUAF.DIR;1          XV.DIR;1            XWATCH.DIR;1       
ZIP.DIR;1           ZOO.DIR;1           

Directory [VAX91B.VMSNETARCH.VMSNET]

ARCHIE_CLIENT.BCK_Z;1                   DATEBOOK510.BCK_Z;1 DWPROFILE22.BCK_Z;1
PBMPLUS.BCK_Z;1     TGIF25.BCK_Z;1      TIFF.BCK_Z;1        UNSHAR.BCK_Z;1     
XLOADIMAGE203.BCK_Z;2                   XV.BCK_Z;2          ZOO21.BCK_Z;1      


========> [VAX91B.WORLTON]AAAREADME.TXT;1 <========



06-DEC-1991
This version of MODIFY contains some improvements over the initial version
which is now part of the VMS startup set.  It allows longer record lengths
(up to 512 bytes) and it has a new F77 qualifier for changing Fortran source
code format from tab code to standard and replacing exclamation point comment
delimiters and debug statement delimiters, and/or removing all comments.

Tom Worlton
worlton@anlpns.pns.anl.gov
