========> [VAX83D.LBLTOOLS]AAAREADME.TXT;5 <======== [VAX83D.LBLTOOLS]AAAREADME.TXT submitted by: Joe Sventek Lawrence Berkeley Laboratory MS 56B-3238 Berkeley, CA 94720 Fall 1983 submission of the Lawrence Berkeley Labortory Unix-like Software Tools. See [.DISTN]CHANGESRC.F83 and [.DISTN]CHANGEVMS.F83 for descriptions of the changes made since the last distribution. See [.DISTN]README.1ST for installation instructions and for information concerning duplicate files deleted to save space for this distribution. ========> [VAX83D.LISPMAN]AAAREADME.TXT;2 <======== [VAX83D.LISPMAN]AAAREADME.TXT submitted by: Dr. David Slater ManTech International 2320 Mill Road Alexandria, VA 22314 (703) 838 5600 This is the handout which accompained Dr. Slater's Pre-Symposium Seminar on LISP. ========> [VAX83D.MBM]AAAREADME.TXT;3 <======== [VAX83D.MBM]AAAREADME.TXT M a i l B o x M a s t e r The MailBox Master (MBM) program is a utility program providing access to the VMS system services manipulating mailbox devices. One can use MBM to: o Show mailbox device attributes o Create mailboxes o Delete mailboxes o Set mailbox device protection o Read a mailbox, transfering mailbox data to SYS$OUTPUT in one of three ways: "type", "dump", or "format" MBM is written in BLISS-32 using the Command Language Definition (CLD) and Message utilities. See .HLP file for further details. Michael G. Mulligan The SADDLEBROOK Corporation 101 Main Street Cambridge, Massachusetts 02142 ========> [VAX83D.NIH]AAAREADME.TXT;3 <======== [VAX83D.NIH]AAAREADME.TXT Contributions from National Institutes of Health, Arthritis Institute, Laboratory of Molecular Biology, Molecular Structure Author: Dr Gerson H Cohen NIH, Bldg 2, Room 312 Bethesda, MD 20205 Subdirectory - ACCOUNTS This is a set of command files and programs which we run periodically to analyse our system usage and tune system parameters. o Files: ACC.COM - This file analyses the system accounting file. ACCOUNTS.COM - This is the top level procedure. BIGFILES.DOC, BIGFILES.EXE, BIGFILES.MAR, FSPEC.MAR - These four files comprise the program BIGFILES found on the fall 1982 tape. They are repeated here due to an error which I found in the file BIGFILES.MAR relating to the calculation of the header number for a given file. MONSTAT.EXE, MONSTAT.FOR - These files comprise the program MONSTAT which analyses the results from MONITOR (see that subdirectory) for the purpose of fine tuning some of the system parameters. Subdirectory - CVTLOG The program CVTLOG converts a file in VFC format such as a .LOG file or a .LIS file from an execute (@) instruction output into a variable length line FORTRAN carriage control type. This is frequently usefull because the carriage control of such files is generally hidden to FORTRAN users (the FORTRAN User's Guide, AA-D035C-TE, sec 3.5.10, implicitly shows how this may be accomplished in FORTRAN, with the use of a USEROPEN routine). By defining a symbol CVTLOG == "@CVTLOG", the command procedure CVTLOG.COM will run the program in a manner similar to the use of a system utility. Subdirectory - FETCH Page 2 This subdirectory contains several files which we wrote to learn how to use private section files. We have an application that wants to use 10**6 to 10**7 bytes of data, but the data are not necessarily all referenced. Since the larger amount would exhaust our data space and we reasoned that not reading data which we didn't want anyway would save time, we thought of the private section file with a read on reference. The procedure proves to be an improvement over the best fortran reads that we have been able to manufacture. The paging rate is, of course, down since the system doesn't have to write out "used" pages and we like the final implimentation, which is not just exactly what is here but is pretty close. Some of the structure in the subroutine FETCH is historical for compatibility with the ultimate product and any applications developed based on this code should, of course, be tailored in a better way! The program TNUMRECS tests the subroutine NUMRECS which may be of some general utility, itself. It is designed to enable the calling program to get the number of records in a fixed length file and was a step along the way in the thoughts about FETCH. The program JULDATE was a test to learn how to generate the Julian date. This form for the day-of-year is sometime usefull, as for an IBM tape label. I have not yet incorporated the code into the subroutine in [-.tape] but intend to. Subdirectory - FLECS The FLECS (Fortran Language Extended Control Structure) preprocessor, version 22.69, of the University of Oregan is in this directory. Both the FLECS source and the FORTRAN translations are provided. The source is presented in two parts: the main - C, and the subroutines - SC. The runoff files correspond to an earlier RSX version of mine but have the advantage of being machine readable. Just ignore the parts regarding MACRO sources and MCR, etc. SC has been optimized somewhat to take advantage of the VAX's capabilities with character strings. The file FLECS.COM, if invoked via the symbol FLECS == "@FLECS", permits the use of FLECS to take on the characteristics of a system language processor. Subdirectory - MONITOR.DIR Monitor is run as a detached process. It is invoked by the command procedure MONITOR.COM, which also contains the procedure itself. It is used to sample some system states via the commands: SHOW SYSTEM and SHOW MEMORY. These are later tabulated by the program MONSTAT (see the subdirectory ACCOUNTS). Page 3 The procedure is also used to alter the state of some of the QUEUES, depending on time of day, to HOLD or RELEASE certain jobs (via MANIPQUE.COM) and to ensure that a single user does not hog any of our longer QUEUES (see SHUFQUE.COM which alters the access priority of pending jobs in the specified QUEUES). Since we cannot FORCEX on DCL, instead of pausing by means of a WAIT (which puts the process into an LEF state) we run the program SLEEPSOME which HIBernates a specified amount of time. The time is variable and is passed to the program by means of a logical definition. This also permits purging the working set. The FORCEX is executed by the program CLEANSTOP which sends a control-y with a warning severity so that the DCL can flag it and exit. Subdirectory - PLOTQMAN A Queue Manager This is a resubmission from fall 1981 due to an error in the original code. The file PLOTQMAN.COR shows the corrections to the original code and has been included in the version of the program given here. o A package for managing a queue of requests to a special device. We have a Versatec printer/plotter which is used as the system printer as well as a plotter. Short of writing a proper symbiont for it which would handle both print and plot requests, a task which is currently beyond my capabilities, I have developed a plotter_queue_manager. The queue_manager sleeps all day until hearing a request via a mailbox, whereupon it wakes up and dispatches it in a reasonable fashion via a subprocess. The facility to abort an active subprocess (a plot actually coming out), cancel an entry in the queue and interogate the queue are all provided. The queue_manager's log also receives a time stamp about once every hour. By changing the nature of the subprocess scheduled by the queue_manager, a queue for something other than our Versatec could be maintained and, in principle, many such queues could be maintained by one such manager. The queue_manager itself is run in a detached process. Unlike the system queues, which persist across a reboot, anything pending must be rescheduled on reboot. Other bells and whistles, like deferring a given entry in the queue, stopping the queue, ... could be coded into the program. Page 4 The system overhead for running this process appears to be very small. It is a significant improvement over our previous method of having a process wake up every 5 minutes to examine a special directory for the presence of plot files. o Required files: PLOT.COM - The user interface. Accepts commands from the world and composes proper messages for the Queue_manager. This file is put in SYS$MANAGER. PLOTQMAN.* - The program and command files to link it. IFERR.MAR - a modified version of that on the spring 1981 DECUS contribution in the subdirectory NCAR. It repaires the v3.0 complaint about an addressing problem. PLOTIT.COM - The command procedure which gets used by the subprocess submitted from the queue_manager. This file is put in SYS$MANAGER. RUNPLTQMN.COM - The procedure by which the queue_manager is started. o Special symbols, definitions and directories: PLOT :== @sys$manager:plot PHELP :== @sys$manager:plot help PSTAT*US :== @sys$manager:plot status PABORT :== @sys$manager:plot abort PCANC*EL :== @sys$manager:plot cancel SYS$MANAGER = 'f$logical("SYS$DISK")'[sysmgr] The directory DBA0:[PLOT] is used. o Other files: IOPKG.CHG - This file shows a merged list of differences between our version of the Versatec supplied routine IOPKG and the original. The modifications permit the generation of plot files in any directory, passing the relevant information to the plot file processor via logical names. IOPKG.SLP - This file is suitable for application to an unmodified VERSAPLOT-7 source for IOPKG. PLOTS.CHG - This file shows a merged list of differences between our version of the Versatec supplied routine PLOTS and the original. The modifications permit the modification of various plot parameters, such as plot size, from a batch job. The code is fully compatible with the default usage of the routine, as in the Versatec supplied examples, and also permits the interactive alteration of these values if the variable NCHANGE is set to -1 in the call. Page 5 PLOTS.SLP - This file is suitable for application to an unmodified VERSAPLOT-7 source for PLOTS. USEPLOTS.EXM - This file gives an example of the useage of the modified PLOTS routine. Subdirectory - RESEQ The RESEQ program is a modification of the spring 1980 submission. We found certain cases which would not function properly with the original, in particular non-left-justified statement numbers. New features which we have installed include a properly working /RIGHT switch, permitted use of lower case and the flagging of unpaired quotes, as in a direct access read. The runoff files have been updated to this version. The original author is noted in the source. Subdirectory - SD This subdirectory contains what may be the successor to the very first of the Set Default quickies. I got it in December 1979 and have kept it functional, incorporating whatever new DCL features were relevant. The TECO subroutine is completely replaced; this one is from a PAGESWAPER (v.4, no.1, Aug, 1982). It remains the simplest that I have seen and seems to do all that I would ever need. Don't dismiss it without reading it to see its capabilities. Implimentation is with a symbol like SD == "@SYS$SYSTEM:SDD". LIBRARIAN'S NOTE: Placed in the [.SETDEF] structure. Subdirectory - TAPE This subdirectory contains a collection of tape handling subroutines and two programs which we use to read and write IBM Standard Labelled or Unlabelled tapes, FB or VBS type. By using the program MLTAPE as a template, it is possible to read and write binary, VBS tapes as well. o Programs: CARDIN - This program reads ASCII or ECBDIC, FB or VBS, labelled or unlabelled IBM type tapes. A tape is considered to have EBCDIC codes if it is called labelled. The program does not handle IBM style ASCII tapes or tape labels. We install a symbol CARDIN == "@CARDIN" to invoke the program via the command file of the similar name. Files are transferred singly and the tape is rewound after each transfer, a known inconvenience deriving from Page 6 lack of forsight 6 years ago. SPOUT - This program writes ASCII or ECBDIC, FB, labelled or unlabelled IBM type tapes. A tape is considered to have EBCDIC codes if it is called labelled. We install a symbol SPOUT == "@SPOUT" to invoke the program via the command file of the similar name. Files may be strung together in a concattenation into a single output file on the tape. Each file on the tape is transferred singly and the tape is rewound after each transfer, a known inconvenience deriving from lack of forsight 6 years ago. The program MLTAPE may be used as a template to write input and output programs for IBM binary VBS tapes. The subroutine NUMCON contains the entry points for the various numerical conversions. The source is not mine but I have had it for so long that I can no longer remember to whom to attribute it. File - XLIB This DCL command procedure was coded by Dr G Gilliland and began as an exercise in DCL coding. It started with an implimentation of a procedure from the FORTRAN User's course several years ago. In its present form, it presents a convenient way to handle both source and object libraries, hence its name. It is particularly good during development coding. For convenience, each project is best kept in a subdirectory of that projects name having a library of the same name and a main of the same name. Otherwise, the procedure permits the user to reset these names as required. ========> [VAX83D.NSWC]AAAREADME.TXT;6 <======== [VAX83D.NSWC]AAAREADME.TXT USERS COMMAND ------------- The USERS command resembles the VMS command SHOW USERS, but shows more information. For example, The display updates, batch processes are also shown, and the currently-executing image of each process is shown. For further information, see USERS.DOC. OWN COMMAND ----------- The OWN command allows non-privileged users to perform the function of the VMS command: SET FILE /OWNER=PARENT on any files which are in directories which belong to them. For further information, see OWN.DOC and OWN.HLP. LIBRARIAN'S NOTE: It has been pointed out that anyone can use PIP with the /EN switch to point at a file and then use this program to steal it. Since the users at my installation who use PIP also have privileged accounts I have set the protection on PIP.EXE to WORLD:no access to make this process a little more difficult for an unprivileged user. KILL AND BKILL COMMANDS ----------------------- The KILL command searches all output queues for jobs PRINTed by the calling user. For each job found, information on it is displayed, and the user is asked if he/she wants to kill it. If 'YES' is entered, the job is deleted. The BKILL command is identical, except it searches all BATCH queues. A job number or queue name can be specified to limit the queue searches. Privileged users (OPER, WORLD, or GROUP) can delete other users' jobs. Page 2 For further information, see KILL.DOC and KILL.HLP. DAY PROGRAM ----------- Sets the global DCL symbol TODAY to the name of the current day of the week. The program can be modified to set a local symbol instead. To execute, do '$ RUN DAY'. SD COMMAND ---------- Yes, yet still another Set/Show Directory command. This one uses the VT100 line-drawing set to draw a tree showing the subdirectory structure within the current default, and allows you to use EDT-like keypad commands to manipulate this dis- play. For a quick example, enter: $ SET DEFAULT [VAX83C] $ @[VAX83C.NSWC]SD * For further information, see SD.DOC. LIBRARIAN'S NOTE: Placed in the [.SETDEF] structure. AZLIBRARY.OLB ------------- Object library used in building the above programs. This lib- rary is built from AZLIBRARY.FOR and TERMINAL.FOR. Some of the routines may be useful to you; they are documented, after a fashion, by prologues in their sources. SUBDIRECTORY [.LANHAM] ---------------------- A collection of VAX software from the DEC Educational Services Washington, D.C. Training Center (which is located in Lanham, Maryland). For further information see [VAX83C.NSWC.LANHAM]AAAREADME.TXT. Page 3 ------------------------------------------------------------------ Submitted by: Alan L. Zirkle Naval Surface Weapons Center Code K105 Fall 1983 Dahlgren, Virginia 22448 ========> [VAX83D.NSWC.LANHAM]AAAREADME.TXT;11 <======== [VAX83C.NSWC.LANHAM]AAAREADME.TXT A collection of VAX software from the DEC Educational Services Washington, D.C. Training Center (which is located in Lanham, Maryland). ACPCACHE.* Program to calculate and display the hit rates GETCACHE.MAR on the ACP caches (DIR, EXT, FID, and QUO). ADJUSTPRI.* Routine to adjust priority of running inter- active processes when they exceed a threshold of execution time for an image. CAL*.COM Command procedures to print calendars. FLAGS.CAL PR*.COM CLASSIFY.* Utility to mark a file as classified, using CLASSPROC.MAR unused space in the file header. Also a sub- routine to fetch the classification level of a file. DISKUSG.* Procedure to print a summary of blocks used in every user directory and subdirectory on a given disk. FLOPPYCPY.* Program to copy the console floppy and restore it. GETPAGE.* Program to read virtual block 1 of a file us- ing only the $QIO system service, given the UFD name and the file name in that UFD. GIVE.* Utility to display the device protection code Page 2 GIVETIMER.CLD of a specified terminal. INUSE.COM Procedure to securely reserve a terminal when it must be left unattended. KEYDEBUG.* Keypad debugger. Maintains three screen re- gions: register display, command input, and DEBUG/program output. (Appears to have trouble on VT125 -- A.Z.) NETMAP.* Utility to draw a picture of the network top- ology. POKE.* Utility to modify the privileges of another POKTXT.MSG running process. CMKRNL privilege required. SAY.* Utility to allow sending of messages to any BUILDSAY.COM interactive user on the system. SAYSWITCH.* TIMER.* Utility to display Process Timer Requests and TIMERPROC.MAR Scheduled Process Wakeups from the VMS Timer GIVETIMER.CLD Queue. WATCHDOG.* Program to prevent idle terminals; warns user at 10 minutes, bumps him/her off at 20. In either case, sends message to operators log. Submitted by: Alan L. Zirkle Naval Surface Weapons Center Code K105 Fall 1983 Dahlgren, Virginia 22448 On behalf of: DEC Educational Services Washington, D.C. Training Center 5900 Princess Garden Parkway Lanham, Maryland 20706 ========> [VAX83D.PAGESWPR]AAAREADME.TXT;1 <======== [VAX83D.PAGESWPR]AAAREADME.TXT submitted by: Lawrence J. Kilgallen Box 81, MIT Station Cambridge, MA 02139 Copies of Pageswappers published since the last tape. ========> [VAX83D.PSDI]AAAREADME.TXT;2 <======== [VAX83D.PSDI]AAAREADME.TXT Free software BY Project Software & Development, Inc. This software is furnished for free and may be used and copied as desired. This software or any other copies thereof may be provided or otherwise made available to any other person. No title to and ownership of the software is hereby transferred or allowed. The information in this software is subject to change without notice and should not be construed as a commitment by PROJECT SOFTWARE AND DEVELOPMENT, INC. PROJECT SOFTWARE assumes no responsibility for the use or reliability of this software on any equipment whatsoever. Project Software & Development, Inc. 14 Story St. Cambridge, Ma. 02138 617-661-1444 Please report any problems to Erik Husby, PSDI. I will attempt to help but no promises. All this software works to the best of our knowledge. Most of it has been run on different machines so that there should not be any machine specific problems. This directory contains the following subdirectories. [.vaxnet] -- A new version of the ever popular terminal communications program. This version includes support for auto-dial modes, auto-login, and command files. This allows VAXNET to be run from a command procedure and to transmit files automactily. [.vaxnet.rsxnet] - A version of VAXNET for RSX11M systems. Not as powerfull as the VAX version but still usefull. [.vaxnet.ref] - A program to reformat the log files produced by VAXNET. [.vaxnet.mish] - A program that will turn any VMS file into an ASCII file that can be transmitted by VAXNET. The file then can be UN'MISH'ed on the receiving end. All file header information is encoded so that when unmished the file is exactly the same as the orignal. [.AUX] -- An AUXillary Keypad DCL program. Allows use of the VT100 keypad to create and edit VMS command lines. [.VTL] -- A new version of LIST which allows split screen mode and all VMS wildcards in the file specifications. ========> [VAX83D.RESERVE]AAAREADME.TXT;3 <======== [VAX83D.RESERVE]AAAREADME.TXT The files in this submission constitute an on-line terminal reservation system for use under VMS V3.0 or higher. Full details of the system are given in the Implementor's Notes (IMPLEMENT.TXT), the descriptive file (RESERVE.DOC) and the Help Menus displayed by the system when running. The program is written in VAX Pascal Version 2.2, with a single routine coded in MACRO. The sources are fully commented, and modifications should be relatively trivial. Author: Mark Resmer Box 248 Academic Computer Center Vassar College Poughkeepsie NY 12601 (914) 452-7000 Ext 2437 ========> [VAX83D.RESTRICT]AAAREADME.TXT;2 <======== [VAX83D.RESTRICT]AAAREADME.TXT TO: All Vax Users. FROM: James Greer and Bob Moe K N Energy Lakewood Colorado 80251 phone (303) 989-1740 SUBJECT: Image security or how to keep certain users from compiling fortran programs. EQUIP.: VAX 11/780 DATE: 20 OCTOBER 1983 ____________________________________________________________________________ This system allows the system administrator to regulate which of his users are allowed to use the fortran compiler. With a few minor changes, this system can be expanded to other compilers, editors, and commands. The flow of the system starts with SYS$MANAGER:SYSLOGIN.COM, all of the logins on the system use SYSLOGIN.COM when logging into the system. Therefore, this is a logical place to put in a security bug. SYSLOGIN.COM runs the command procedure RESTRICT.COM. This command procedure checks a security list of the users who are and are not allow the privilege of using the fortran compiler. If the name of the user is found in the VMSUSER.TXT, the logical F*ORTRAN :== @SYS$MANAGER:VIOLATION.COM is set for that persons login. Therefore not allowing that login to compile fortran programs. The command procedure VIOLATION.COM when run sends a message to the operator, that a violation has occured, and sends a message to the user that this is not an allow function. ========> [VAX83D.SEAFAC.CLEDIT]AAAREADME.TXT;2 <======== [VAX83D.SEAFAC.CLEDIT]AAAREADME.TXT Program name: CLEDIT Abstract: This program and its related command procedure provide the capability to perform simple editing of the command line as it is entered. Additionally, the program permits the last entered command line to be recalled and edited to correct errors or reuse the same basic command with modifications. CLEDIT is an enhanced version which has has not been tested as much as the basic version but provides a couple of additional features like user definition of keypad keys and saving of the last 16 commands. Enviornment: This program runs in user mode under a VAX/VMS system and requires a VT100 type terminal in ANSI mode. Written by: Fred Wilson ASD/ENASF Wright-Patterson AFB, OH 45433 513-255-3586 CLE.DOC,CLEDIT.DOC AND INSTALL.DOC contain installation and use instructions. ========> [VAX83D.SEAFAC.SETPRV]AAAREADME.TXT;2 <======== [VAX83D.SEAFAC.SETPRV]AAAREADME.TXT ************** Privilege On Demand Utility ****************** SSgt. Michael D. Weaver Directorate of Avionics Engineering ENASF Systems Engineering Avionics Facility Aeronautical Systems Division United States Air Force Wright-Patterson Air Force Base OH 45433 513-255-3586 Autovon 785-3586 This system provides an audit trail for the use of privileges in the form of an operator log and can be used as a direct pointer to image accounting when questions arise. Also justification for the use of privileges is obtained and is part of the message sent to the operator. Features of the Privilege on Demand Utility 1. Double passwords for privileges. Because of the password associated with the use of this utility the password to an account should not be compromised. Also due to the password, privileges can be linked to a person rather than an account. 2. Transportability across accounts. With this system no privileges are required in the UAF. To free a "hung system" the system manager could use a normally unprivileged account stop the process which caused the hang and reset the system to normal. Privileges are only available until they are "RESET" or until "LOGOUT". 3. Forces awareness. For system management personnell this system is a valuable training tool. Inexperienced users are forced to understand what the minimum privileges are to accomplish a specific task, and what some of the implications might be for using privileges. ========> [VAX83D.SETDEF]AAAREADME.TXT;1 <======== [VAX83D.SETDEF]AAAREADME.TXT These directories contains five different ways of making the "SET DEFAULT" command easier to use. [.CHANGE] was an individual submission. The others were a part of larger submissions. 1. [.BALL]SHOWDEF.COM 2. [.CHANGE]CHANGE.FOR 3. [.NIH]SDD.COM 4. [.NSWC]SD.FOR,SD.COM 5. [.USAE]SD.COM ========> [VAX83D.SFBRAUN.DTRPAT]AAAREADME.TXT;2 <======== [VAX83D.SFBRAUN.DTRPAT]AAAREADME.TXT Someday, perhaps, the DTR32 people will realize that, whatever n/0 is, it isn't negative one. This directory contains a patch to DTRSHRxx.EXE (the DataTrieve-32 V2.0 shared image) that forces divide by zero to be a zero result, with no error message. To use this, modify your DTRBLDxx.COM file in DTR$LIBRARY to include the DTRSHRPAT.OBJ object module. This provides a patch area for PATCH to work in. You also need to modify the link step for DTRSHRxx.EXE to make the symbols "DTR$$EAR_DIVIDE", "DTR$$EAR_ADD" and "DTR$PATCH" UNIVERSAL (the patch file needs these definitions). Then, rebuild the DTR images with "@DTR$LIBRARY:DTRBLDxx". Finally, apply the patch file. You should modify the image name in the first line of DTRSHRF2.PAT for the particular image you are patching. The given file DTRSHRF2.PAT is for DTRSHRF2.EXE. You may be using different suffix(es). To apply the patch file, simply use: "$PATCH @DTRDIV0F2.PAT". Steve Duff Oct 1983 ========> [VAX83D.SFBRAUN.INQUIRE]AAAREADME.TXT;2 <======== [VAX83D.SFBRAUN.INQUIRE]AAAREADME.TXT This application contains a souped-up, upward-compatible version of the VMS V3 INQUIRE DCL command. Features are included that permit use of for example: no echo, control-Z detection and branching, customized PF2 HELP key support, reprompting, CRT screen positioning, timeouts, default values and so on. The specific qualifiers are documented in the INQUIRE.HLP and INQUIRE.OUT files. The program is written in VAX/VMS FORTRAN-77. In addition to the DCL command interface, the application also sports two program interfaces, one which permits the DCL-like command to be passed in text form, and for efficiency another interface which permits a consisting of a parameter list in encoded form. The DCL INQUIRE verb does not require an image activation (i.e. it has less overhead), so rather than replace the INQUIRE verb in the command tables, this command is named "_INQUIRE" in the command definition file which then permits use of either command as circumstances warrant. It is suggested in any case that the image be installed as HEADER_RESIDENT and OPEN. No privileges are required. The command file to build _INQUIRE is called INQUIRE.LNK. It assumes a rooted directory SYS$SYSROOT:[INQUIRE]. Hack this command file as needed for your installation. The same comment applies to INQUIRE.CLD, the DCL definition file which defines the image file name and directory. INQDEMO.FOR contains a FORTRAN example of the call interface (it is also in the documentation files), and there are some references in it to the same directory. Again, edit these as your installation requirements demand. Steve Duff Oct83 ========> [VAX83D.SLIB77]AAAREADME.TXT;2 <======== [VAX83D.SLIB77]AAAREADME.TXT Submitted by Alex Lunsford (A2320) c/o Western Area Power Administration P.O. box 3402 Golden Co. 80401 (303) 231-1723 The file included are SLIB77.EXE The executable program SLIB77.MEM Users Guide - for SLIB77 SLIB77.LIB Library (in SLIB77 format) of the program SLIB77 is a computer software program designed to maintain source or data records in a compressed form. SLIB77 operates in such a manner that the user always has available all the changes ever made. The program is written in FORTRAN 77 to be compatible with different computers. SLIB77 maintains the records on a program library (random access) file creating new copies at the users direction. ========> [VAX83D.SPOOLER]AAAREADME.TXT;3 <======== [VAX83D.SPOOLER]AAAREADME.TXT This directory contains all the files necessary to install and run the Lockheed Plot Spooler. The documentation provided is a) OPERATE.MEM describes how to install the software, and how the System Manager controls it. b) RASMODS.MEM describes the modifications necessary to the Versatec RASM routine so that it may run under the spooler, and c) SPOOLER.MEM is user documentation. This spooler has been running succesfully at LMSC for over two years. The really new stuff is the documentation. I'm reasonably certain it is all correct, but I'm not so sure about its completeness. Knowing the software inside and out can lead to inadvertant assumptions, and hence omissions. At the time of submission, I have left Lockheed Research Lab, and the VAX site I am currently managing does not use the plot spooler, so I will not be well placed to answer questions. If you're stuck, give me a call and I'll do what I can. David A. Johnson Mgr, Engineering Computing Synertek, Inc. MS 37 3001 Stender Way Santa Clara, CA 95054 (408) 988-5839 Oct. 21, 1983 ========> [VAX83D.TCOPY]AAAREADME.TXT;5 <======== [VAX83D.TCOPY]AAAREADME.TXT The TCOPY program in this directory is submitted by the Space Science Division of the Naval Research Laboratory. TCOPY performs tape to tape copies of foreign mounted tapes. The source tape(s) may be either labeled or unlabeled in any format with record lengths up to 64000 bytes. We us TCOPY primarily for changing tape densities. TCOPY uses the subroutine package (TAPESUBS and TRNALL) submitted in the [TAPESUBS] directory of the VAX82A symposium tape by Thomas W. Danforth of the Woods Hole Oceanographic Institution. Operating instructions: $ ALLOCATE MTAx: ITAPE $ ALLOCATE MTAy: OTAPE $ MOUNT/FOREIGN ITAPE $ INITIALIZE/DENSITY=z OTAPE LABEL $ MOUNT/FOREIGN/DENSITY=z OTAPE $ RUN TCOPY Questions about the use of this program may be referred to: Tom Chewning Naval Research Laboratory Space Science Division Code 4105 Washington, D.C. 20375 202-767-2651 ========> [VAX83D.TIMING]AAAREADME.TXT;3 <======== [VAX83D.TIMING]AAAREADME.TXT SAMPLING SOFTWARE This directory contains SAMPLE.OLB (the CP timing library) and PROBE.EXE (the program that automatically places calls to SAMPLE routines into a FORTRAN program). As a precaution, the FORTRAN sources for SAMPLE and PROBE are included. The following instructions assume that these files are copyied to the directory [misc], and corresponding symbols are defined: SLIB:==SYS$USR:[MISC]SAMPLE/L PROBE:==$SYS$USR:[MISC]PROBE The program LLFORM.FOR is timed in the following example session. User input is shown in upper case. $ PROBE file name, unit (a9,a8): LLFORM,59 (program .main) subroutine nxtchr 1 0 1 0 $ FOR LLFORM $ LINK LLFORM,'SLIB' $ RUN LLFORM estimated original execution time 0.17 interval samples % count .main 8 46 1 nxtchr 20 54 134 $ PROBE is told that the input file is LLFORM.FOR and that the timing summary is to be written to unit 59, which is SYS$OUTPUT in this case. The next two lines report the code blocks found (the first block is a program with no PROGRAM statement), and the last line summarizes: one program, no functions, one subroutine, and no ENTRY statements. The timing summary, displayed at the end of LLFORM's execution, shows the estimated CP time (in seconds). For each program unit, the CP time charged (in 10-ms ticks) and estimated percent CP time used are reported, together with the number of invocations. -2- THE SAMPLE LIBRARY The following description is given for those who may wish to use the SAMPLE library directly. The routines below use the common block /SAMPBK/, whose length, in longwords, must be at least five times the number of sections to be timed. Page 2 SAMPIN(mx) must be called to initialize storage. The argument is an upper limit on the number of sections to be timed. SAMPON(name) is called to indicate nesting of a new section in the current one; SAMPON would be called, for example, at the beginning of a subroutine. The argument is the (logical*8) name of the new section. SAMPOF is called to indicate the end of a section; SAMPOF would be called, for example, before a RETURN statement. There is no argument. SAMPSW(name) is called to indicate the switch from one interval to another; for example, at the end of initialization. The argument is the (logical*8) name of the new section. SAMPDI(lu) is called to terminate timing and display the results. The argument is the integer logical unit number to which the data will be written. ========> [VAX83D.USAE]AAAREADME.TXT;3 <======== [VAX83D.USAE]AAAREADME.TXT The following command procedures and fortran programs were written by Aaron B. Stein Usae Waterways Experiment Station Vicksburg, Mississippi, 39180 601-634-3283 ******************************************************************************* adduaf.com This command file is used to create an account, disk quota and directory for a new user of the system. To use this command file you must pass it three parameters; p1 = directory to be created p2 = uic to be associated with this account p3 = account information For example to add a user named Zimmerman with uic of 100,3 and account sales you would type: @adduaf zimmerman 100,3 sales This command file, as do all on this tape assume the users directories are located on a device with the logical name user_disk: . The user who is added to the system with this file is given the default disk quota. ascebc.for;1 This program converts an ascii file to an ebcdic file. The input file name should be assigned the logical name 'as'. The output file name should be assigned the logical name 'eb'. ascebc.exe This is the execution file for above program. backupud.com This command file is used to backup the user disk. In the process of doing this it allocates and mounts your tape, deletes map, lis and obj files and it purges the user_disk. It then does a full disk backup of the user disk. When it has finished the backup it creates a summary of the cpu usage by all users and generates a listing of disk useage of all users with directories on the user_disk. The cpu useage report and the disk useage report are printed and stored in sys$sysroot:[sysmgr.useage]. blank.for This program removes all trailing blank in a file. It is very useful for compressing fortran file which have come to you from a card deck or cark image tape. On such file Page 2 much space is typically wasted by trailing blanks blank.exe This is the execution file for the above program. cofiback.com This command file copies selected files from a backup tape. To use it you must pass it the file name as a parameter. columns.for This command file identifies all lines in a fortran program greater than 80 character long. columns.exe This is the execution file for the above program. daybackup.com This command file backs up only those files created or modified from one day to the next by using the /since qualifier. This command file does a disk to disk backup and stores the incrementally backed up file on the system disk in sys$sysroot:[sysmgr.backup] . The backup save sets are named with the date they where created. This command file send mail to the system manager indicating the sucess or failure of the incremental backup. This command file submits itself to run at four o'clock the next morning when it completes it run. The result is daily incremental backups with out operator intervention. We have used this procedure for six months on our machine and it works very well. It is nice to be able to be able to restore files that are accidently deleted by users from day to day. We delete all these daily incremental backup save sets each friday when we do a full user disk backup (see backupud.com). To use this command file submit it once as follows: submit/after="tommorow+4:00" daybackup There after the file will resubmit itself and run each day at four in the morning. Try this one you'll like it. diff.com;3 Command file to run the differences dcl command with selected qualifers. ebcasc.for;2 This program converts ebcdic files to ascii files. Input file names should be assigned the logical name 'eb'. Output file names should be assigned the logical name 'as'. edbasc.exe This is the execution file for the above program. edt.com If you assign the symbol e to this file (see sylogin.com), then by typing e followed by a file name you will edit a file using the edt editor. So what you ask, well the other thing which this command procedure does is remember the last file which you edited using it. Therefore by just typing e with no file name following you will automatically be editing the last file which you edited. This will work even if you logout. The command procedure works by writting Page 3 a name of the file in edtmemory.dat For this procedure to work you must have a file named edtini.edt in your login directory. The file may be empty or contain edit initializer commands. On our system this file as well as most of the other command procedures and programs listed here are stored in sys$sysroot:[sysmgr.util] and they are equated to symbols is sylogin.com. See (sylogin.com included in this tape.) ff.com This command file puts a form feed every 22 lines in a file. This procedure allows you to use the page command in keypad editor mode to look thru a file. ******************************************************************************* THE TWO FILES BELOW, NOPRIV AND PRIV, SHOULD BE GIVEN TO ONLY THOSE PERSONS WITH SETPRV PRIVILEDGES. THE PRIV FILE WILL ONLY WORK IF YOU HAVE SYSPRV. nopriv.com This command file takes all priviledes away from a user except sysprv. priv.com This command file gives a user all priviledges except setprv. I use these file for system management. Normally I have only setprv and give myself the other priviledges when I need them. They are use as foreign commands. In my login.com file I have the following statements: $ priv :== @sys$sysroot:[sysmgr]priv $ nopriv :== @sys$sysroot:[sysmgr]nopriv ******************************************************************************* sd.com LIBRARIAN'S NOTE: Placed in the [.SETDEF] structure. systartup.com This is our startup.com file. ========> [VAX83D.USERPRINT]AAAREADME.TXT;2 <======== [VAX83D.USERPRINT]AAAREADME.TXT Submitted by: Jim Moomaw INTEL CORPORATION M.S. AL3-1-255 3585 S.W. 198th Avenue Aloha, OR 97007 (503) 642-6057 ........................................................................... These set of files provide an alternate PRINT command in a VMS environment, that offers several new capabilities over the as-delivered Digital PRINT command. To the user, it essentially minics the original PRINT command, but additionally offers some important new qualifiers. Some of the new features include: o Identical DCL PRINT syntax, with full wild-carding of file specs; o Ability to automatically route print jobs to the printing device closest to the terminal issuing the print request; o Ability to reject binary (non-text) files from being printed; o Ability to successfully print files that reside on allocated (i.e. non-shared/non-system) devices, especially floppy and tape; o Ability to eliminate unwanted or unused qualifiers entirely (from the original PRINT command), or make them illegal for certain print queues; o Ability to format files (via simple, obvious qualifiers on the PRINT command) to take advantage of any Digital DECwriter terminal features (especially the LA100 and related letter-quality printers), obviating the need to insert into the file the miriad escape-code sequences necessary to make things happen on these machines. (Currently, these include horizontal pitch control, left margin control with automatic tab alignment, font selection, print quality selection); o Ability to optimize (auto-size) horizontal pitch according to maximum line lengths for each file, and default printer settings for most common settings, but where functions all can be set explicitly, if desired; o Ability to always reset printing terminals to default conditions at the end of all printed documents; o DCL HELP file that explains all features of new PRINT command; o Ability to use original PRINT command at any time, or both. ========> [VAX83D.USS.USS]AAAREADME.TXT;2 <======== [VAX83D.USS.USS]AAAREADME.TXT USS.MAR contains an example of a user written system service. This service accesses the hardware clock registers to obtain microsecond timing statistics. TEST.FOR contains an example of how to use it. USS.MAR is based on the USSDISP routines in [SYSHLP.EXAMPLES]. Note that a similar capability was required by Richard Kayfes in order to write his excellent paper "VAX/VMS Real Timer Performance Test Results" which appeared in the May 1983 Pageswapper. Readers will note the possibility of modifying the NICR register (as was reported in a Magic Session 2 years ago). A little over 30 minutes of "dedicated" execution could be run before updating the software time (and the time update routine in VMS could be modified). This does have effects on scheduling, etc., but programs to do that have been written, and the system continued to run in timesharing mode. I mention this as a possibility, not necessarily recommended, and with no acceptance of responsibility for implementations outside my shop. Mark C. Paulk System Development Corporation Huntsville, AL 35805 ========> [VAX83D.UWASH]AAAREADME.TXT;2 <======== [VAX83D.UWASH]AAAREADME.TXT See FIXFILE.HLP for documentation about a file format translator which can convert any file format to any file format. Here is a Fortran version of XMODEM for CP/M file transfer using Ward Christensen protocol, runable on VAX/VMS V3.0 and higher. See XMODEMFOR.DOC and XMODEM.HLP . There is also a BACKUP.COM command file to ease the use of BACKUP and COPY to tapes. J. James (Jim) Belonis II Computer Cost Center Manager Physics Hall FM-15 University of Washington Seattle, Washington 98195 (206) 543-8695