========> [VAX85C.AMS]AAAREADME.TXT;2 <======== DEPROC -- A TeX Header for Formatting DECUS Proceedings Articles DEPROC is a package that will format articles for the DECUS Pro- ceedings. It can be used by anyone who has access to the TeX typesetting system. DEPROC is a TeX header (macro package). The DECUS Proceedings have traditionally been published from copy supplied by the authors, prepared according to rules devised for typewritten material. The power of the computer typesetting language TeX has now been applied to this task, and a formatting package, named DEPROC, has been submitted to the DECUS Program Library for use by authors who have access to a working TeX system. (The TeX program and related software, created by Donald Knuth of Stanford, are in the public domain.) The documentation (which was itself produced by the DEPROC package-- see file DEPROCDOC.TEX) presents the important features of DEPROC and, through examples, shows how it is to be used. Use of DEPROC, which is encouraged, will produce the author's work, nicely typeset, in the standard Proceedings format. There is a general description of how the package works and of the mechanical requirements for camera copy of Proceedings articles, which will be created on the author's local output device. No prior knowledge of TeX is required, but authors using DEPROC will be expected to learn some rudiments, especially if their papers contain special notation or formats such as tables. A sample table appears in DEPROCDEV.TEX and DEPROCDEV.FIL, the files used to prepare a table of output devices which have been interfaced to DEC computers. Questions and suggestions about DEPROC may be sent to Barbara N. Beeton American Mathematical Society Post Office Box 6248 Providence, Rhode Island 02940 401-272-9500 ========> [VAX85C.BATTELLE]AAAREADME.TXT;2 <======== The following utilities were created at Battelle Memorial Institute - Columbus Division. This software is distributed for the use of the DECUS community. Most of it is in use at our site. However, there are no warantees that any of it will work. In particular, the PTY software is has not been extensively tested. Use at your own risk! The directories in this contribution are: FILES - a program that can find files based on size and/or ownership. This program contains bug fixes and enhancements. ZDEC - Zero-out Device Error Count, a program to zero the device error counts without re-booting the machine. This program contains a bug fix, so that it will work properly in a system with virtual terminals. BYDISK- A utility to iterate a DCL command over all processes on a system which have their default directory on a specified disk. Included is a command procedure which performs a "SHUTDOWN" for the users of a specified disk so the disk can be removed from service. KRON - A utility to execute DCL commands at scheduled times. Similar to the UNIX cron utility, except VMS-ified. PERMIT -A utility to add/remove a (IDENT=username,ACCESS=READ) ACL entry from a file. Useful for niave users who don't want to battle the ACL syntax or ACL editor. Also a useful example of manipulating ACL's in a program. PTY -A pseudo-terminal driver for VAX/VMS. This is a re-release of the version of my driver which Kevin Carosso modified fo VMS V4 (appeared on the Spring 1985 tape). Some minor enhancements to the hangup logic. Also a session logger program (PHOTO) with some minor bug fixes. As this is the usual Friday at 17:00 tape submission, documentation may be minimal. The authors listed below welcome any questions or comments regarding these software contributions: Gary L. Grebus Mark Oakley Battelle Memorial Institute Battelle Memorial Institute 505 King Ave 505 King Ave Columbus, Ohio 43201 Columbus, Ohio 43201 614/424-7156 614/424-7154 ========> [VAX85C.BELONIS]AAAREADME.TXT;1 <======== This is the University of Washington Physics Department submission for the Fall 1985 DECUS Symposium. All the following work on VMS 4.2 (at least). BACKUP.COM a menu and default driven tape BACKUP interface. [.HOST] a dial-out program for VAX (originally by William Tanenbaum, Harvard) [.MODEM7] a dial-out file transfer compatible with micro versions (uses HOST) [.XMODEM] a dial-in file transfer program compatible with microcomputer versions [.ACCOUNT] a flexible VMS 4.x accounting system. [.QPOST] Talaris laser printer graphics and TeX integration for those of you without Talaris' QDRIVE program. [.MOVE] yet another SET DEFAULT replacement (we think it is the best) [.SIX] a flexible and extremely FAST 'tail' program (SImple eXtractor) which displays particular lines from files. [.TERMS] LOGIN.COM compiler. [.LIB] library of routines for linking the above three programs [.TAR] a unix TAR-format tape reader for VMS [.VVCODE] translates VMS arbitrary file and header into printable characters for transmission to another system over arbitrary communication methods. (and translates back to original file structure). J. James (Jim) Belonis II Computer Cost Center Manager Physics Hall FM-15 University of Washington Seattle, Washington 98195 (206)-545-8695 BELONIS@UWAPHAST via BITNET ========> [VAX85C.BONNER]AAAREADME.TXT;10 <======== BONNER LAB RUNOFF Page 1 AUTHOR: ------- John Clement Bonner Nuclear Lab Rice University Box 1892 Houston Tx, 77251 (713) 527-4018 BONNER LAB RUNOFF Page 2 ABSTRACT Bonner Lab Runoff (RNO) Bonner Lab Runoff is a text formatter which when used with your favorite editor makes a complete word processor. Its syntax is almost a complete emulation of DSR (Digital Standard Runoff) and it is very compatible with previous versions of Runoff. The document and help file for this version can also be used for DSR. The intent of this program is to support com- plete scientific word processing to produce publication quality output. It has been used to produce thesis, progress reports, and scientific pa- pers here at Rice University. This version allows complete control of any special printer available via user definable escape sequences. In addition a macro facility allows text or sequences of commands to be abbreviated to a single label. If the printer has the correct features then variable spacing,subscripting, superscripting, and equation formatting are possible. By properly defin- ing escape sequences the user may support different printers in a tran- sparent fashion. In other words the same input text will print in identical fashion on different printers with different control codes and escape sequences. Table of contents, indexing and sub-indexing are all supported. A variety of LAYOUT and STYLE commands may completely change the look of the pages. Table layout is simplified by right justified and 'decimal' justified tabs. Permanent margins which apply to the page headers are available. These simplify the setting of header and text margins. All special characters are redefinable. The user may define new com- mands, and text macros. By defining commands you can make it resemble other text formatters, or other versions of RUNOFF. You may define numeric symbols to facilitate constructing lists of arbitrary items. These allow page and section references. A 2 pass option allows forward references to symbols defined later in the text. Page 2 This runs under VMS-native mode, RSX, IAS, RT11, TSX, P/OS, and RSTS. RNO occupies a minimum of 30 to 37 kbytes depending on the operating sys- tem. Complete documentation, help files, and test files are supplied with the program for all operating systems. BONNER LAB RUNOFF Page 3 Distribution This distribution contains all files necessary for building RNO for any supported operating systems. Nearly All file names are 6 characters or less to acommodate all operating systems. Once you have built the exe- cutable image, you can use it to generate documentation and help files for your operating system. Several files are included to document this version. 1. BUILD.DOC contains instructions for building the program and do- cumentation. 2. RNOBUG.DOC lists bugs that have been fixed. 3. CHANGE.DOC lists the latest enhancements. 4. RUNOFF.DOC is the full document for VMS. This is not distri- buted on small (floppy) kits, but is included with mag tape kits. 5. INTERNALS.DOC is for wizards only. 6. RNO.EXE is the VMS executable image. All other users must build RNO. 7. *.TST are test files for various RNO features. ========> [VAX85C.BRIDGE]AAAREADME.TXT;1 <======== This submission contains a selection of programs from Multiware and California Analytical Labs. DOCUMENT.DIR;1 Container for program documentation facility LIMS.DIR;1 Various LIMS/SM support programs WHO.DIR;1 Utility to see who's on the system. Total of 3 files, 8 blocks. Directory DUA1:[MULTIWARE.DECUSF85.LIMS] DBQ.DIR;1 Useful DBQ templates DTR_PROCEDURES.DIR;1 Datatrieve reports for LIMS/SM LIMS_UTILITIES.DIR;1 Utility programs for LIMS/SM REPORT_WRITER.DIR;1 LIMS/SM report writer Total of 4 files, 7 blocks. Directory DUA1:[MULTIWARE.DECUSF85.LIMS.LIMS_UTILITIES] BACKLOG.DIR;1 FORTRAN backlog report support COUNT_SAMPLES.DIR;1 C program to count samples on system by status LAB_TICKET.DIR;1 FORTRAN programs to write Lab tickets LIST_SAMPLES.DIR;1 C program to list samples in LIMS by stats If you find these useful/destructive please write with further information to: Adam Bridge Multiware, Inc. 437 F Street Davis, CA 95616 (916) 756-3291 We will be substantially upgrading the LIMS report writer for the next tape. Adding documentation, help, and improving the efficiency substantially. We would like your input on what the report writer should do, and perhaps some contributions. The idea is to make a DECUS tape library submission in January of 1987 with a full set of LIMS/SM an LIMS/DM utilites from a variety of sources. Your help is essential if we are to make the most of this system as DIGITAL cannot possibly do everything we need to have done. Adam Bridge ========> [VAX85C.BULLETIN]AAAREADME.TXT;1 <======== Mark London MIT Plasma Fusion Center 167 Albany St. NW16-262 Cambridge, MA 02139 MRL%PFCVAX@ZERMATT This submission contains a new version of BULLETIN, a bulletin board/announcement system for VMS. ANNOUNCE.MAI describes the features added and bugs corrected, including a change to the BBOARD feature which broke with VMS version 4. See AAAREADME.DOC for instructions on building BULLETIN. Librarian's note: This package was copied from the ARPANET and put on the tape with the permission of the author. Since I have expanded but not compiled and run the programs/procedures I am including the raw mail files as I got them from the net in [.NET_FILES]. ========> [VAX85C.COSTELLO]AAAREADME.TXT;7 <======== Cornell University Submissions Coordinated by: Dennis P. Costello National Submicron Facility G02 Knight Lab Cornell University Ithaca, NY 14853 607-256-2329 BRUIN - Author: Dennis Costello A command file which copies a BRU backup onto an ODS-2 rooted directory. Specify the backup set name and the device name on which the rooted directory should be created, eg: $ @BRUIN RSX85B DU1 VAXBRURDR.EXE, as provided here, is required. (This is a copy of the one on the RSX85A tape). Before running BRUIN, change the line in BRUIN.COM which reads: $ vmsbru :== $[manager.bru]vaxbrurdr to point to the correct location of VAXBRURDR.EXE on your system. To read in multiple backup sets from one tape, use the command file BRUALL.COM: $ @BRUALL DU1 This will make a list of all backup sets on the tape, and read each into its own subdirectory. All files on the tape must be BRU backup sets, or the command file will probably die horribly. As in BRUIN.COM above, you should change the following 2 lines to point to appropriate directories: $ vmsbru :== $[manager.bru]vaxbrurdr $ @[manager.bru]bruin 'name' 'p1' This command is quite appropriate to run as a batch job. TPC - Author: Dennis Costello VAX Native Mode replacement for the TPC utility. TPC will make an image copy of a tape to a disk file, then back out to another tape. It has worked quite well on RSX systems for years, however, it does not seem possible to coerce it to work on VMS Version 4, even with VAX-11/RSX Version 1. This is a very rough, preliminary version, without most of the neat features of the original. Its only advantage is that it works. Source and object files are included. Simply change the appropriate line in TPC.CLD to point the correct location of the image file, then issue the following commands: $ pas tpc ! optional Page 2 $ for tapeio ! optional $ mar read ! optional $ link tpc, tapeio, read $ set command tpc $ libr /insert sys$help:helplib/help tpc FAT - Author: Larry Muray Pixel doubler for Sixel files. A sixel file is a bitmap of an image. Those produced by DECgraph (and probably by most other utilities) are images of a ReGIS terminal screen. When dumped to an LN03, only a small part of the page is used for the image. Also, LN03 displays a landscape-oriented image in portrait mode. FAT doubles each pixel in the sixel file, and prepends LN03 control sequences to force landscape mode. This program is in a very preliminary version - an easier to use version should be available on the Spring 86 tape. The following commands will recompile FAT: $ define lnk$library sys$library:vaxccurse.olb $ define lnk$library_1 sys$library:vaxcrtl.olb $ define c$library clib.tlb $ cc fat $ link fat ========> [VAX85C.CWAX]AAAREADME.TXT;1 <======== ************************************ *** P V T S o f t w a r e *** *** *** *** Instructions *** ************************************ *** THE LEGAL STUFF *** Chemical Bank, New York, does not, implicitly or explicitly, warrant, support, endorse, or otherwise assume any liability whatsoever in the use of the PVT software. *** INFORMATION *** PVT is one of those command procedures that is very useful, but noone has the time to design and/or write. With the PVT command procedure, one does not have to write from scratch, a way for a terminal to print files in their entireties. PVT enables users who have VT1xx or VT2xx terminals (or something that emulates the VT's) with auxilary printer ports to print files neatly and orderly. If PVT is used to print several files, by using wildcards, each file will start on a new page with a heading stating the file name and the date/time. PVT also displays, on the terminal screen, the name of the file which is currently being printed on the printer. PVT has been successful using a VT100, VT102, VT220, VT240, and Rainbow with a LA50, LA100, LA12 (DECwriter Correspondent), and a LN03 (laser printer) under VMS 3.7 and VMS 4.1. *** INSTRUCTIONS *** HOW TO USE PVT ============== To use PVT set up a permanent symbol as follows: PVT :== @pvt_device:[pvt_directory]PVT.COM where: pvt_device is the device where PVT resides pvt_directry is the directory for PVT To print a file type: PVT file_specification(s) EXAMPLES OF VALID SPECIFICATION(S) ================================== PVT SYS$LOGIN:LOGIN.COM PVT FILE.COM,*.COM;* PVT [...]*.BAS;2,[SMITH...]*.*.1,[000000...]*.LOG Page 2 PVT F1,F2,F3, F4, F5,F6,F7 NOTES ===== 1. The file specification can have spaces separating the different filenames; however, there can be only ten (10) spaces throughout the file_specification. If no spaces are used, there is no limitation (except for the VMS limit of a command line) as too how many files can be specified to print. 2. Filenames without an extension specified are assumed to have an extension of .LIS (as does VMS). 3. PVT assumes that DIR.PVT is not present and is not used in the present default directory. 4. The parameters on the SET TERMINAL command can be modified so that page breaks are skipped. see VMS HELP: HELP SET TERMINAL/PAGE Questions and comments are welcome. Please address your responses to: Andrew Wax Bankwide Office Systems Chemical Bank 52 Broadway - 4th floor New York, New York 10004 (212) 701-5231 ========> [VAX85C.DFWLUG]AAAREADME.TXT;6 <======== Dallas/Fort Worth Local Users Group The following are the contributions from the DFWLUG for fall of 1985. Located in [.ALLIEDELC] subdirectory is a submission from Allied Electronics. This submission consists of a group of subroutines written in VAX BASIC V2.3, comprising a system allowing the (relatively) simple usage of the new VAX Screen Management System under VMS version 4.2. Also included is a demonstration program using it. With this system, a programmer can create up to 10 virtual displays and manipulate them quite simply, by keeping track of the sequence number of the intended virtual display (1 through 10) and passing that number as an argument in the subroutine call. Specific information about the routines, as well as argument layouts and more detailed explanations, are to be found in SMGDOC.MEM, which is included in the submission. Located in the [.ATT] subdirectory is a submission from AT&T Technologies which will provide the user information about this environment. Located in the [.MOBIL] subdirectory is a submission from Mobil Oil which will extract the current up-time for the system and define a global symbol with that time stored. Located in the [.TECHDEVEL] subdirectory is a submission from Technology Development Corp. which will provide a output of the amount of disk space you have left on the disks mounted on your system as well as a re-sumission of the SNAPSHOT program which has been reworded a bit to run V4.x of VMS. In addition, there is a submission which will allow you to enable/disable a terminal a 'operator' and also a program which will show you which terminals are currently enabled as 'operator'. ========> [VAX85C.DMREV]AAAREADME.TXT;1 <======== Rich Gregory Pharmaceutical Research Associates Rt 1, Box 380 Charlottesville, VA 22901 (804) 971-8182 This is a revision to the DM (directory management) package which has appeared on previous VAX SIG Symposia tapes. It provides enhancements to the older DM packages and provides for VMS version 4 long filenames. See DM.DOC for installation instructions and for a description of the changes. ========> [VAX85C.ERI]AAAREADME.TXT;2 <======== HALFTONE converts grey-scale images so they can be printed on an LA50 or similar device. MACSNVAX 3.4a is a facility for uploading and downloading Macintosh files to a VAX. Page Setup Customizer is a Macintosh program that allows you to define new page sizes and names for the Imagewriter driver. For more details (authors, phone #s, etc, see AAAREADME.MEM). ========> [VAX85C.EVEPLUS]AAAREADME.TXT;3 <======== ! Eve Plus - Extensions to EVE ! ! This is a collection of TPU procedures to aid in building custom ! section files. ! ! This file doesn't contain any of the hacks, rather it defines a ! few basic building blocks and three procedures comprising an ! "include" feature and then executes a buffer which includes the ! various pacakages that make up "EVE plus". The three procedures ! are used thusly: ! ! eveplus_start_build; ! Set-up to gather TPU$LOCAL_INITs ! ! eveplus_include("..."); ! Include the first file ! eveplus_include("..."); ! Include the next file ! : ! eveplus_include("..."); ! Include the last file ! ! eveplus_complete_build; ! Compile the accumulated local init ! ! See EVEPLS.ABS (EVE_PLUS.ABSTRACT) for more information - the fast ! and easy way to get going is copy EVEPLUS.GBL to SYS$LIBRARY ! define a symbol, say EVE == "$EDIT/TPU/SEC=EVEPLUS" and ! have at it. ========> [VAX85C.EYE]AAAREADME.TXT;6 <======== This directory contains the DISKMON, a program that will monitor your disk space, and notify you if the space starts to run a little tight. The command file GO.COM will build the programs DISKMON, POS, and if you un-comment the right lines, a program called LOGINWARN. DISKMON runs detached, and notifies: o Operators -- people with OPER priv on, or are authorized with OPER priv, when disk space drops below 2% free. They will continue to be notified if space drops in 0.1% increments below that point, until it reaches 1% free. Then it notifies you for any drop in space, regardless of how small. o Users are notified when space drops below 1% free, IF they have active quota entries on the disk that is tight on space. o The OPCOM is notified if any of the above two notifications can't get through (From SET TERM/NOBROAD, SET BROAD=NONE, no one logged on, etc.). No notification is done if the amount of free space is growing or is stable, even if space is critical. (i.e. If there is 1 block free on the disk, DISKMON will warn you about the space running out. If free space stays at 1 block, no follow-up messages will be sent.) POS tells you the status of all Files-11 disks, mounted read/write. The information is: Number of blocks on the disk, the number free, the percentage free, and the totals for all disks on the system. LOGINWARN was never finished -- i think it works -- if you want to play with it, have fun. Its purpose is to warn the user about disk problems at login time. For example, put it in the SYLOGIN.COM file to notify a user as he logs in about the space problems. Object files for the FORTRAN source are being provided so that you can link the programs if you don't have a FORTRAN compiler. Note that these programs will run ONLY ON V4.x VMS systems. Some things you should be aware of: 1) DISKMON will run without modification on a VAXcluster. 2) DISKMON does not handle volume sets well -- you may want to play with DISKSPACE.MAR to get it to work with volume sets. 3) DISKMON does not handle disks mounted /GROUP well, either! RUNDISKMON.COM will start the DISKMON for you -- have fun with it, don't criticise my sloppy code too badly, and if all this stuff Page 2 written here doesn't make too much sense, keep in mind that I'm doing this in a hurry! Eric Richards Gould Ocean Systems Division 18901 Euclid Ave. Cleveland, OH 44117 216/486-8300 Ex. 3073 ========> [VAX85C.FERMILAB]AAAREADME.TXT;9 <======== Fermilab Accelerator Control System Submissions submitted by: Dr. Frank J. Nagy Fermi National Accelerator Laboratory P. O. Box 500 Mail Stop 306, Batavia, IL. 60510 (312)-840-4935 This directory tree is a submission from the Fermilab Accelerator Division. The programs and command procedures in this directory tree are general utilities and system management utilities either written at Fermilab or acquired from DECUS (via a SIG tape or from the library) and modified. In many cases the software can be used at other sites without modification; some of the system management utilities are included as starting points from which sites can produce their custom versions. Each of the next-level subdirectories includes an AAAREADME.TXT file which provides additional details; this file provides an overview of the entire submission. This submission represents files added or changed since the Spring 1984 and Fall 1984 submissions. A complete resubmission has not been made of many of the files to help reduce the size of the SIG tape. To make full use of much of the material in this submission, you must have access to the Spring 1984 SIG tape Fermilab submissions. Access to the Fermilab Accelerator Division submissions on earlier tapes may also be helpful. Questions and comments on these submissions may be directed to the submitter listed above. Fermilab will not provide support for this software on anything other than an informal basis as time allows. [.ALLOCWATCH] This area contains the program and command procedure which implements the dynamic management of shared devices between a set of VAXes (a VAXCluster and non-cluster systems) which use a single CI bus system. The static management is implemented by the procedures in the [.STARTUP] area. The dynamic management is handled by a detached process which watches the allocation status of specified devices. When one of these devices is allocated by a user, DECnet is used to start processes on the remote systems which are then used to allocate and "hold" those devices on those systems to prevent interference with the device owner's actions. Page 2 [.EDTX] This is a submission of EDT-eXtended made using the Callable EDT interface. The extensions include a filename memory, wildcard file specifications and XLATE interfaces to spawn subprocesses and access system help. The beginnings of this version was the ED1 editor from the University of Arizona which was submitted on the Spring 1985 VAX SIG tape. [.EXPAND] This area contains a program from Mark W. Eaton of Harvard University. EXPAND and XFORT are FORTRAN preprocessors which provides for conditionalizing FORTRAN code. EXPAND and XFORT provide the concept of a pre-defined environment, a particular computer system, for which FORTRAN source may be conditionalized. This version supports VAX, CYBER, FTN77, IBM and FPS environments. We (Fermilab Accelerator Division) have just begun using EXPAND in combination with DEC/CMS to manage the source code for FORTRAN programs which must run on several different machines (VAX, CYBER 175/875 and FPS-164) and have been quite pleased with the results to date. [.GETUAF] This is a resubmission of the GETUAF program to access items from records in the UAF file. GETUAF has been modified to work under VMS V4.x and to return the last interactive login time. [.INCLUDES] This area contains command procedures which process Bliss .REQ files (such as LIB.REQ and STARLET.REQ found in SYS$LIBRARY) into prototype files from which include files for VAX C and VAX FORTRAN can be constructed. Included in this area are a number of .H include files for VAX C which define constants and structures new to VMS V4.x which where not included in the VAX C V2.0 VAXCDEF.TLB library (such as new $DVIDEF items, $GETSYI items, $GETQUI items, etc. and so forth). [.LA100SMB] This area contains an LA100 print symbiont which prints flag and trailer pages at 16.5 characters/inch pitch to fit 132 columns on 8 1/2 wide paper. In addition, a device control library of common escape sequences for the LA100 is also included. The print symbiont was developed from the HANDLESMB submitted to the Spring 1985 VAX SIG Page 3 tape by Gary Grebus from Battelle. [.LIBRARY] This area contains object, macro and text libraries which provide extensions to the system libraries in SYS$LIBRARY:. Complete copies of the FERMILIB object library, its Help file and all the sources are included. [.NODEIDS] This area contains a program to define a system-wide rights identifier based on the system (or DECnet) node name. This identifier can be used to protect licensed software from being executed on non-licensed nodes of a VAXCluster. [.SETUSER] This area contains a re-submission of the SETUSER program from the Spring 1984 tape. This version of SETUSER works under VMS V4.x and uses VMS V4.x services to eliminate the need to explicitly provide the UIC associated with a username. [.STARTUP] The command procedures in this area illustrate the management of logically disjoint disk sets from a pool of disk drives shared by two or more processors. These procedures implement the static management of disk drives connected to HSC50's on a CI system which contains a VAXCluster and an independent (non-cluster) VAX system. See [.ALLOCWATCH] for the package to provide the dynamic management. [.SYSMGR] The command procedures in this area illustrate the implementation of a set of cyclic system batch jobs which repeat nightly, weekly and monthly. In addition, a procedure for submitting cyclic jobs for users based on the system jobs (and SUBMIT /USER=name) and a database specifying which users and when is also included. A set of command procedures and TECO command files for performing mass changes to the UAF records is included in this area. These permit the extraction of information from the listings made by Page 4 AUTHORIZE and the reworking of that information into a command procedure. This procedure can be editted and executed to perform mass-adjustments of working set and other quotas. These were initially developed to facilitate the mass adjustment of working set quotas based on system performance information and the installation of additional memory. [.TELLSELF] This area contains a program to be installed with OPER privilege. It then permits users have their subprocesses, detached processes and batch jobs "broadcast" a message to themselves at specified points. The message is sent only to the owner of the process (or batch job) in which the program is executed. [.UTILITIES] This area contains several command procedures which implement general utilities in use at Fermilab. Some of these procedures are referenced in the submittals listed above. Many of the procedures are stored in areas pointed to by the FERMI$EXE: and FERMI$UTIL: logical names and a refereneced by such above. More information can be found in the AAAREADME.TXT file in the [.UTILITIES] subdirectory. ========> [VAX85C.GARMAN]AAAREADME.TXT;1 <======== 850102 DFRAG (Disk FRAGmentation) is a program that reads BITMAP.SYS from a disk drive and prints a histogram of its analysis in terms of lengths of runs of 1's (available blocks) and 0's (in-use). The main FORTRAN program reads the entire bitmap into a byte array, then counts runs of bytes of all zeroes, all ones, and mixed. The current version (2.0G) attempts to extract information from mixed bytes adjacent to 00 or FF bytes, and then does a quick analysis of the remainder to extract information about some combinations of single and double bits. The pseudo-log (base 2) of the length of the run is used to establish the histogram bucket to be incremented. After the bitmap has been scanned, the histograms are printed (individually scaled), in conjunction with arithmetic and logarithmic means*, and the arithmetic median. A blank line between histogram lines indicates that one or more empty histogram buckets was skipped. (* Logarithmic mean is the anti-log of the arithmetic mean of the pseudo-logs of the run-lengths; as such it is a little more useful than the arithmetic mean of the run-lengths, but has a quirk such that its value may be less than, equal to, or greater than the median, depending on how many runs of length 1 were encountered (log(1) === 0), whereas arithmetic mean will always be greater than or equal to the median.) Output is paginated and time-stamped. Two MACRO routines complete the package: 1) ACCBITMAP assigns a channel, and accesses BITMAP.SYS by its file-id (2,2,0); the statements ; *** .ASCII /_/ .ASCII /$255$/ should be alternately activated or commented out depending on operation in or out of a cluster. 2) L2X2 performs the pseudo-log2 function with a scaling factor of 4 (2**2): L2X2(I) = log2(I)*4 + [(I - (exp2(log2(I)))/(log2(I)*4)] but it's really not that complicated: it floats its integer parameter, subtracts the exponent bias (to regain the "hidden" bit), and shifts to return the scaled value. Examples: I L2X2(I) 1 0 2 4 3 6 4 8 5 9 6 10 7 11 8 12 9 12 10 13 It has potential application for histogram scaling also, where the bins are linear but have an exponential range of values. Generation Page 2 FORTRAN DFRAG MACRO ACCBITMAP MACRO L2X2 LINK DFRAG,L2X2,ACCBITMAP [ L2X2 first due to frequency of usage ] Execution DFR*AG :== $dev:[directory]DFRAG DFRAG Dxyz options [ produces output file Dxyz.DAT ] [ with FORTRAN carriage-control ] options: /TRace produce Dxyz.TRC showing runs and adjacent-bit adjustment /SHort suppress output line for empty bins (default) /LOng print bin-number, with blank value, for empty bins or RUN DFRAG [ prompts for Dxyz ] /SHort option is the default, no /TRace Caveats, problems, etc The current version does not evaluate all run lengths in "mixed" bytes; that is planned for version 2.1, after I figure out whether to do it by table lookup or LIB$FF{S/C} calls. The output (and trace) file(s) will be incorrect by the amount of extent-caching current for the drive. I have not been able to determine how to (temporarily) force extent-caching to be disabled for a drive. The following sequence will usually yield two different successive versions of Dxyz.DAT: DFRAG Dxyz ANA/DISK Dxyz: [ let run for a few seconds, then ^Y or ^C ] DFRAG Dxyz If anyone can tell me how the VERIFY utility does it (I tried to figure it out from the microfiche), the information would be greatly appreciated, and quickly incorporated into the next release. Device name MUST be 4 characters, and options MUST follow the device name (spaces are not required, however). User must have read-access to [000000]BITMAP.SYS in the disk in question, either directly, or by SYSPRV or READALL privileges. Charles Garman 609-866-8821 RCA MSR (soon to be GE?) Borton Landing Rd, POW-2 Moorestown NJ 08057 ========> [VAX85C.INQUIRE]AAAREADME.TXT;1 <======== INQUIRE and PROTO Inquire and PROTO are DTR update and program generators. They are described in INQUIRE.DOC and PROTO.DOC respectively and produce general purpose DTR inquiry procedures for your data. ========> [VAX85C.LEVINE]AAAREADME.TXT;3 <======== Submission to Fall 1985 DECUS Symposium This submission is broken up into three(3) sub-directories [DECUS.INDEX] Complete distribution package for the current version (3.14) of INDEX-FORTRAN Cross Referencing tool and Flow Chart Generator. INDEX is a FORTRAN source cross-referenceing and flow charting utility that allows the user to look at individual source files (optionally saveing the data for an overall SUPER INDEX) and determine what variables are used on what lines and how they are used. Furthermore the user can select for display/save for SUPER INDEX only those variables or COMMON blocks with the characteristics that he is interested in-global/local, assigned value/not assigned value, used/unused, imported/exported, etc in any combination. Also available is the optional ability to show up to four additional items of information for display during the regular and SUPER INDEX: The variable storage location information (local, in COMMON, passed by argument, etc). The variable type (REAL F_Floating, structured etc) Useage in FUNCTION/SUBROUTINE calls (routine used in and argument number). A user selected tag of up to 31 characters. The data saved for a SUPER INDEX listing (consisting of 6 data items as outlined above) can be displayed with a great deal of flexibility as to the data item selection, order and format (or saved in an ISAM data file for the user to work on directly). A special option of the SUPER INDEX allows the output of a list of module entry points which pass data in and out by argument, the name of each argument and it's type , the name of any module which call that entry point along with the the name of each variable passed in the corresponding argument position and it's type. The resulting information supplied allows the user to follow the flow of data throughout a program or find the useage of any selected data variable as required. If selected, the user may at the same time generate a flow chart of the source file currently being cross-referenced. If wanted, the user can generate in place of the SUPER INDEX, an entry point cross reference listing showing who calls who and is called by who (with optional graphical tree output). [DECUS.VT200] This subdirectory contains several VT-200 family utilites that I have found usefull. VT200.FOR Makes the VT200 family screen control sequences available to the FORTRAN programmer. See document VT200.MEM and VT200.RNO. KEY.FOR When run, prompts the user for strings to be Page 2 down line loaded to the keyboard. The output of this program is a command file that when invoked, will down line load the specified key definitions. Note that this is a hardware definition for VT2xx keys F6-F20 not to be confused with the V4.x VMS software key definitions. FONT.FOR Generate/create/edit character fonts for the VT2xx. On a character by character basis, the user can create a new font or modify/edit an existing font that can be down line loaded to the VT2xx. On command, FONT will store in internal representation, a font definition in a data file where it can be recalled at a later session. Also on command, FONT will generate a command file that when invoked will downline load a new font definition. Included with this submission are several fonts already defined-both as data files and in command file form ready for down line loading. RANDOM.FOR One of the fonts supplied is nothing more than random bits. If a different random font is wanted, this program will generate it. WRITE.COM KEYBOARD.COM Cause to be displayed the current fonts defined for the VT2xx terminal. [DECUS.MISC] Odds and ends that might be usefull INACTIVE.FOR Run as a detached job, deletes jobs that have been inactive for a set period of time. See source code on how to set check times, hours of activity and what jobs this program does not touch. LOCKOUT.FOR Allows a user to lockout a teminal from use and get it back later without anyone being able to use V4 features to recover the password. Run the program-give the password. When ready issue ^C or ^Y and give the password. If correct LOCKOUT will exit with a message giveing the number of attempts. FRAG.MAR FRAG2.MAR Requires BYPASS priv or be system user. Give the fragmentation statistics of the selected disk. FRAG2 differs from FRAG in that it also outputs a map of the disk useage. HELLO.COM Assorted comments-randomly selected. requires VT1xx or VT2xx terminal for full effect. Page 3 DIR.COM Generates a graphical output on terminal and in a disk file of the on disk directory structure. RUN.COM Pseudo-user directory and sub directory delete. ========> [VAX85C.LJK]AAAREADME.TXT;1 <======== Pageswapper Files These are the Pageswappers since the last symposium. Larry Kilgallen, editor. ========> [VAX85C.MANTECH]AAAREADME.TXT;5 <======== Mark Crego and Joe Bingham ManTech Services Corporation 2320 Mill Road Alexandria, VA 22314 (703) 838-5600 This submission consists of OBSERVE and DEFAULT. OBSERVE allows you to attach your terminal to another process' terminal output. It has the following known problems/restrictions: . Requires CMKERNL and EXQUOTA. . Will not work if you are logged in over DECNET. PLEASE NOTE: As of this writing the tape is in its final stage of preparation and the version of observe on the tape has been known to crash a VAX if you are on DECNET and the person you are attempting to observe also on DECNET. If one of you is on DECNET OBSERVE will not work but should not crash your system. . Your baud rate must be equal to or higher than that set on the observed terminal. . "Illegal I/O function code" is a catch-all error message for most problems encountered - specific probem is not reported. DEFAULT is my "SET DEFAULT x" program which I have put on the tape in the past. This version is more compatible with rooted directories and version 4 filenames than past versions but still has some inconsistencies and bugs. It has very cryptic syntax - after all that is the reason for using this type of program. Several new command options have been included - e. g. define the current location as a rooted directory or as a physical device/directory, step backward through the directories in a tree. I find these commands very handy tools as I work on this tape. For instance one thing I do is make sure that all of the directories directly under [VAX85C] and [VAX85D] have a AAAREADME.TXT file. Having CURRENT_DECUS defined as $3$DRA1:[VAX85C.], $3$DRA1:[VAX85D.]/trans=(conc,term) I can say "D,,D MANTECH", for instance to get to CURRENT_DECUS:[MANTECH]. I can then say "D,,N" to get to the next submission or "D,,K" to get to the preceeding one. Alternatively I could define [VAX85C.] as a rooted directory by setting default there and saying "D,,B" or setting default to one of its subdirectories and saying "D,,A". For more about the command syntax see DEFAULT.MAR, DHELP.FOR and the individual subroutines. I have been making modifications to the program as I work on the tape together so a lot of the comments are not up to date and I will not hold up the tape to work on them. I will put a cleaner version of the program on the Page 2 next SIG tape. Note that the program should be defined as a foreign command, say 'D*EFAULT == "$DEFAULT"'. It is not possible to set up a .CLD file and put it in DCLTABLES because DCL will not pass the commas on the command line to the program. ========> [VAX85C.NSWC]AAAREADME.TXT;1 <======== [VAX85C.NSWC]AAAREADME.TXT SCHEDULER UTILITY ----------------- Did you ever forget to set or reset Daylight Savings Time? Do you have weekly or monthly tasks to do or meetings to attend that you need to be reminded about every time? Then SCHEDULER is for you. A procedure runs every midnight, reading a file of events (DCL commands), each with an expression telling when it should be run. Expressions can be complex, like: * Run the next-to-last business day of every month * Run the day after the fourth Monday of every month (which could be the fourth or fifth Tuesday) * Run the day before every holiday occurring on a weekday * Run every Monday, every day, every business day, every week- day (i.e. every business day plus weekday holidays), the third of every month, every day in March, etc. SCHEDULER.COM will need to be configured to your site, and you will have to create a SCHEDULER.DAT file with your events. A sample SCHEDULER.DAT file is included to show some of the cap- abilities. See notes in SCHEDULER.* for more information. SCHEDULER is really powerful when used with REMINDER. REMINDER UTILITY ---------------- This is yet another appointment-reminding utility. This one reminds you when you log in, and 'tickles' you at fixed inter- vals as the time of an appointment approaches. The reminder message tells you when the appointment is, and what it is. The message is formatted in reverse video for VT100+ terminals and the bell rings. It is very easy to add, remove, and show appointments. For further information, see REMINDER.HLP. See REMINDERS.DOC for installation instructions. This utility uses a detached process (which is usually hibernating) to send the 'tickler' messages. Use BLDREMIND.COM to rebuild the pack- age from its sources. This product has appeared on previous SIG tapes. It has been updated extensively to work correctly on VAXclusters, to eas- ily allow users to give other users permission to access their appointment data, to allow all inputs on the command line, etc. Page 2 SUBMIT_IF and FINDJOB --------------------- SUBMIT_IF is a command procedure which SUBMITs a job if the job is not already in an input queue. I use SUBMIT_IF in my SYSTARTUP.COM to ensure that important batch jobs are queued, but not more than once. I also use it in some of my SCHEDULER events (see SCHEDULER above). FINDJOB is a program which will search the input queues for a given jobname. It is used by SUBMIT_IF, but can be used independently for other uses. Run BLDFINDJOB.COM to recompile and relink FINDJOB. NOTIFY COMMAND -------------- This is a general message-sending utility. It can be used in a batch process to send a message to the submitting user. It can be used in an interactive command procedure to format a message on the screen (centered, bold reverse video, bells). It can be used by the system managers to send messages to ter- minals (either by terminal name or by user name); it produces a more readable message than REPLY. See NOTIFY.HLP and the comments in NOTIFY.FOR for more information. Use procedure BLDNOTIFY.COM to recompile and relink NOTIFY. The SYSTEM.DIS file contains a list of system managers to whom users can send messages. NOTIFY works cluster-wide. NSWC1LIB.OLB ------------- Object library used in building the above programs. This lib- rary is built from LIB1.FOR and LIB*.MAR. Some of the routines may be useful to you; they are documented by prologues in the sources. ------------------------------------------------------------------ Everything was built with FORTRAN V4.3 and VMS V4.1 Submitted by: Alan L. Zirkle Naval Surface Weapons Center Code K53 Fall 1985 Dahlgren, Virginia 22448 ========> [VAX85C.PFILE]AAAREADME.TXT;1 <======== PFILE Submitted by: Ken A L Coar General Dynamics 12101 Woodcrest Executive Drive Creve Coeur, MO 63141 (314) 851.4003 This program allows a user possessing CMKRNL to alter an additional level of protection on a file. Documentation concerning the implementation of this alteration is intentionally sparse, due to its rather sensitive nature. Since the program uses semi- documented features of VMS, no guarantee of its continued proper function is either implied or explicitly stated, and neither the author nor General Dynamics Corporation may be held in any way responsible for the program's reliability, or for any effects which result from its use. Each of the four ways of accessing a file (Read, Write, Execute, and Delete) may be limited to succeeding IFF the requestor is running in a particular access mode or higher. Since RMS runs in executive mode, this essentially means that the file may be generally accessible or inaccessible for that type of access, depending upon whether the processor mode of the requestor is kernel or not. $ PFILE /DELETE=KERNEL SYS$SYSTEM:SYSUAF.DAT would result in the UAF's being undeletable except by a program specifically written to delete it using $QIO calls in kernel mode. Good luck. I strongly recommend that the source be taken offline immediately because of the security implications of this program. #k ========> [VAX85C.RAINIER]AAAREADME.TXT;1 <======== This DECUS submission contains two sets of VAX Ada software. One set is contained in the subdirectory [.TOOLS] and contains a set of Ada reuseable packages. Please note that several of these packages are "WITH"ed by the other set of software, so it will be necessary to compile this set of software first. The second set of Ada software found in the [.TAPSE] subdirectory is all the software necessary to build The Ada Programming Support Environment (TAPSE) as described at the Fall 1985 DECUS Symposium. If you have any comments or suggestions concerning this software, please contact: Stephen R. Rainier c/o The MITRE Corporation 1820 Dolley Madison Blvd. McLean, VA 22102 (703) 883 - 5543 ========> [VAX85C.RAWIO]AAAREADME.TXT;1 <======== Forrest A. Kenney 1600 S. Eads ST. Apt. 425 N Arlington, Va 22202 Days 301-731-4100 Home 703-979-6676 8 January 1986 This directory contains a number of simple routines that provide an example of how to get UNIX CBREAK or RAW I/O using the VMS terminal driver without having to have the line set to PASTHRU all of the time. What are CBREAK and RAW I/O? Interpreting from the ULTRIX-32 manuals I have come up with the following descriptions of these terminal driver modes. In RAW mode I/O all characters are passed directly through the terminal driver to the reading process without interpretation. In CBREAK mode, the terminal driver interprets only flow control characters; typically CTRL/S and CTRL/Q. All other characters are passed directly to to the reading process as in RAW mode. See AAAREADME.DOC for more information. ========> [VAX85C.SAOSTOIC]AAAREADME.TXT;3 <======== RED is a text editor with some word processing features. STOIC is a stack oriented language reminiscent of FORTH. CALC is a calculator. -Jonathan Mark -Roger Hauck ========> [VAX85C.SKUNK]AAAREADME.TXT;1 <======== The directory [.SETDEF] contains a SET DEFAULT DIRECTORY utility program that runs under either VMS V3.x or V4.x. The directory [.EDT] contains a version of the EDT editor under VMS V4.x that allows the user to spawn subprocesses from within the editor. The directory [.SEND] contains a program that will send messages to terminals or users that are currently logged on. ========> [VAX85C.SMGLIB]AAAREADME.TXT;5 <======== Screen Management System Subroutines Ken Messer Allied Electronics 401 East 8th Street Fort Worth, Texas 76102 This submission consists of a group of subroutines written in VAX BASIC V2.3, comprising a system allowing the (relatively) simple usage of the new VAX Screen Management System under VMS version 4.2. Also included is a demonstration program using it. With this system, a programmer can create up to 10 virtual displays and manipulate them quite simply, by keeping track of the sequence number of the intended virtual display (0 through 9) and passing that number as an argument in the subroutine call. Specific information about the routines, as well as argument layouts and more detailed explanations, are to be found in SMGDOC.MEM, which is included in the submission. Librarian's note: See also AAAREADME.DOC which I separated into a separtate file. ========> [VAX85C.TIMELINE]AAAREADME.TXT;1 <======== DECUS Tape Submission --------------------- VAX VMS V4 September 4, 1985 Joe Meadows Timeline/WHY Systems 10607 N.E. 38th Place Kirkland, WA 98033 (206) 822-3140 This tape contains a potpourri of utilities to enhance VMS V4. The utilities are for those wishing to examine information that is usually internal to VMS. The main objective was to provide a public domain utility called VERB which is similar the CLEX (allows you to extract/list verb definitions from the command or process tables). While compiling this utility (no pun intended) I ran across other things that make life livable. All sources are provided along with command procedures to aid in compiling and linking. Utilities and command procedures included are: Compile (only compiles if source date has changed from object file date). Compress (example from the Fortran manual for compressing and uncompressing files, similar to squeeze and unsqueeze in the MS-DOS and CP/M world). Edit (shows callable EDT off, spawns a subprocess from within EDT- with output deverted to screen or buffer) Info (displays a mirrage of information on selected processes- you may select formatting, sorting, parameters, etc.) Unmessage (takes a system message file and decompiles so that you may edit and recompile). Psm Example of a modified print symbiont. Verb Extract verb definitions from command or current process table. Misc. Some other executables, from my college hacking days, source code is all jumbled up and inaccesible currently. Included are programs to dump object files, (usefull for dumping SYS.STB), a program to search through the index file (it gets confused on extents, doesn't know about multiple volumes, but, still darn good) A program to examine memory, another to modify creation, modification, backup and expiration dates, and a program to broadcast messages to terminals. ========> [VAX85C.TPUEDT]AAAREADME.TXT;1 <======== These customizations to tpu's edt keypad emulator are implemented with the following files: CHEATSHEET.RNO is the DSR source for a single-page summary of the key definitions implemented in VMS, standard TPU EDT, or the Kalamazoo College customizations. CUSTOM.RNO is the DSR source for a handout given to users switching over from real EDT to this TPU emulation. KAZSECINI.TPU is the TPU source for the Kalamazoo College customizations. TPUEDT.RNO is the DSR source for the paper on the programming of the customizations, written as a candidate for last-minute inclusion in the December, 1985 DECUS Symposium. TPUINI.TPU is the TPU source that serves as the users' command file. ========> [VAX85C.TSUME]AAAREADME.TXT;1 <======== Tsume - A C program to solve mating problems in Japanese Chess (Shogi). Testbed for directed tree searching. Rules given in TSUME.H Needs checkpoint facility and better heuristic to solve main problem which is known to require 113 moves. ========> [VAX85C.UAB]AAAREADME.TXT;5 <======== _______ _______ __________________________________ | | | | / \ | | | | / \ | | | | / __ ____________ \ | | | | / / | | \ | | | | | / / | | | | | | | | / / | |____________/ / | | | | / / | / | | | |/ /______| ____________ \ | | | | \ \ | \__________/ | | | | __________ |____________/ | \ / | / \ / | / \____________________________/ |__________________________/ The University of Alabama at Birmingham Submissions for the Fall 1985 VAX SIG tape ------------------------------------------ BY: Mark R. Vevle University of Alabama at Birmingham 244 BHS, THT 79 University Station Birmingham, AL 35294 (205) 934-1973 / 2657 I am very interested in evolution of the programs contained in this submission. Please send me a description of any bugs, fixes and/or enhancements you have made to these programs. In turn, I will give you credit in the source code and in the program documentation for any fixes/enhancements which are used. I'll also you send an updated copy (with your fix/enhancement) of the program. Location Description ------------- -------------------------------------------------- [...UAB.LIST] -- NEW SUBMISSION. A screen lister, written in TPU, which uses the VT2xx keypad like EDT (where aplicable). I am sorry the source code is not included. I wrote the program to learn TPU and although LIST works and I have not encountered any bugs (yet) the source code is not structured and does not have any documentation in it. I plan to clean up the source and submit it in the spring. Page 2 If you send me a tape or RX01/RX02 floppy with return postage I'll send you the source code as soon as I get it cleaned up. NOTE: VAX TPU comes with the VMS V4.2 update. Therefore, LIST will only work on systems running VMS V4.2 or later. Request to Users: ----------------- I am open to suggestions for functions for any of currently undefined keys on the keypad and for any changes to the layout of the keypad. Please send a letter to the above address. Thank you for your input. [...UAB.RMDEMO] -- Update of RMDEMO, a dynamic user display program. Has been modified to use the SMG$ routines and has gone to 132 columns rather than 80, and other updates and bug fixes. Currently the HELP screen is not operational. Features broken by the VMS 4.0 update have been fixed (idle times, ect.). Request to Users: ----------------- I have changed the name of RMDEMO to BIG_BROTHER (BIGBRO) by request from users since RMDEMO is really DEC's RSX monitor program. BIG_BROTHER may not be a suitable name either. I am conducting a poll of users for a NEW name. Please mail me your favorite suggestions for a new name for BIG_BROTHER. I am also open to suggestions for additions/deletions to the current display. Thank you for your interest in BIG_BROTHER/WHAT_EVER. [...UAB.GRADE] -- Resubmission of class grading program which uses the terminal independent screen procedures and the VTxxx line drawing character set. Should be used on a VTxxx terminal. Allows dropping of grades, selectable by the instructor. Calculates scores needed to make A, B, and C. Calculates class overall average as well as class average for each score. Has various types of printouts including some suitable for posting and some suitable for distribution to the student. GRADE will also build a sequential, ASCII file for easy storage and will load from a sequential, ASCII file for easy recall of student information. [...UAB.SMAUG] -- Resubmission. We run this program as a detached process to lower the priority of users using more than their share of the CPU. A user's share of the CPU is calculated as a function of the number of users on the system. SMAUG also allows the exclusion of some programs (we exclude FRODO if Page 3 it is being run from terminal TXB2, which is our graphics station) and SMAUG will not tamper with users who are already running at elevated priority (>4). SMAUG is written in VAX FORTRAN so modifications should be simple if not trivial. ========> [VAX85C.UWRF]AAAREADME.TXT;7 <======== Fall 1985 VAX SIG Submissions from: ---------------------------------- Academic Computing Center University of Wisconsin - River Falls River Falls, Wi 54022 This submission contains a variety of programs and command procedures developed by staff and students. All are provided "as is" and may be used, modified and copied as you wish. All of these items are currently in use under VMS 4.2 but the Univ. of Wis-River Falls assumes no responsibility for the use or reliability of any of this software. Many of the command procedures, programs and help text may reference site-dependent logical names. The logical names, and what they point to, are: ACC_USERUTILITY Location of all utility programs that general users would want to run. These would be those written by us or obtained from other DECUS tapes. Nothing in this area would be designed for operators or system managers. ACC_SYSTEMUTILITY Similar to ACC_USERUTILITY but contains all those programs used by operators and the system manager. ACC_USERCOM Command procedures which can be used by general users. ACC_SYSTEMCOM Command procedures which would be used by operators or the system manager. ACC_FILES Location of data files used by programs and command procedures found in any of the other locations. [.ACCESS] A software package to create and remove usernames. It is especially designed for an academic environment where usernames for students are created and removed frequently. We deal with 800-1000 individual usernames which must be created and removed every 3 months. The Access software allows the computing center to create usernames for students registered for a course and then gives the course instructors control over adding and dropping students. The software is very site-dependent but I think it could be modified with minimal effort for other sites. The software does rely upon the Ingres data base software marketed by Relational Technology Inc. but someone could modify the programs to use any other data base or file structure available. [.CALENDAR] A program which can print calendars for any month and year. The calendar will fit on a single line printer page. You can provide a data file with up to 2 lines of 15 characters each of text information for any date. This text will be printed on the calendar. The calendar pages are also sized to fit on 8.5" x 11" Page 2 paper if you have a letter quality printer capable of printing at 12 cpi. [.EBS] written by Allen Miller, student programmer Emergency Broadcast System. This program is an alternative to the REPLY command and other such programs which have appeared on past DECUS tapes. We found one very annoying problem with all these commands/programs. The user could prevent the delivery of the message by the terminal broadcast settings or if the terminal was in passall mode (which happens with one of our favorite editors). EBS sends a message to the specified usernames and/or terminals using $QIO so the message will always be delivered (unless terminal has been paused with ctrl-S). It also has a /SELF qualifier that can be used by anyone to send themself a message - useful for notifications from batch jobs. [.FRAGMENTATION] Prints a chart showing the fragmentation levels of a disk. This program reads [000000]BITMAP.SYS. It prints out the size and count of all free space found on a disk. [.LISTER] A program listing program. The main feature of this program is that it will place titles at the top of each page of the listing. By default, the title includes the filespec and the date and time. You can specify the title within the program by enclosing %TITLE command within host-language comment delimiters. Most of the source programs in our submission use this program. It makes it easy to find procedures or program sections in large printouts. The program recognizes host-language comments for Basic, Cobol, Fortran, Macro and Pascal as well as DCL. It has only been used extensively with Pascal and DCL so I can't guarantee anything for the other languages (sorry - we aren't a Cobol shop). [.PEN] Environment files for Pascal. There are many files. Some define DEC run-time library routines, others define routines in our own library, UPL. These environment files are inherited by various programs in this submission. On our system, these files are located in the area pointed to by the logical name SYS$LIBRARY_PASCAL:. [.PRIV] written by Allen Miller Allows a user to set privileges based upon the authorized privileges of your master process. While SET PROCESS/PRIV= works for a main process to enable an authorized privilege not currently held, it doesn't work in subprocesses if your main process did not have an authorized privilege set when the subprocess was spawned. PRIV will let you set the privilege from the subprocess. Requires CMKRNL privilege to run. It should be safe to install with CMKRNL because PRIV makes sure that the privilege a user is requesting is authorized. Use at own risk however! This is a new program for us new and it has not as yet been thoroughly examined from a security stand-point (i.e. redirecting logical names, etc.). [.PROSE] A text formatting program similar to Runoff. We used Prose on a Page 3 different computer system before we got our VAX. When we were converting we looked at Runoff and discovered that Runoff set limitations on page layouts and many other things which we weren't used to dealing with, so we converted Prose to run on the VAX (it is written in Pascal). I won't claim that this program is for everyone but all the documentation on other programs that are on this submission are set up for use with PROSE so I included it also. PROSE can be frustrating at times; you have to be able to put up with its unfriendlyness. This one program can put the concept of user-friendly back 10 years. We use it in the computing center and students use it for resumes and term papers. The source to Prose is a mess; someday we hope to clean it up. I haven't included it because you really don't want to look at it. If you are interested in using Prose and would like the source contact me directly and maybe something can be worked out. The EXE as included here should be sufficient to print any of our documentation files. PROSE source files have a .PSI type and output files have a .PSO type. [.QUOTA] Reads the disk quota file on a disk using $QIO requests and prints a formatted list showing disk usage information. We use this as a system manager's program to replace the DISKQUOTA SHOW command. It can produced a list in one of several formats and it SORTS the information by identifier name or uic value. One of the output formats will create a listing file in the same format as DISKQUOTA did under VMS 3.x - we needed this to make monthly accounting reports work since they relied upon a DISKQUOTA SHOW output file. Under VMS 4.x, the format of the listing file wasn't as consistent, we also needed the uic numeric value and DISKQUOTA always shows the uic in alpha form. [.RESERVE] A terminal reservation package. We operate a computer terminal lab for students in any course to use. Students can reserve up to 2 half-hour blocks of time a day on any of the terminals in this lab. RESERVE is designed to run from a dedicated terminal in the outer area of our lab. We run it for reserving 18 terminals but it was designed to handle 32. RESERVE works with direct-access and indexed files to keep the reservation data. The Ingres data base software from Relational Technology Inc. includes screen form routines and some of the support programs use these to set-up and initialize the other data files. It would require some modifications by others wishing to use it if you do not have Ingres. All the programs are written in Pascal. [.SCRUNCH] All the command procedures we develop and use on a system-wide basis are heavily commented. This unfortunately slows down execution. SCRUNCH takes as input the file containing the commented command procedure and generates an output file with all comments removed and whitespace and multiple lines condensed. SCRUNCH itself is not highly commented nor elegant because it started out as a test program which has since been inserted into a much larger software package. But it does work. Make sure you keep your original source file around for modifications though! SCRUNCH follows the rules of DCL: if you start a symbol substitution with ', it expects to find a closing ' mark, quotes must be terminated on WRITE commands, Page 4 etc. If you take advantage of short-cuts in DCL, SCRUNCH may not work properly. [.SETFEEDER] A program to set-up a DIABLO 1630 letter quality printer for use with a cut-sheet feeder. This program sends escape sequences to the terminal port to which the DIABLO is connected. It handles setting page length, margins and cpi. [.SGO] written by Anton Rang, James Miller, students Game of GO. Very GOOD implementation; difficult to beat. Uses SMG$ routines. [.SYSCOM] Command procedures designed for operators or system managers. PRIVCHECK Determines if the caller has the needed privileges. If caller has SETPRV, PRIVCHECK will obtain the needed privileges. This is used by other procedures. WARN Sends warning messages to all users at recurring intervals to inform them of pending backup. This procedure uses the EBS program. It also uses the TIME program from an earlier DECUS tape. This is set up to run as a batch job. [.UPL] User Procedure Library. Routines written as run-time library routines for use in other programs. There are many routines included here, many of which are used by other programs in this submission. We have this set up as a shareable library on our system. There is also a user system services file named ACCUSS which contains two routines needed by EBS. [.USERCOM] Command procedures which can be used by any user; they require no special privileges. EBSALARM, EBSALARM2 written by Anton Rang, student Alarm clock to run as a subprocess. Students use this to remind them when it is time to go to class. Uses the EBS program. INUSE modified by Anton Rang, Harlan Bloom, students Modification of a procedure found in an earlier DECUS. This locks a terminal and displays an inuse message on the screen so that the user can temporarily walk away without fearing for the safety of his files. PROTECT written by Harlan Bloom, student Simplifies use of the SET PROTECTION command. RECOMPILE, RELINK written by Anton Rang Procedures to compile and link portions of a software package Page 5 only if the source files have changed since the latest object or exe files. RESET written by Anton Rang Simple command procedure that can be used to prevent you from accidentally logging off if you have a subprocess running, such as an editor spawned. SYMBOL_EXTRACT System symbols and message symbols are a great invention. It would be even nicer if they were easier to incorporate into non-macro programs. This procedure provides a way to take such symbols and create a file that can be included by Fortran or Pascal programs. The procedure will even generate either a CONST type include file or a VAR [EXTERNAL,VALUE] type include file for use with Pascal 3.0. This procedure needs SYMBOL_LIST. SYMBOL_LIST Provides a way to list the values associated with any group of symbols, such as $SSDEF, $LIBDEF, etc. It can be called to list user symbols generated from message files also. This routine is also called by SYMBOL_EXTRACT. Also, the program PROSE is used by this procedure to create a nicely formatted symbol listing. TESTFILE Used by some of the other procedures. Returns a status code indicating if a specified file exists or not. USERS written by Anton Rang Program usually run when you log on to tell you who else is also on the system. The usernames you are interested in are contained in a file. XCOMPILE written by Harlan Bloom, student. Performs a compile, link and run. Designed to simplify the program development process for students. This procedure will handle any of the languages: Basic, Cobol, Fortran, Macro and Pascal. It also uses XRUN. XDELETE written by Anton Rang Makes it easy to delete files. You can enter XDELETE TEST and it will get rid of TEST.*;*. XRUN written by Harlan Bloom, student. Runs a user-specified program, directing the output to a disk file. This disk file can then be printed on the line printer. This procedure was designed to make it easy for students to get a hard copy run of their assignments. It doesn't do anything super fancy, just all the usual defines of logical names. The program TRANSFORM from an earlier DECUS is used by this procedure; its purpose is to convert from one type of file carriage control to another. Page 6 [.VAXGUIDE] This is a copy of our user's guide. It will obviously contain information specific to our site but when we first got our VAX we looked around for something like this as a base from which to start so I thought someone else might benefit from ours. It is designed to be used with PROSE. I have included both the source and the result formatted for a line printer. If you have any questions, problems or comments about any of these submissions you can contact: Marlys A. Nelson Academic Computing Center University of Wisconsin - River Falls River Falls, Wi 54022 (715) 425-3583 For generally simple questions or problems, your best bet is to call. I am usually available to provide quick assistance over the phone. No support of any of these items is promised however. We are a very small operation. Responding to written communications never seems to make it very high on the list of fires to fight but you can try if you want. ========> [VAX85C.VFE]AAAREADME.TXT;1 <======== VFE is a block-oriented, type insensitive VMS file editor. It can edit user files, FOREIGN-mounted tapes, and disk devices. Data can be displayed in ASCII, EBCDIC, hex, binary, and integer format. User-defined sections of single or multiple contiguous blocks can be changed, compared, and transferred within a file or between files. VFE also has a very fast search which can target a string, hex or integer constant. All or part of a terminal session can be logged to a sequential file for later lineprinter output. For more information, see VFE.DOC. This is the second release of VFE, with many useful enhancements. If you are a user of the original version, released on the fall 1984 VAX SIG tapes, be sure to look at VFENEW.DOC. This utility was presented at the "VAX magic" session of the fall 1984 DECUS symposium. Submitted by: Ward Condit Maricopa Community Colleges P. O. Box 13349 Phoenix, Az. 85002 ========> [VAX85C.WATCHDOG]AAAREADME.TXT;10 <======== W A T C H D O G This directory contains a program, WATCHDOG, original was taken from a DECUS tape and the authors unknown, it was rewritten at American Satellite Company. This program monitors interactive processes and logs processes off that have been inactive for some time period. A interactive process is a process that is attached to a terminal. The process can be network process, a spawned process, or an interactive process WATCHDOG does not care as long as it is connected to a terminal and not HIBERATING. When a process is being logged off a message is sent to the central operators. Warning messages are sent to users terminals except under the condition when the process's main terminal is set for no broadcast or when a main process is suspended and the subprocess needs to be logged off. A command file is included to build the program called WATCHDOG.BLD. To start WATCHDOG you may use WATCHDOG.COM, this file may be put in your sys$manager:systartup.com. George H. Walrod III MS-34 American Satellite Company 1801 Research Boulevard Rockville, MD, 20850-3186 (301)251-8485