========> [VAX91B.4GL_SIG]AAAREADME.TXT;1 <======== This is the 4GL SIG collection for Fall 1991. For the VAX/L&T SIG tapes, only new entries (those not appearing on previous tape collections) are included here. [4GL_SIG.DATATRIEVE.PLOTA] Two new Datatrieve plots to do histogram data as an X-Y plot rather than the bar charts supplied by DEC, from B. Z. Lederman. [4GL_SIG.GENERAL.NEWSLETTERS.*] New copies of the "Wombat Examiner and 4GL Dispatch", the SIG's newsletter, in electronic format (DCA, Interleaf, and ASCII text) from Steve Cordiviola. [4GL_SIG.RALLY.READ_RALLY] I have included V00511, "READ_RALLY", a VAX SCAN program that converts a Rally report into VAX DOCUMENT input. It has some bugs, but may still be of interest. [4GL_SIG.RALLY.VISITATION] A DCL command procedure which processes an application report to extract the visitation order of the fields in a form. It then re-organizes the report to put the groups in the visitation order. From B. Z. Lederman. Bart Z. Lederman 4GL SIG Library Representative ========> [VAX91B.ALLIED]AAAREADME.TXT;1 <======== Martin D. Lucas Allied Electronics, Inc. 7410 Pebble Drive Fort Worth, TX 76118 (817) 595-3500 UUCP: lucas@fallout.UUCP Included in my submission are three directories. The following is a brief description of the directories and their contents. As with any public domain software, please examine it thoroughly before use. All of the routines included here are pretty straight forward. I do not claim any responsibiliy for their use or misuse. I always recompile, if possible, ANY public domain software. Use at your own risk. Object code has been supplied. Although the executables supplied may run, the applications should be linked using the option files provided. BASIC.DIR Contains a small program called INQUIRE_PRINTER_STATUS. The program obtains information from a VT series terminal about an attached printer. DECFORMS.DIR Contains an example program that utilizes broadcast trapping, and dual 'sessions' to a particular FORM file. A mailbox is used in conjunction with an AST that sends the broadcast message to the form. Broadcast messages are displayed in the message area of the application. NOTE: You must at least have runtime for DECFORMS installed in order to run this application. I hope this is of use to someone. It certainly took lots of trial and error to get this working. (Coming from someone that has been trying to learn DECFORMS.) DECWINDOWS.DIR Contains two programs that are similar in nature: DEBUG_DISPLAY.COM Have you ever wanted to have a separate terminal window to use with DEBUG...instead of using the DECWINDOWS interface to DEBUG? This routine will create a DECTERM window and allocate the terminal device for use with debug. The terminal assigned to your interacive login will be used for your application. This is extremely useful when developing DECFORMS, SMG, or other applications that actively use a terminal. This program also uses a unique customization file for the window...so that screen coordinates and other settings can be saved and used for this window. Page 2 DECTERM.BAS This program creates an interactive DECTERM window. A very similar program to others I've seen. This one employs the use of a customization file unique to the node that the process is to be created on. CREATE_REMOTE.COM This command procedure is an example that can be used in a clustered environment to create a DECTERM. I submit it on three other nodes to get interactive logins on my terminal. When added to the autostart on the SESSION MANAGER, this can be a quick and easy way to establish DECTERM windows on remote nodes. ========> [VAX91B.ANTIVIRUS]AAAREADME.TXT;1 <======== This tree contains antiviral programs which have appeared for IBM PC (or similar MSDOS engines), for Amiga, and for Macintosh computers. In addition the top level contains a list of sites archiving this software. (These programs obtained from antiviral sites by Glenn Everhart). ========> [VAX91B.ATG]AAAREADME.TXT;1 <======== Submission from: Nick de Smith Voice: +44 892 511000 Applied Telematics Group Ltd PSImail: +234213300154::NICK Telematics House Fax: +44 892 515402 (G3) Tunbridge Wells, Kent Telex: 95398 TELEMA G (UK) TN1 1DJ, England Internet: NICK@NCDLAB.ULCC.AC.UK Janet: NICK@UK.AC.ULCC.NCDLAB VMSSERV: VMSSERV@NCDLAB.ULCC.AC.UK All the files in this directory tree are supplied completely without warranty of any kind. Whilst all the code is believed to be fully functional, and to work as described, niether ATG Ltd. or Nick de Smith can accept any reponsibility for the consequences of using the code contained herein. Having said that, I'm always interested in (constructive) feedback, so please let me know if there are any problems with any of it or if you have added enhancements. [.CRC] (new) Fast CRC generation code. Between 50% and 300% faster that using LIB$CRC or the macro CRC instruction for short buffers on those VAXen that emulate CRC (which is almost all). Speeds unknown (private) CRCs by another 50% or more. In MACRO32, all documentation in the source. [.MWAIT] (new) Analyse cause of RWAST, RWMBX and other wait states. This is a tool that I should have written *years* ago. It analyses the causes of wait states in fine detail, saving a lot of hard slog with SDA and manuals. Easy to understand messages are given, and the help file documents all but the most pathalogical cases of any system wait state. In MACRO32, MWAIT requires CMEXEC to run. Includes full documentation. A wonderful tool if you are having problems with MWAITs/RWAST etc. [.NICE] (new) NICE_PROGRAM.C - an example (in C) of a program that uses the NICE (Network Information and Control Exchange) protocol to talk to DECnet and other DEC networking products. NICE is on the way out, being replaced by SNMP (Simple Network Management Protocol) and CMIP (Common Management Interchange Protocol), but NICE is not bad. A generic command and reponse parser is included to make it easy to write your own callable "NCP" routines. Updated since the last release. [.PTD] (new) Access port name support for FT devices. The FTDRIVER as supplied by DEC upto and including VMS V5.5 does not support the setting of the access port name for an FTAn: (pseudo-terminal) device. This code supports the setting of access port names, and allow a process running on an FT device to determine the PID of the master process of the device creator. The code is implemeted as a VMS executive shareable image (as is most of VMS), and is thus a useful example of how to merge code with VMS. This code has been checked by DEC, and is placed on this tape at DEC's request but without any warranty from them. [.UTILS] MONMODE.COM (updated) A "MONITOR SMP" implementation written entirely in DCL - it uses no Page 2 images or code other than DCL. Rather fun, if you like that sort of thing. Its certainly an example of extraordinary DCL! Updated since last release to correct handling of non-monotonically increasing CPU numbers and processor operational modes. HOW_INVOKED.C (new) A short piece of C that determines how an image was invoked (via a CLI verb, MCR, a foreign command or RUN). It uses the undocumented SYS$CLI call. SHOW_MEMORY.C (new) A callable version of SHOW MEMORY in C which also returns other information about memory configuration on your host. Needs CMEXEC, but uses the ONLY reliable method of determining memory sizes. SHOW_MEMORY.COM (new) A DCL implementation of SHOW_MEMORY.C that works for everything except 11/780 multiport shared memory. Callable from any DCL routine. Uses no images (its all in DCL). TIME_STAMP.C (new) Example code showing a technique for determining intervals very accurately on VMS without the (considerable) overhead of using $GETTIM and $NUMTIM etc. If you are doing comms or real-time work, especially in an SMP environment, timestamping lots of packets can become VERY expensive (especially using FDDI). This method is as/more accurate and certainly a tremendous amount more efficient. Only usable for intervals up to 497 (and a bit) days. [.XE] (updated) This is a tool that provides a "MONITOR ETHERNET" type display of activity on any DEC compliant ethernet interface on a system. A range of new features are supported and a number of bugs have been fixed. Very useful for monitoring network loading. [end] ========> [VAX91B.BZL]AAAREADME.TXT;1 <======== This directory holds my personal contributions to the SIG tape. [.RDB_TO_RTF] contains a program and procedure to document an Rdb database: it writes an RTF file which contains revisable text for many PC and Macintosh word processing programs. [.TRIM] contains an improved version of the program which can do lots of processing on a file (remove leading and trailing characters, lines, do replacements, remove blank lines, and more). It can turn a directory listing into a command procedure in one pass. See the help file for more information. [.NETWORK] contains procedures which periodically get the counters for DECnet / P.S.I. lines: this version stores the data in an Rdb database to make analysis easier. [.FIXED_LENGTH] is a program which converts variable or fixed record length files to fixed length files. You can do things like turn BACKUP save sets into files which can be transmitted with XMODEM, and put it back in it's original form at the other end. Also good for getting text files down to PCs and Macintoshes. [.COMMANDS] contains some updates to example DCL files (all F$GETDVI codes, all F$FILE codes, all entry points in an image, etc.) [.SMG_IN_C contains revisions to my sample programs showing how to use SMG calls in the C programming language. Bart Z. Lederman System Resources Corp. Burlington MA ========> [VAX91B.CANADA]AAAREADME.TXT;4 <======== The following are the DECUS Canada submisions VD3:[VAX91B.CANADA.AKCOUNT]AAAREADME.FIRST;1 AKCOUNT VAX/VMS V4.x ACCOUNTING SOFTWARE Version: August 1986 Author: K. Trumbley and M. Serrer, National Research Council of Canada, Ottawa, Ontario, Canada. Operating System: VAX/VMS V4.4 Source Language: VAX-11 FORTRAN and VAX-11 MACRO The AKCOUNT software has been designed to provide a VAX computer installation running V4.x of VMS operating system software with all the necessary accounting tools to charge users for resources used. The package includes all the source code, associated help files, command procedures and installation notes. The software in SYSTEMS LABORATORY of NRC has been set up as a batch job to execute every Friday night. When the job runs, the information from the system accounting file, plus listing files from DISKQUOTA and AUTHORIZE are merged together and written to a file "SYS$ACCOUNT:AKCOUNT.TOT". A report generator reads this file and creates detailed or summary type printouts. The latest addition to the AKCOUNT software package is a repair utility. This utility enables the system manager to repair, (both automatically and interactively) and edit records in the AKCOUNT.TOT file. This version of the AKCOUNT software has been upgraded from the version submitted to the DECUS Library, (Date submitted to DECUS -- April 1985), to work on VMS version 4.x systems. Documentation on magnetic media. Ken Trumbley, Martin Serrer (613) 993-9262 National Research Council, Division of Mechanical Engineering, Systems Laboratory, M3, Montreal Road, Ottawa, Ontario K1A 0R6 VD3:[VAX91B.CANADA.HP_CALC]AAAREADME.FIRST;1 Page 2 A scientific calculator for the VAXStation!! HP_CALCULATOR is a full-functioned scientific calculator for use on any VAXStation running VMS. It has been tested on a VAXStation-II running VMS version 4.5 and VWS version 3.1, and also on a (monochrome) VAXStation-2000. The program was written in VAX "C", but the executable file should run on any VMS system because the run-time library is now distributed to everyone. The program makes a deliberate attempt to mimic the operation of the HP10c pocket calculator (exceptions noted below). This was done so that ANYONE who was familiar with the real calculator could make use of the VAXStation version without any manual or training. Attempts to add extra keys, alphanumeric display, etc. were avoided. If these features are what you require, then use BASIC. The current version does not support keystroke programming. It should be easy to add this in the future, but I am supposed to do some real work as well as 'coffee break' programming. If a key associated with programming is struck (by mistake or because you don't believe me) the calculator program will do nothing more dangerous then terminate numeric data entry, or enable stack lift, or reset the error display, or so on. Definitions of the terms found in the last sentence can be found in the manual for the HP10c. Now for the good stuff. To use the calculator you just have to type RUN HP_CALCULATOR. The program will create a window which contains the calculator keys, and another window which will be used as the calculator display. Two windows are used so that you can position them independently anywhere on the screen (also it was also easier to program). The VAXStation keyboard is attached the the calculator (more on this in a moment), the register display(s) are reset, and the program is ready to use. Dan F. Johnston Div. of Mechanical Engineering, Bldg M-3 National Research Council of Canada Montreal Road Campus Ottawa, Ontario CANADA K1A 0R6 VD3:[VAX91B.CANADA.LEADER91]AAAREADME.FIRST;1 ========> [LEADER91.BYTLUG.QWATCH]AAAREADME.TXT;1 <======== This program is used to watch a process' quota usage. When a valid process id specified, the system will display that process' quotas along with a few other details such as the process state, I/O counts and the image currently being run. The program can be built using the MMS description file DESCRIP.MMS. A C compiler is required. [DECUS Canada Librarian's note: On the VAXstation where I put together Page 3 these submissions, there was no C compiler. So, if you wish to run this program, but don't have a C compiler, please ask me. I should be able to send you a C-compiled .OBJ or a .EXE file from work. My address is: A. Mahendra Rajah DECUS Canada VAX Tape Librarian Dept of Computing Services University of Regina Regina, Sask. Phone: (306) 585-4496 e-mail: Mahendra @ Meena.CC.URegina.CA (on Internet) ] [Librarian note: I have a C compiler and have supplied compiled files for QWatch. Glenn Everhart.] ========> [LEADER91.DDERRICK.COMS]AAAREADME.TXT;1 <======== This directory contains several useful utilities in DCL: ALLMAIL.COM - Runs ALLMAIL.EXE to check for pending ALL-IN-1 mail messages. AUTHORIZE.COM - Changes default to Sys$System, runs Authorize and changes default back to where we started. BIGDIFF.COM - DIFFERENCEs between all files in this directory and another directory specified in P1. DAYLIGHT_SAVINGS.COM - sets the time for daylight savings and back again. DISKS.COM - Shows or watches disk space. DQ.COM - shows disk quota with totals. EPIPE.COM - pipe with existing filespec list IMS.COM - Manages the different inventory files. It looks almost like All-In-1. LPIPE.COM - linear pipe MAKEMODIFY.COM - makes a command file to modify users that have been added to the UAF MAKEREMOVE.COM - makes a command file to remove users from the UAF MEMORY.COM - show or watch the "interesting" memory stats Page 4 MENULOGIN.COM - Menu for interactive logins. NODE.COM - converts various forms of decnet node numbers PHN.COM - keep track of long distance phone calls PIPE.COM - command p1 applied to all files in p2 PIPES.COM - pipe by search (not directory) PNAME.FOR - subroutine returns the username and the length of the username of the current process PRIV.COM - set command promt to include new privs RECEIVEPRINT.COM - network print receiver (see sendprint) SAME.COM - This is a difference command that works on sorted files. It will list two files side by side showing the records that are the same. It gets used a lot in merging UAFs to form a cluster. Carefull!! it doesn't always get the last record right SENDPRINT.COM - poorman's DQS. Used with receiveprint.com SORT_US.COM - show users sorted by node TAPES.COM - watch tape drives; like disks.com WHERE.COM - where are we (or another PID) WORKSET.COM - Displays working set information. ZERODISK.COM - fully zero outs a disk that is being traded in ========> [LEADER91.DDERRICK.TPU.ADAM]AAAREADME.TXT;2 <======== ADAM stands for Assistant for Definition and Modification and is an extension to the VMS EVE editor. Its purpose is to make developing programs in to the OCRS standard an easier undertaking. Although several of the functions are designed expressly for the FORTRAN programming environment, ADAM has been developed with the ability to apply all but its variable and subroutine definition functions to DCL and MACRO code as well. ========> [LEADER91.GOLDLUG]AAAREADME.TXT;5 <======== Program : COOKIE.MAR This program produces a random fortune cookie message. The messages are kept in an indexed file. COOKIE.MAR calls a program called RAND which generates a random number between 1 and the maximum number of Page 5 messages in the COOKIE.DAT file. The random number is used as a key to the indexed file and the record(s) with this key are displayed on the terminal. The COOKIE.DAT file is an indexed file with a maximum record length of 84. The first 4 bytes are the key and are of the format 0000 to 9999. The last 80 bytes are the fortune cookie message. A sample message might look like: 0020 This is a two line 0020 fortune cookie message. Program : RAND.MAR This program uses the date and time as a seed to generate a random number between the two values supplied to it. It is used by COOKIE.MAR. Program : PASSCHK.MAR This program verifies whether a password supplied by a user is valid. It is passed a username and password. It calls SYS$GETUAI to get the hashed password, the hashing algorithm, and the salt for that particular username. It then hashes the supplied password using SYS$HASH_PASSWORD, passing it the algorithm and salt. The two hashed passwords are compared (the one from SYS$GETUAI and the one from SYS$HASH_PWD). If they are equal the supplied password is valid. A value of 1 (success) or 2 (failure) is returned. Program : TESTPWD.COB This is a sample program which calls PASSCHK to verify a password. When the program is run a username and password are prompted for. They are converted to upper case and passed to PASSCHK. The return code is checked and a message is displayed indicating whether the password is valid or not. INSTALL_SPECIAL.COM & MODEM.COM There are two unique parts to INSTALL_SPECIAL.COM. It is recommended that if you are going to use these sections of code, that they be run in your SYSTARTUP.COM just so that you can get consistent LTA numbers. The first shows how to install an outdialing modem (DF224) onto the network. It assumes you are installing it onto port LTA9:, and that on the Terminal Server, you have set the port name to 623_5803. Once this command procedure has been run, you access the modem using MODEM.COM which checks whether or not someone is dialed out or in on Page 6 the modem, and/or allows you to use the modem appropriately. The second portion of INSTALL_SPECIAL.COM shows how to attach an InterMEC Bar Code printer onto your system. It assumes that you are installing onto port LTA6:, and that the Terminal Server knows this port as BAR_TONY. Once it's there, you have to issue a print command, specifying which print queue, and forms. You are on your own for the internal formats of the Bar Code Tickets. PRINT_QUEUE_MANAGER.COM Simple command procedure which allows our operations staff to change forms on printers. It takes care of all the more detailed internals. We find it convenient to have all our operators define a symbol in their LOGIN.COM specifying the name of the printer which we mount various type of forms on most of the time. In our case this is CAM_PRINTER_2. ABNORMAL_CONDITIONS.COM Updated Version. Used to report problems, and then go back in and modify the report as new information becomes available. Some minor changes have been made over last years version. Assumptions are that you have a logical defined pointing to where ACRs are to live; and you should have at least a null file called ACR:ACR_SUMMARY.FILE, and the procedure will create another called ACR:ACR_SEQUENCE.FILE. After that, these two are updated by the routine. ========> [LEADER91.NAPLUG.BACKUP]AAAREADME.TXT;4 <======== The included files comprise a menu interface for a captive BACKUP account to be used for unattended system backups. The operator has the ability to initialize backup media, and perform daily, weekly or monthly backups which will be run in batch at the end of the day, without operator intervention. The current configuration will perform daily backups to TK50(TK70) and weekly and monthly backups will go to an Exabyte. The primary prerequisite for this application is the creation of a priviledged BACKUP account and modification of the command procedures to suit your own installation. This is far from perfect, but it should provide some ideas. I would love to see any improvements which might be made. John Hale NAPLUG Page 7 ========> [LEADER91.NAPLUG.OPERATOR]AAAREADME.TXT;2 <======== This saveset comprises a menu driven interface to normal(for us :-)) operator functions. These include the management of user processes, queues, 3780 lines, and plotting. You should probably ignore the plotter and comm functions, but the rest might prove to be useful (or not :-( ). Most of the command procedures are documented and hopefully the code is fairly readable. Thanks go out to Jeff Daley and Ron Rennick who were responsible for dreaming up and writing this utility and it's cousin the backup utility. John Hale NAPLUG ========> [LEADER91.OMNILUG]AAAREADME.TXT;1 <======== Paul T's DECUS Library release - VAX/VMS software September 23, 1991 In seperate directories you will find the following programs, in both executables and source. They were developed from scratch, with minor contributions from outside sources ( books ), which are credited in the source code. The programs were developed on VAX's that belonged to the companies I worked for but on my time, and so I'm sure no one would make any claim to them. I release them for any use, asking only that credit be given were it is due, and changes should be noted. ZAPPER was developed in VAX BASIC, and TETRIS in VAX C. I haven't run ZAPPER much over the last couple of years, but I'm confident it is reliable. The documenation for it is fairly clear. TETRIS is pretty simple and has been used by a number of different users, and no one has reported any bugs, so I'm quite confident that it is okay. Info about me is: Paul Thomsen School Board Information Technology Branch, Ontario Ministry of Education 8th Floor - 480 University Avenue Toronto, Ontario M5G 1V2 (416) 971-4765 (w) (416) 821-9872 (h) (416) 971-6511 (fax) ========> [LEADER91.TRILUG.DIR_STACKS]AAAREADME.TXT;1 <======== Program ID: DIR_STACKS D R A F T Operating System: VAX/VMS V5.x Source Language : Cobol v3.4-49 Page 8 Key Words: DIRECTORY, STACK, UTILITY, COBOL Submitted by: Jim McDowall,Board of Education for the City of Windsor 451 Park Street West P.O. Box 210 Windsor, Ontario., Canada N9A 6K1 (519)255.3348 Abstract: DIR_STACKS is used to change a process' device & directory default. The program will maintain a stack of defaults set and allow the user to recall this stack and set default to any of the values stored. A maximum of 50 stack positions can be maintained. The user can control the the number of stack positions. It will not allow default setting to any device or directory which does NOT exist or that the process does not have access to because of privilege or protection settings. A process can set default to any user's SYS$LOGIN directory providing the process has the correct privilege and access to said directory. System managers can create users' SYS$LOGIN directorys if one does not exists without having to know the dev:[dir] specification. Knowing the username is all that is needed. Print DIR_SATCKS.DOC for more details and procedure to install DIR_STACKS. ========> [LEADER91.TRILUG.SCREENCTL]AAAREADME.TXT;2 <======== Program ID : SCREENCTL.EXE Written by : Jim McDowall (519)255.3348 Board of Education for the City of Windsor 451 PArk St. W. Box 210 Windsor, Ontario N9A 6K1 Function :This program is used to perform a range of terminal screen attributes and characteristics functions. Such things as drawing lines, boxes, clearing parts or all of the screen, getting user input, and turning on and off the local echo. Listed on the following pages are the various functions performed by this program. Being an executable module, the time required to perform these functions is far less than the time required by a DCL command procedure that does the same task. VD3:[VAX91B.CANADA.LEADER91.BYTLUG]AAAREADME.FIRST;1 This program is used to watch a process' quota usage. When a valid process id specified, the system will display that process' quotas along with a few other details such as the process state, I/O counts and the image currently being run. The program can be built using the MMS description file DESCRIP.MMS. A C compiler is required. [DECUS Canada Librarian's note: On the VAXstation where I put together these submissions, there was no C compiler. So, if you wish to run this program, but don't have a C compiler, please ask me. I should be able to send you a C-compiled .OBJ or a .EXE file from work. My address is: Page 9 A. Mahendra Rajah DECUS Canada VAX Tape Librarian Dept of Computing Services University of Regina Regina, Sask. Phone: (306) 585-4496 e-mail: Mahendra @ Meena.CC.URegina.CA (on Internet) ] VD3:[VAX91B.CANADA.LEADER91.DDERRICK.COMS]AAAREADME.FIRST;1 This directory contains several useful utilities in DCL: ALLMAIL.COM - Runs ALLMAIL.EXE to check for pending ALL-IN-1 mail messages. AUTHORIZE.COM - Changes default to Sys$System, runs Authorize and changes default back to where we started. BIGDIFF.COM - DIFFERENCEs between all files in this directory and another directory specified in P1. DAYLIGHT_SAVINGS.COM - sets the time for daylight savings and back again. DISKS.COM - Shows or watches disk space. DQ.COM - shows disk quota with totals. EPIPE.COM - pipe with existing filespec list IMS.COM - Manages the different inventory files. It looks almost like All-In-1. LPIPE.COM - linear pipe MAKEMODIFY.COM - makes a command file to modify users that have been added to the UAF MAKEREMOVE.COM - makes a command file to remove users from the UAF MEMORY.COM - show or watch the "interesting" memory stats MENULOGIN.COM - Menu for interactive logins. NODE.COM - converts various forms of decnet node numbers PHN.COM - keep track of long distance phone calls PIPE.COM - command p1 applied to all files in p2 PIPES.COM - pipe by search (not directory) Page 10 PNAME.FOR - subroutine returns the username and the length of the username of the current process PRIV.COM - set command promt to include new privs RECEIVEPRINT.COM - network print receiver (see sendprint) SAME.COM - This is a difference command that works on sorted files. It will list two files side by side showing the records that are the same. It gets used a lot in merging UAFs to form a cluster. Carefull!! it doesn't always get the last record right SENDPRINT.COM - poorman's DQS. Used with receiveprint.com SORT_US.COM - show users sorted by node TAPES.COM - watch tape drives; like disks.com WHERE.COM - where are we (or another PID) WORKSET.COM - Displays working set information. ZERODISK.COM - fully zero outs a disk that is being traded in VD3:[VAX91B.CANADA.LEADER91.DDERRICK.TPU.ADAM]AAAREADME.FIRST;1 ADAM stands for Assistant for Definition and Modification and is an extension to the VMS EVE editor. Its purpose is to make developing programs in to the OCRS standard an easier undertaking. Although several of the functions are designed expressly for the FORTRAN programming environment, ADAM has been developed with the ability to apply all but its variable and subroutine definition functions to DCL and MACRO code as well. VD3:[VAX91B.CANADA.LEADER91.NAPLUG.BACKUP]AAAREADME.FIRST;1 The included files comprise a menu interface for a captive BACKUP account to be used for unattended system backups. The operator has the ability to initialize backup media, and perform daily, weekly or monthly backups which will be run in batch at the end of the day, without operator intervention. The current configuration will perform daily backups to TK50(TK70) and weekly and monthly backups will go to an Exabyte. The primary prerequisite for this application is the creation of a priviledged BACKUP account and modification of the command procedures to suit your own installation. This is far from perfect, but it should provide some ideas. I would love to see any improvements which might be made. John Hale NAPLUG Page 11 VD3:[VAX91B.CANADA.LEADER91.NAPLUG.OPERATOR]AAAREADME.FIRST;1 This saveset comprises a menu driven interface to normal(for us :-)) operator functions. These include the management of user processes, queues, 3780 lines, and plotting. You should probably ignore the plotter and comm functions, but the rest might prove to be useful (or not :-( ). Most of the command procedures are documented and hopefully the code is fairly readable. Thanks go out to Jeff Daley and Ron Rennick who were responsible for dreaming up and writing this utility and it's cousin the backup utility. John Hale NAPLUG VD3:[VAX91B.CANADA.OTT91.EARLUG]AAAREADME.FIRST;1 This is a pair co-operating tasks for setting the time of day on an RSX node from the system clock on a VMS system, using DECNET. Of course, most people who want to do this have already figured out how. My excuse, is that I wanted to figure out how too. The VMS side uses non-transparent DECNET. When the RSX system requests a connection, the task on the VMS system rejects the connection request, but returns the time in the 8 words of "reason for rejection" received by the RSX task There is much less overhead involved when no actual connection is created. Of course, since you only do this once in a blue moon, nobody really cares about efficiency, but I wanted to figure out how to do this. I found it difficult to find this information in te VMS manual set (it is there), so perhaps referring to this code will assist others who are attempting something similar. Requirements: The RSX node which makes the request must have an ALIAS defined for MCLOCK to refer to the VMS node running SENDTIME. Assuming that the VMS node was ARTHUR, you would use a command line similar to the following: NCP SET ALIAS MCLOCK DEST ARTHUR Then, simply run GTIM as in: RUN GTIM GTIM exits with success status if it works, otherwise it exits with a status of severe error. If SENDTIME.COM and SENDTIME.EXE are in the default directory of the default DECNET account (usually SYS$SPECIFIC:[DECNET]), then nothing else would be requiired for this to work at boot time. (That is the way that we run it in our shop). Page 12 If you have proxies enabled on your system, and you desire to run this after the RSX system is running, it will be necessary to either provide a proxy to the account and directory where SENDTIME.* resides, or provide more information in the alias MCLOCK. If you place the SENDTIME.* files in a directory other than that of the default DECNET account, you will have to create a proxy or alias which provides access to the files. Note that at RSX boot time, there is no username, and therefore, a proxy will not work. Rob Brown G. Michaels Consulting Ltd 11211 76th Avenue NW Edmonton, Alberta CANADA T6G 0K2 (403)438-2101 FAX 437-3367 VD3:[VAX91B.CANADA.OTT91.GOLDLUG]AAAREADME.FIRST;1 [.GOLDLUG.BILLING] VAX/VMS Billing System This system suppliments the existing system accounting and disk usage facilities provided by the VAX/VMS operating system. It provides for the charging of connect time, CPU time, and printing to multiple accounts by the same user during a single interactive, batch or remote session. In addition, disk usage is charged by account, rather than by user identification code. Detailed documentation is provided on the functional components and the data structures used by the system. Please view or print BILLING_SYSTEM.MEM for more information. This DECUS Canada Submission is via GOLDlug Users Group, and from Member: Equitable Life Insurance Company of Canada Technical Services Department (519) 886-5110 October 1990 This is provided "AS-IS" with NO warranty expressed or implied. [.GOLDLUG.GRAPHICS] VT320 GRAPHICS CONVERSION ************************* To convert a source file into VT320 graphics set; @GRAPH320 Page 13 You will be prompted for the source file name and whether you want to view the graphic. The com will run GRAP320.EXE, which is the progam that does the actual conversion. The target file name will be the same as the source file name with a '_320' extension appended. To see this graphic issue a TYPE on the file. The only character in the source file that will be converted is the ampersand (@) character. All other characters are ignored. Sample source and target graphics are provided with this submission. The program is quick, the code isn't fancy (lots of room to be cleaned up), but it works. _____ This DECUS Canada Submission is via GOLDlug Users Group, and from Member: Equitable Life Insurance Company of Canada Technical Services Department (519) 886-5110 October 1990 This is provided "AS-IS" with NO warranty expressed or implied. [.GOLDLUG.MISC] Miscellaneous Submissions ABNORMAL_CONDITIONS.COM -- A specialized command procedure which we use for reporting problems within the company. It generates a custom report, and the procedure has the ability to go back in and modify this report. Requires no special privleges, but you have to create a directory for ACRs, and set up a system logical pointing to it. MAILER.COM -- A command procedure which MAIL$KEYDEF.INI -- The Initalization file for MAILER.COM MAIL.RNO & MAIL.MEM -- A user's guide into the MAIL system. Provides an overview of some of the major functions of MAIL. --------------------------------------------------------------------------- This DECUS Canada Submission is via GOLDlug Users Group, and from Member: Canadian General-Tower Limited 52 Middleton Street, Cambridge, Ontario (519) 623-1630 October 1990 This is provided "AS-IS" with NO warranty expressed or implied. VD3:[VAX91B.CANADA.OTT91.GOLDLUG.BILLING]AAAREADME.FIRST;1 VAX/VMS Billing System Page 14 ********************** This system suppliments the existing system accounting and disk usage facilities provided by the VAX/VMS operating system. It provides for the charging of connect time, CPU time, and printing to multiple accounts by the same user during a single interactive, batch or remote session. In addition, disk usage is charged by account, rather than by user identification code. Detailed documentation is provided on the functional components and the data structures used by the system. Please view or print BILLING_SYSTEM.MEM for more information. This DECUS Canada Submission is via GOLDlug Users Group, and from Member: Equitable Life Insurance Company of Canada Technical Services Department (519) 886-5110 October 1990 This is provided "AS-IS" with NO warranty expressed or implied. VD3:[VAX91B.CANADA.OTT91.GOLDLUG.GRAPHICS]AAAREADME.FIRST;1 VT320 GRAPHICS CONVERSION ************************* To convert a source file into VT320 graphics set; @GRAPH320 You will be prompted for the source file name and whether you want to view the graphic. The com will run GRAP320.EXE, which is the progam that does the actual conversion. The target file name will be the same as the source file name with a '_320' extension appended. To see this graphic issue a TYPE on the file. The only character in the source file that will be converted is the ampersand (@) character. All other characters are ignored. Sample source and target graphics are provided with this submission. The program is quick, the code isn't fancy (lots of room to be cleaned up), but it works. _____ This DECUS Canada Submission is via GOLDlug Users Group, and from Member: Equitable Life Insurance Company of Canada Technical Services Department (519) 886-5110 October 1990 This is provided "AS-IS" with NO warranty expressed or implied. VD3:[VAX91B.CANADA.OTT91.GOLDLUG.MISC]AAAREADME.FIRST;1 Page 15 Miscellaneous Submissions ABNORMAL_CONDITIONS.COM -- A specialized command procedure which we use for reporting problems within the company. It generates a custom report, and the procedure has the ability to go back in and modify this report. Requires no special privleges, but you have to create a directory for ACRs, and set up a system logical pointing to it. MAILER.COM -- A command procedure which MAIL$KEYDEF.INI -- The Initalization file for MAILER.COM MAIL.RNO & MAIL.MEM -- A user's guide into the MAIL system. Provides an overview of some of the major functions of MAIL. --------------------------------------------------------------------------- This DECUS Canada Submission is via GOLDlug Users Group, and from Member: Canadian General-Tower Limited 52 Middleton Street, Cambridge, Ontario (519) 623-1630 October 1990 This is provided "AS-IS" with NO warranty expressed or implied. VD3:[VAX91B.CANADA.OTT91.HAMLUG]AAAREADME.FIRST;1 This directory tree contain submissions from members of the HAMLUG. SUS --- More information than the SHOW USERS command. Author: Craig Slattery (416) 335-2000 Define_Help_Lib --------------- by Bob Langford, Fisheries and Oceans This procedure checks for currently defined HLP$LIBRARY_* logicals and assigns P1 parameter as the next available Library number. The logical table can also be defined by specifying the P2 parameter. Check & Mount Disks (CHKMOU_DISK) ---------------------------------- by Keith Weaver, Fisheries and Oceans This command file is used to check the status of all the disks in the cluster and mount any that need to be mounted. Depending on the state the disk may have to be dismounted prior to being mounted. Page 16 It is relatively generic except for the specific disk labels located at the bottom of the command file in the LIST_OF_DISK_LABELS subroutine. The procedure displays the status of the disks and then is set into verify mode while it dismounts and mounts disks as required. The procedure requires SYSNAM privilege and assigns it to the process at the beginning and removes the privilege upon completion. Check_Login (CHK_LOGIN) ----------------------- by Keith Weaver, Fisheries and Oceans This command file generates a user list using SHOW USER/OUT=file and parses the first few columns and the PIDs from the list. It then uses the pid and f$getjpi to get the Login time and displays both to the screen. You must have WORLD privilege, which the command file will assign for the process and remove on termination. No error checking is done. Example: VAX/VMS User Processes at 31-AUG-1990 17:01:14.44 Total number of users = 6, number of processes = 8 Username Node Process Name PID Login Time BURWS2 _WSA1: 20E00231 31-AUG-1990 15:55:00.24 CORKUM BURCLU CORKUM 2020147A 31-AUG-1990 15:03:47.82 ELNER BURWS2 _LTA58: 20E00230 31-AUG-1990 12:01:50.72 JOHANNSSON BURCLU JOHANNSSON 2020179C 31-AUG-1990 16:18:46.34 TINNEY BURCAH TINNEY 2060051D 29-AUG-1990 15:44:53.12 WEAVER BURCOM WEAVER 210002AD 31-AUG-1990 10:02:34.17 WEAVER BURWS2 WEAVER 20E00232 31-AUG-1990 16:51:29.72 WEAVER BURWS2 WEAVER_1 20E00233 31-AUG-1990 17:01:10.27 Copynode2node (CNN) -------------------- by Keith Weaver, Fisheries and Oceans This command file allows you to copy between DECnet nodes where proxies are not set up and you must use a username and password in the copy command. The terminal is set to NOECHO while prompting for the password, thus allowing for a little security in that your passwords will not be displayed to the screen. Username and Password specifications are prompted for if nodenames are specified in either the P1 or P2 variable. The current process name is used as the default Username. If P2 or P1 and P2 are missing they are prompted for (similar to the COPY command). Example: cnn [weaver]login.com OTTCHS::NL: (OTTCHS) Username [WEAVER_2]: SYSTEM (OTTCHS) Password: Copying... Page 17 Day_of_Year (DOY) ------------------ by Keith Weaver, Fisheries and Oceans This command file retrieves the system date and calculates the day of the year. It is stored as a logical in the System logical name table if the SYSTEM runs the command file, or in the process logical name table if any other users run it. We have been calling this variable the Julian day (which is incorrect), and thus assigning date and time values in a JJJ HH:MM:SS.SS format. That is the reason for calling the logical "JJJ". ShowNet ------- Author: Steve LaRocque, Southam Computer Group, Hamilton, Ont, Canada This simple command procedure allows DECnet End-nodes to do a "Show Network" command on their router node. It uses DECnet Task-to-Task communication to accomplish this. To install: On the router node: Copy the SHOWNET.COM command procedure into SYS$MANAGER (it only needs World:Execute access) NCP> SET OBJECT SHOWNET FILE SYS$MANAGER:SHOWNET.COM NCP> DEFINE OBJECT SHOWNET FILE SYS$MANAGER:SHOWNET.COM (you may also want to create a network object server UAF account if you don't want to use a default non-privileged DECnet account) On the End-node: Create a symbol for easy access to the procedure in your LOGIN or SYSLOGIN procedure: $ NET :== @SYS$MANAGER:SHOWNET You can now use the command "NET" to display the network. This command will also work at the Router node itself (it checks for this). -- NOTE : This software is distributed free of any license charges on the understanding that no warranty is implied with this software, nor is any liability incurred by the original author nor by any person who has modified the file(s), nor any by person who permits a copy of the software to be made Modifications: -------------- 1-Aug-1990 Brad L. Tinney I added a translation from Area and Node numbers to actual sites and machine descriptions. This should provide most of the information required by the network manager (missing the hops and cost), but finally Page 18 makes some sense to the general user who wants to know why he or she can't send mail to a remote site. Thanks to Bob Johns, the DECnet task to task stuff works by putting in the command NUMBER 0 in the NCP command line. To configure your site into this procedure, just add definitions of your local nodes to the num2name subroutine. OS/2 Public Domain Desktop Utilities ==================================== The programs in the following 3 directories have been downloaded from CompuServe. These programs have been put into the public domain by the original authors. [DESKTOP] - this program (DESKPIC) provides several interesting features for your OS/2 v1.2 desktop, namely: - loads .BMP & .GIF graphics as a presentation mamager background - provides many animated screen savers - provides serveral animated presentation manager backgrounds, including an animated aquarium [EXTANI] - these files show how to develop your own animated presentation manager backgrounds for DESKPIC [EYECON] - this is an interesting & fun program that creates a presentation manager icon that track your mouse movements. try it you'l like it. John Novak HAMLUG Newsletter Editor NewMailDir ---------- by Steve LaRocque, Southam Computer Group This utility, designed to be run from SYLOGIN, will produce a list of new mail messages for the user much like Mail's DIRECTORY function. Page 19 It selects all the messages in the NEWMAIL folder rather than going by the new mail count. If there are no new messages or no mail file, the program prints nothing. If new mail messages exist, they are printed in the following format: New Mail Summary You have 3 new mail messages Num Date From Subject -------------------------------------------------------------------------------- 1 1-JUL-1990 VNCVR::STEVE Re: Proposed change to Cluster 2 2-JUL-1990 QUECTY::ANNETTE Layout for new WAN connections 3 2-JUL-1990 HALFAX::SYSTEM Re: DECnet to Calgary (stability) To install the utility, place the program someplace accessible, like Sys$System, and add the following lines to the interactive section of your SYLOGIN: $ Define/User Sys$Input Sys$Command $ Run Sys$System:NewMailDir If you have a lot of logins, you may want to Install it /Open/Header/Shared for faster access. -- NOTE : This software is distributed free of any license charges on the understanding that no warranty is implied with this software, nor is any liability incurred by the original author nor by any person who has modified the file(s), nor any by person who permits a copy of the software to be made Action Keys (Set Keys) ---------------------- Process Permanent Programmable Action Keys by Lee K Gleason From: VAX Professional, February, 1987 This package, described in detail in _VAX Professional_, is an excellent example of setting up "action keys" where, for example, Control-F will display the names of all the files the process currently has open, or toggle the procedure verify bit. Many thanks to the author for sharing his program with us and to _VAX Professional_ for providing the VAX community with gems like this. SQUEEZER - A Memory Economizer ------------------------------ This utility won first prize in the _VAX Professional_ "Call for Papers" on Performance and was published in the December 1989 issue of that journal. Page 20 Many thanks to the author, Frank Dolatshahi for sharing this excellent program with the general public! This program forces a flush of the working set of idle processes on the system, which can greatly increase your free list size. Full details can be found in the accompanying article in _VAX Professional_. TEXT FILE : READ_ME.1ST Author: Frank Dolatshai Date: 8/24/89 The explanation of Squeezer's parts : ******* Please Note: Squeezer in written to run under VMS 5.0 or higher versions. SQUZ_STRT.COM : This is the start up command procedure. When invoked it checks the size of the data file generated by Squeezer, to make sure that the file is not greater than 200 blocks. If it is the file is deleted. SQUZ_STRT.COM accepts one parameter for the detached process name(the default name is 'Squeeze!!'). It then sets the value for a switch logical ,called SQZ_RUN, to 'OK' in LNM$SYSTEM_TABLE. (OK will be in upper case), and starts a detached process. This procedure can be invoked from the system startup file. It assumes that all of required files are in SYS$SYSDEVICE:[MEMPURGE]. (format of passing a parameter to SQUZ_STRT is $@SQUZ_STRT procname ) SQUZ_STOP.COM : The shutdown procedure assigns a different value than 'OK' to SQZ_RUN. Once you run this procedure the Squeezer will shutdown within the next run cycle. Please note that you must be in a privileged account. IT IS IMPORTANT TO USE THIS PROCEDURE TO SHUTDOWN SQUEEZER RATHER THAN JUST USING 'STOP/ID', THIS WAY SQUEEZER WILL SHUTDOWN PROPERLY AND WILL DEALLOCATE ITS NONPAGED SCRATCH AREA. SQUEEZER.MAR: This is the main part and runs as a detached process. While the program is executing, it checks to make sure that it is operating during the requested operation time. Squeezer checks the logical SQZ_RUN at each run cycle. If the value of SQZ_RUN is set to 'OK' Squeezer continuous to run, otherwise it shuts itself down. When Squeezer approaches the end of the daily operation time it produces a report consisting the number of released pages per hour, and then hibernates until the next day. Squeezer also produces the same kind of report before shutting down. The statistics produced by this program are written to a file with the format of {node-name}_SQUZ.DAT, which will reside in the directory SYS$SYSDEVICE:[MEMPURGE]. Thus it is important to create this directory before starting. Squeezer will append the data to this file. If the file does not exist it is created by Squeezer. Squeezer deallocates the nonpaged memory allocated during the Page 21 initialization, in case of any errors or if the process shutdown is requested. If any error is detected, the message will be written to a file called PURGE.LOG that explains the error code and/or the location within the program. Following are the error codes: 1110 - The AST routine is not present. (Be sure you have executed SQUZ_AST.COM and rebooted the system without any problem.). 2220 - There was not enough nonpaged memory for squeezer to use as scratch area. (If this happens, check your NPAGEDYN parameter and make sure you have enough free space. Usually this error should not happen since squeezer uses very little nonpaged memory.). 3330 - There was a problem with deallocation of the memory during the process shutdown, or a non-kernel error (this error usually indicates problems with system. Check your system for any memory or cpu problems.) SQUZ_PRM.MAR : This is the only part that you should need to change. It includes the input parameters for the program. These parameters are, CREEP (integer-creep factor), PERIOD (ascii-activation intervals, this value should be a multiple of 5), A_START (an absolute ascii time format for start time), and A_STOP (an absolute ascii time format for stop time). SQUZ_SETUP.COM : This is a command procedure that will compile and link the proper components to produce the main image file, SQUEEZER.EXE. Invoke this procedure every time after you modify SQUZ_PRM.MAR. SQUZ_AST.MAR : This is the AST routine that has the $PURGWS service for address ranges ^X00000000 to ^XFFFFFFFF. SQUZ_AST.COM : This is the procedure that compiles, links, and prepares the AST routine to be loaded into the memory as an executive image. After you run this procedure successfully, you must reboot the system in order to load the AST routine into the memory. INSTALL.TXT : This text file has the steps to install squeezer on your system. SYS$LOCAL.COM ------------- ** NOTE: THE PROCEDURE CONTAINED HEREIN IS NOT RECOGNIZED BY DEC AND IS LIKELY "NOT RECOMMENDED". PLEASE READ AND UNDERSTAND THE PROCEDURES, REQUIREMENTS AND IMPLICATIONS OF THIS PROGRAM BEFORE INSTALLING IT AS THE AUTHOR PROVIDES NO WARRANTY/GUARANTY. ** This procedure, when executed as part of your startup, will install add another Page 22 root to your SYS$SYSROOT search list. This is intended for use on MI/LAV Clusters where there exists sufficient local disk capacity on the satellite to store SYS$SYSTEM and SYS$LIBRARY and SYS$MESSAGE files (presumably on the same disk as your local page and swap files). This is done to increase performance by reducing the amount of MSCP-served system-disk based image activations. In development or general-use environments there tends to be a fair amount of this. Dedicated single-application machines likely have fewer of these, however, and so won't benifit as much. Basically, what we want to do is change the SYS$SYSROOT logical search list from SYS$SPECIFIC,SYS$COMMON to SYS$SPECIFIC,SYS$LOCAL,SYS$COMMON. This means that when attempting to activate an image, the system will first look in SYS$SYSROOT (MSCP-Served), and normally not find the image, then in SYS$LOCAL (local to the satellite) and find the image, load it and activate it. True,this means that it still first -looks- at the MSCP-served disk, but by placing the SYS$LOCAL in the middle, instead of the front, maintainance is simpler. You know that the [SYSx.SYSEXE] on the Master node's system disk is indeed the first place looked by the software. It also helps when installing new software - some Digital programs assume that the [SYSx.SYSEXE] is the first place looked and the SYS$COMMON:[SYSEXE] is the last. You will want to run this as early as possible in your Startup procedure so that layered software starting up will use the local copy rather than the remote copy in Sys$Common. It is up to YOU to set up and keep up-to-date your SYS$LOCAL directory structure. This means when you update SYS$COMMON files which are duplicated in SYS$LOCAL (such as a new VMS version), you must update your SYS$LOCAL files. The easiest way of doing this is to simply BACKUP the files from SYS$COMMON to SYS$LOCAL. What we do here is this: DISK$LOCALSYS:[LOCALSYS.SYSEXE] <-contains a copy of SYS$COMMON:[SYSEXE]*.EXE DISK$LOCALSYS:[LOCALSYS.SYSLIB] <-contains a copy of SYS$COMMON:[SYSLIB]*.EXE DISK$LOCALSYS:[LOCALSYS.SYSLIB] <-contains a copy of SYS$COMMON:[SYSLIB]*.EXE We are only interested in the .EXE files as they are generally the most frequently accessed files. You should be able to use BACKUP/IGNORE=INTERLOCK to move them over. When you call this procedure from startup, you must provide P1 as the value for SYS$LOCAL. In the case above, this might be expressed as: @Sys$Startup:Sys$Local.Com $2$DUA1:[LOCALSYS.] When the procedure runs, it first defines the new logical (SYS$LOCAL) and then redefines the SYS$SYSROOT search list as SYS$SPECIFIC, SYS$LOCAL and SYS$COMMON. Unfortunately, by the time this procedure runs, most system images that are going to be installed -are- already installed. So the procedure then goes on Page 23 to INSTALL> REPLACE all the images listed in SYS$MANAGER:VMSIMAGES.DAT. If you make modifications/enhancements to this program, feel free to do so. -- NOTE : This software is distributed free of any license charges on the understanding that no warranty is implied with this software, nor is any liability incurred by the original author nor by any person who has modified the file(s), nor any by person who permits a copy of the software to be made. -- Trimbiont - is a simple piece of code, that strips extraneous spaces from the end of print lines, prior to being sent to the print device. Specifically, when utilized in WAN's (wide-area networks), may reduce over-head(depending of print job) and decrease print time. We found with our application print jobs, we saved an average of 30% savings in print times. Trimbiont.exe must reside in Sys$common:[Sysexe]. To activate, $ Stop/Reset queue_name $ Start/Queue/Processor=Trimbiont queue_name Note: This software is only useful if you have print jobs that do have extraneous spaces at the end of print lines. Note: This software does not have special LAT handling for multiple queues pointing to the same physical device. VD3:[VAX91B.CANADA.OTT91.HAMLUG.CBS]AAAREADME.FIRST;1 Author: Craig Slattery (416) 335-2000 This image uses kernal mode code - use at own risk. To compile and link this program simple use the following: $ MACRO SHUS $ LINK SHUS $ RUN SHUS (from privileged account) This image can also be installed privileged (change mode to kernal) and shared. VD3:[VAX91B.CANADA.OTT91.LIBRARY]AAAREADME.FIRST;1 This directory contains contributions from the DECUS Canada Library group. [.Derrick] contains a collection of DCL routines that I use often at our site. Some of them are obviou and some of them are just plain handy. Page 24 [.Rajah] MDQ - Program to modify the disk quota for users. [.Tinney] SNAP is a process control program for the system manager. It allows many different kinds of viewing and manipulations on user or system processes. VD3:[VAX91B.CANADA.OTT91.LIBRARY.DERRICK]AAAREADME.FIRST;1 This directory contains a collection of DCL routines that I use often at our site. Some of them are obviou and some of them are just plain handy. Enjoy. David Derrick Ministry of Natural Resouces North York, Ontario M2N 3A1 Tape Copy, Library committee ALLMAIL.COM Check for All-In-One mail ALLMAIL.FOR PNAME.FOR AUTHORIZE.COM used to goto sys$system, run authorize, and go back to where we came BIGDIFF.COM differences between this directory and filespec p1 directory DISKS.COM show or watch disk space DQ.COM show disk quota with totals PIPE.COM A "pipe" utility collection for different cases EPIPE.COM Great for software development LPIPE.COM PIPES.COM PRIV.COM set command promt to include new privs SENDPRINT.COM Send print jobs to a remote node using proxy logins. RECEIVEPRINT.COM Used very sucessfully at ours and a remote site. SORT_US.COM List users on a VAXCluster by node then username TAPES.COM Watch tape drives (like disks) WHERE.COM Where are we (or some one else) VD3:[VAX91B.CANADA.OTT91.LIBRARY.RAJAH]AAAREADME.FIRST;1 MDQ - Modify disk quota of users. Page 25 Program MDQ allows authorized users to (1) inquire disk quota usage by any user on the sytem on their home device, and (2) modify the permanent quota. We use this program at this University to allow secretaries to modify disk quotas of users upon authorization from the System manager. Files that make up MDQ are: MDQ.FOR - FORTRAN main program GET_MDQ.MAR - MACRO routine that talks to the DISK ACP. MAKE-MDQ.COM - Command file to compile, link and install MDQ.EXE Security: -------- Access to MDQ.EXE is controlled by the Rights identifier ID_MDQ. Those usernames that can run MDQ must be granted this identifier. Authorized usernames are added to the Authorized_users array within the program. The program needs to be installed with SYSPRV which is not enabled until required. Submitted by: A. Mahendra Rajah, System Manager Dept of Computing Services, University of Regina, Regina, Sask. CA*net address: Mahendra @ Meena.CC.URegina.CA If you are having trouble executing this program, I may be able to help! VD3:[VAX91B.CANADA.OTT91.LIBRARY.TINNEY]AAAREADME.FIRST;1 DOCUMENTATION FOR snap BY DANIEL J. GRAHAM SNAP is a process control program for the system manager. It allows many different kinds of viewing and manipulations on user or system processes. Page 26 SNAP is a very fancy SHOW USERS. it gives a useful screen of information about each user process on the system. (Optionally, it also gives the same stuff about system processes.) You can get a bunch of statistics on the process, you can view what is going on on a terminal or write to that terminal's buffer, you can delete a process, force an image exit on a process, change priority, suspend or resume a process. WARNING: Do not install this program with privs. It is very dangerous and could seriously compromise your system's security if used by someone with intent to do damage. Do not make it available to any but trusted systems people. ----------- Dan Graham Dynamics Research Corporation, Andover, Ma (508) 475-9090 x2352 Internet address: graham@drcvax.af.mil VD3:[VAX91B.CANADA.OTT91.MEZEI]AAAREADME.FIRST;1 ********************** Sounds and Images ************************************* Submitted by: Jean-François Mezei Vaxination Informatique 86 Harwood Gate Beaconsfield, Quebec [.MEZEI]AAAREADME.txt This file... [.MEZEI]MODEM_MNP.TXT A description of the different MNP levels (types) available on modems. [.MEZEI]POSTSCRIPT_QUICK_REF.PS A quick reference card for postscript commands. Produced by U of LOWELL. (2 pages which shoudl be printed 2-sided and folded to make a quick reference card. (source Compuserve) **************** [.MEZEI.IMAGES] *************8000+ blocks***************** Some files, those with names ending in -LZ, in this directory are LZCOMPressed to save space on the tape. Please use the LZDCMP.Exe program in [Ott91.Tools] directory to decompress them. The two *.PS files are in the text library POSTSCRIPT.TLB in DATA reduced format. Use $ Library/Data=Expand POSTSCRIPT.TLB command to expand the library and then extract the two files. [.MEZEI.IMAGES]APOLLO.SIX;5 VT240 format. (from Compuserve) Page 27 [.MEZEI.IMAGES]VAX-TEMPLE.LA75;1 VAX joke, LA75 format [.MEZEI.IMAGES]VAX-TEMPLE.LN03;1 LN03+ format (sixel) [.MEZEI.IMAGES]VAX-TEMPLE.PS;9 Postscript [.MEZEI.IMAGES]VAX-TEMPLE.TIFF;1 TIFF, B&W (no greyscale) [.MEZEI.IMAGES]VAX-TEMPLE.VT240;5 VT240 (sixel) [.MEZEI.IMAGES]VELODROME.TXT Explanation of VELODROME files [.MEZEI.IMAGES]VELODROME.LN03;1 [.MEZEI.IMAGES]VELODROME.PS;1 [.MEZEI.IMAGES]VELODROME.TIFF;1 [.MEZEI.IMAGES]VELODROME.VT240;1 **************************** [.MEZEI.MACSOUNDS] **********11000+ blocks******* These sounds are all for the MACINTOSH computer. They are all in MACBINARY format. Some of the files contain sounds as resources, others are in standalone files to be used by applications such as SOUND-COP or SOUND-EDIT. Some files, those with names ending in -LZ, in this directory are LZCOMPressed to save space on the tape. Please use the LZDCMP.Exe program in [Ott91.Tools] directory to decompress them. This directory contains [.MEZEI.MACSOUNDS]ALARM_FOUR.SOUND;1 Various Star-Trek alarms [.MEZEI.MACSOUNDS]ALARM_ONE.SOUND;1 [.MEZEI.MACSOUNDS]ALARM_THREE.SOUND;1 [.MEZEI.MACSOUNDS]ALARM_TWO.SOUND;1 [.MEZEI.MACSOUNDS]ALERT_KLAXON.SOUND;1 [.MEZEI.MACSOUNDS]APOLLO_LANDING.RSRC;1 Recordings of the first apollo landing. Such as "The eagle has landed" and "One small step..." [.MEZEI.MACSOUNDS]HAL_COMPLETELY_OPERATIONAL.SOUND;1 Great startup sound. [.MEZEI.MACSOUNDS]HAL_PUZZLING_LET_IT_FAIL_AGAIN.SOUND;1 More of HAL (2001 fame) [.MEZEI.MACSOUNDS]HAL_SORRY_DAVE.SOUND;1 " " " " " [.MEZEI.MACSOUNDS]MISC.SOUNDS;1 All sorts of sounds Some BATMAN music and fights etc etc. [.MEZEI.MACSOUNDS]MISSION.IMPOSSIBLE;1 Theme song from Mission Impossible In compressed format 4:1 (SOUND-EDIT) [.MEZEI.MACSOUNDS]TREK.RESOURCES;1 Various Star Trek Captions from "The Borg" and Star Trek IV. [.MEZEI.MACSOUNDS]TREK_DOOR.;1 Swish ! Page 28 [.MEZEI.MACSOUNDS]TREK_WHISTLE.;1 Ship's whistle VD3:[VAX91B.CANADA.OTT91.NAPLUG]AAAREADME.FIRST;1 Submissions from NAPLUG. [.KYLE] There are two programs in this directory. SCANP - Scans the system for processes matching a user specified process name. SCANU - Scans the system for processes matching a user specified username. [.YOUNG] Read me first file for login.com stuff.... At our shop we wanted to have each user's process name be their 'real' name so when we are trying to provide support, we can see something other than cryptic usernames like SYS003, ISB032, etc. Unfortunately VMS doesn't provide us with an easy way of doing this (or at least as far as I could tell). So I wrote a short FORTRAN program to extract the needed information. When it is run, it gets the owner name and creates two DCL symbols: LOGIN$PROCNAME = The process name (owner truncated to 15 chars) LOGIN$A1NAME = Called this because we use All-In-1; this is the complete name (32 characters long) There are three files included in this save set (besides this one). They are the following: SAMPLE_LOGIN.COM This is a sample LOGIN command procedure that calls SAMPLE_USER to get the owner of the account. SAMPLE_USER.FOR This FORTRAN program uses the SYS$GETUAI system service to haul out the 'owner' of the current account. This is useful for setting process names and things like that... WRITE_SYMBOL.FOR This subroutine is called to write a value to a symbol. Pretty simple, actually. COMPILING INSTRUCTIONS: ======================= FORTRAN/LIST SAMPLE_USER, WRITE_SYMBOL LINK SAMPLE_USER, WRITE_SYMBOL Page 29 Any comments/suggestions can be forwarded to: Grant Totten New Brunswick Department of Transportation Information Systems Branch P.O. Box 6000, Suite 630, King's Place Fredericton, N.B. E3B 1H5 (506) 453-2990 VD3:[VAX91B.CANADA.OTT91.NAPLUG.KYLE]AAAREADME.FIRST;1 There are two programs in this directory. SCANP - Scans the system for processes matching a user specified process name. SCANU - Scans the system for processes matching a user specified username. VD3:[VAX91B.CANADA.OTT91.NAPLUG.YOUNG]AAAREADME.FIRST;1 Read me first file for login.com stuff.... At our shop we wanted to have each user's process name be their 'real' name so when we are trying to provide support, we can see something other than cryptic usernames like SYS003, ISB032, etc. Unfortunately VMS doesn't provide us with an easy way of doing this (or at least as far as I could tell). So I wrote a short FORTRAN program to extract the needed information. When it is run, it gets the owner name and creates two DCL symbols: LOGIN$PROCNAME = The process name (owner truncated to 15 chars) LOGIN$A1NAME = Called this because we use All-In-1; this is the complete name (32 characters long) There are three files included in this save set (besides this one). They are the following: SAMPLE_LOGIN.COM This is a sample LOGIN command procedure that calls SAMPLE_USER to get the owner of the account. SAMPLE_USER.FOR This FORTRAN program uses the SYS$GETUAI system service to haul out the 'owner' of the current account. This is useful for setting process names and things like that... WRITE_SYMBOL.FOR This subroutine is called to write a value to a symbol. Pretty simple, actually. Page 30 COMPILING INSTRUCTIONS: ======================= FORTRAN/LIST SAMPLE_USER, WRITE_SYMBOL LINK SAMPLE_USER, WRITE_SYMBOL Any comments/suggestions can be forwarded to: Grant Totten New Brunswick Department of Transportation Information Systems Branch P.O. Box 6000, Suite 630, King's Place Fredericton, N.B. E3B 1H5 (506) 453-2990 VD3:[VAX91B.CANADA.OTT91.PAXLUG]AAAREADME.FIRST;1 Jean-François Mezei Vaxination Informatique Montréal, Québec, Canada (LUG: PAXLUG) --------------------------------------------------- October 1990 Submission. *.SIX Various sixel files CONVERT.DIR Accented character conversion utilities (MAC-DEC-IBMPC) Tab expansion utility (replaces tabs with blanks) PSPRINT_ALDUS_PREP_FIX.PS Fix to ALDUS PREP for use with DEC's PSPRINT utility SYS_MANAGER.DIR Various utilities for the syustem manager, including a broadcast program to send a long message to a list of terminals. WPSPLUS.DIR Various forms and scripts which allow WPSPLUS to be customized. All C source programs can be compiled on VAX-C without any special include files, and can be linked regularly (with VAXCRTL.EXE). VD3:[VAX91B.CANADA.OTT91.SLUG]AAAREADME.FIRST;1 Are you tired of all your batch jobs executing at once after a reboot or missed executions completely? Or maintaining separate batch definitions on each node? Then DCLSchedule may be for you. 1. Define all your nodes using logical names in Sys_Node_Service_Conig.Com and execute these definitions in SyStartup_V5 -- or you could define them elsewhere. Note that concatination of nodes is possible in ALLVAX. Page 31 2. @DCLSchedule_Run.com goes in SyStartup_V5 to start a detached process. 3. Define all repeated batch jobs in DCLSchedule.Dat using the rules at the top of the .Dat file. And you're off. VD3:[VAX91B.CANADA.PVH]AAAREADME.FIRST;1 RAILWAY TRAFFIC SIMULATION SOFTWARE AUTHOR Ms. Pauline Van Havere email: pvh@UReginaV.Bitnet Computer Science Department University of Regina Regina, Saskatchewan S4S 0A2 ABSTRACT This software simulates the bi-directional travel of any number of trains over an east-west track layout consisting of any number of track segments. Trains are assigned a priority rating and track segments can be single or double track, sidings may or may not be present. The first priority in meets and overtakes is given to eastbound trains (traditional in the Canadian system). DOCUMENTATION 1. Simscript Rail Traffic Simulation Technical Report CS-88-04 ISSN 0828-3494 ISBN 0-7731-0134-9 contains: programmer's & user's guides, source code listings. 2. TRACK.FORMAT contains a description of the required format for the track layout data file. 3. TRAIN.FORMAT contains a description of the required format for the train schedule data file. TRAIN.SIM This is a Simscript simulation program designed to simulate the travel of 'n' trains over at 'm' track segments. A train can begin and end in any track segment. Areas of congestion can be isolated by examining wait times for each track segment. New sidings and double track can be added in an attempt to minimize congestion. A train schedule file and a track layout file are required. FILTER.C This is a C pre-processor to convert times in the train schedule file from 24 hour format to that expected by Simscript. RUNTRAIN.COM This command file calls the C pre-processor, defines I/O files, runs the simulation program, and calls "sortit.com", a command file to sort train travel times. TRNSTATS.LIS statistical output of simulation run. TRNTIMES.SRT train travel run times. VIEWTRAIN.DAT pictorial trace of a specified train. VIEWTRACK.DAT pictorial trace of a specified track segment. VD3:[VAX91B.CANADA.SRS]AAAREADME.FIRST;1 Page 32 Symposium Registration System is designed to store records on Attendees, Payments, Events, Counts and Messages. The information store on Attendees fall under the basic catagories of address/personal data event flag bytes for events attending 1st, 2nd, and 3rd choice event-code names for events attending basic payment details Payment records store basic catagories payment type amount details (additional comments) Events records store basic catagories description date/time cost (pre-registration/walkin) Counts record accumulative totals of attendee transactions and Messages store Names and SRNs for participants who have messages Announcements for activities or special events Each participant will use his DECUS number as his unique Symposium Registration number (SRN). In the event that the attendee does not have a DECUS number, the system will assign a SRN. This number is used as an index key to most data files. A standard FMS form is used throughout the program, for functions which are related to the participant, to query for either the participants SRN or Surname (or part of). The default of to exit, was implemented throughout. Symposium Registration System (SRS) Options 0 - REGISTRATION 6 - REPORTS 1 - PAYMENTS 7 - MESSAGES 2 - PICKUP: 8 - BACKUP (not supported) 3 - EVENTS 9 - BADGES 4 - COUNTS - HELP 5 - RECEIPTS - EXIT Additional programs .. FPLIST The system is initialized via SRS$STARTUP.COM. The components, according to the Main Menu, represent various subdirectories and are pointed to using logicals which are set by SRS_LOGICALS.COM Notable logicals; images reside in SRS$IMAGES data reside in SRS$DATA form libraries in SRS$FORMS Adjustments may be required in the LOGIN.COM file for defining logicals and symbols. A template file is found in [.SETUP] directory. Page 33 Commands required to run DECUS Symposium Registration System SRS to run the main system this is a symbol that points to the SRS.EXE image located in SRS$IMAGES SRSBCK to backup the .DAT files (transfers files from SRS$DATA directory to SRS$BACKUP directory) this is a symbol that points to the SRSBACKUP.EXE image located in SRS$IMAGES DTR to execute Datatrieve this may be required to get special reports or adjust some fields that are incorrect or have been inadvertently corrupted COUNTS.DAT records must be initialized with key values being 4 letter codes for events that will be registered as well as TOTA - total attending TOTD - total deleted NSRN - next SRN NMES - next message number NPAY - next payment number Data Files required - ATTENDEES.DAT,EVENTS.DAT,COUNTS.DAT MEMBER.DAT,PAYMENTS.DAT,MESSAGES.DAT ANNOUNCEMNT.DAT,HISTORY.DAT,REVENTS.DAT Functions in the Symposium Registration System REGISTRATION Function - adds, cancels, updates data records on registered participants PAYMENTS Function - adds, deletes, updates data records on payment details PICKUP *NOT CURRENTLY SUPPORTED Function - adds additonal information when a registered participant comes in for on-site registration (whether pre-registered or not) (eg. registered with Convention's hotel, Room No.) EVENTS Function - lists, adds, deletes, updates data records on Symposium events COUNTS Function - displays current participant counts for all events including Total attending, Total deleted, and next SRN RECEIPTS Function - Prints the receipt form, according to the data entered by the operator, on an LN03 printer REPORTS Function - Reports on all data that is requiring up to-date listings of current data (standard reports). Data File RPT.COM generated (output file) MESSAGES Function - Post announcements on a monitor for changes in program - Post a message for another participant to be picked up at the Page 34 Registration Desk or Information Desk BACKUP Function - creates a copy of all data (.DAT) files on SRS$BACKUP subdirectory using VMS BACKUP BADGES Function - create a badge with the participants name, affiliation, city major events attending, and SRN Additional Comments Payment accounting could be more robust Helpful Hints - Registration - You may wish to enter a class code in the field. This will assist you in identifying those people with a special classification (Central Engineering, Library, Board, Planning...) - You CANNOT split 1st,2nd, and 3rd choices for seminars between 2 different days (however, this could be stored in the data record by inputting directly using DTR) Payments - every single payment/refund/credit is one transaction. Use multiple "payments" to adjust your final balance and use the comment field if the entry requires some clarification. Badges - The program is set so that when your doing a batch run (Print ALL unprinted badges) 20 badges are printed at a time. This is to enable the operator to 1) exit or, 2) adjust the Badge paper in case it got misaligned. If you require the Badge_flags in all Attendee records to be cleared use DTR> :clear_badge_flags this procedure will reset all the Badge_flags this may be required if there has been some problem during a batch run or all the badges must be reprinted APPENDIX A --- DATA DICTIONARY DEFINITIONS --- DELETE ACOUNT; REDEFINE DOMAIN ACOUNT USING ACOUNT_REC ON SRS$BACKUP:COUNTS.DAT; DELETE ACOUNT_REC; REDEFINE RECORD ACOUNT_REC USING ALLOCATION IS LEFT_RIGHT 01 ACOUNT_REC. 15 NEXT_COUNT PIC X(4). 15 NXT_CNT REDEFINES NEXT_COUNT. 20 TYPE PIC X. 20 REMAINDER PIC XXX. 15 COUNTS PIC 9(4). Page 35 ; DELETE ANNOUNCEMENTS; REDEFINE DOMAIN ANNOUNCEMENTS USING ANNOUNCEMENTS_REC ON SRS$BACKUP:ANNONCMNT.DAT; DELETE ANNOUNCEMENTS_REC; REDEFINE RECORD ANNOUNCEMENTS_REC USING ALLOCATION IS LEFT_RIGHT 01 ANNOUNCEMENTS_REC. 15 MESNUM PIC IS X(5). 15 CODE PIC IS X(1). 15 CREATION_TIME PIC IS X(8) QUERY_NAME IS CT. 15 CREATION_DATE PIC IS X(9) QUERY_NAME IS CD. 15 DELETION_TIME PIC IS X(8) QUERY_NAME IS DT. 15 DELETION_DATE PIC IS X(9) QUERY_NAME IS DD. 15 TEXT PIC IS X(300). ; DELETE ATTENDEES; REDEFINE DOMAIN ATTENDEES USING ATTENDEE_REC ON SRS$BACKUP:ATTENDEES.DAT FORM IS ATTENDEE_FRM IN [REGISTRATION.DECUS.FORMS]REGISTER; DELETE ATTENDEE_REC; REDEFINE RECORD ATTENDEE_REC USING ALLOCATION IS LEFT_RIGHT 01 ATTENDEE_REC. 05 DATE_CREATED USAGE IS DATE. 05 LAST_UPDATE USAGE IS DATE. 05 SRN PIC IS 9999. 05 RECORD_STATUS PIC IS X. 05 TYPE_A_REC. 15 CLASS_OPT PIC XXXX. 15 CLASS PIC X. 15 DECUS_NO PIC 9(9). 15 FIRST_NAME PIC X(25). 15 SURNAME PIC X(20). 07 ADDRESS. 15 COMPANY PIC X(30). 15 ADDRESS_1 PIC X(30). 15 ADDRESS_2 PIC X(30). 15 CITY_PROV PIC X(26). 15 PROVINCE PIC X(4). 15 POST_ATTN PIC X(24). 15 POSTAL PIC X(6). 15 TELEPHONE PIC X(10). 15 MAIL_STOP PIC 9999. Page 36 05 FLAGS. 15 CLASS_FLAG PIC X. 15 PREREG_FLAG PIC X. 15 LABEL_FLAG PIC X. 15 BADGE_FLAG PIC X. 15 BADGE_FLAG1 PIC X. 05 TYPE_P_REC. 15 PAYABLE PIC S9(8)V99. 15 PAID PIC S9(8)V99. 15 BALANCE PIC S9(8)V99. 15 ACCOM_COMMENTS PIC X(70). 15 ACCOM_PARTS REDEFINES ACCOM_COMMENTS. 20 HOTEL PIC X. 20 COMMENT PIC X(69). 05 TYPE_E_REC. ! 10 REGISTRATION_BEFORE. 15 P1 PIC 9. 15 P2 PIC 9. 15 P3 PIC 9. 15 P4 PIC 9. 15 P5 PIC 9. 15 P6 PIC 9. 15 P7 PIC 9. 15 P8 PIC 9. 15 P9 PIC 9XXX. 15 P10 PIC 9XXX. 15 P11 PIC 9. 15 P12 PIC 9. ! 07 SITE TOUR. 15 P13 PIC 9. ! 07 STUDENTS & DAYS. 15 P14 PIC 9XXX. 15 P15 PIC 9XXX. 15 P16 PIC 9. 15 P17 PIC 9. 15 C_NAME PIC X(40). 15 C_PHONE PIC X(10). ! 07 EXTRA TICKETS. 15 XL PIC 99. 15 XB PIC 99. 15 XR PIC 99. ! 07 MONDAY SEMINARS. 15 MS_1ST_CHOICE PIC XXXX. 15 MS_2ND_CHOICE PIC XXXX. 15 MS_3RD_CHOICE PIC XXXX. ! 07 FRIDAY SEMINARS. 15 FS_1ST_CHOICE PIC XXXX. 15 FS_2ND_CHOICE PIC XXXX. 15 FS_3RD_CHOICE PIC XXXX. ! 07 FRIDAY WORKSHOPS. 15 FW_1ST_CHOICE PIC XXXX. 15 FW_2ND_CHOICE PIC XXXX. 15 FW_3RD_CHOICE PIC XXXX. ! 07 FRIDAY TOURS. 15 FT_1ST_CHOICE PIC XXXX. Page 37 15 FT_2ND_CHOICE PIC XXXX. 15 FT_3RD_CHOICE PIC XXXX. ! 07 LIBRARY TAPES. 15 L1 PIC X. 15 L2 PIC X. 15 L3 PIC X. 15 L4 PIC X. ; DELETE CLASS_TABLE; REDEFINE TABLE CLASS_TABLE " ":"Proceedings only", 1:"Day pass FEB. 09", 2:"Day pass FEB. 10", 3:"Day pass FEB. 11", A:"General Attendee", C:"Committee Member", E:"Exhibitor", G:"Guest", H:"Chairman", N:"Non-DECUS member", P:"Participant", S:"Speaker", X:"Executive", ELSE "Not in table" END_TABLE DELETE CLEAR_BADGE_FLAGS; REDEFINE PROCEDURE CLEAR_BADGE_FLAGS READY TMP_A SHARED WRITE FIND TMP_A MODIFY ALL USING BEGIN BADGE_FLAG=" " BADGE_FLAG1=" " END END-PROCEDURE DELETE DECUS; REDEFINE DOMAIN DECUS USING DECUS_MEMBERS ON SRS$DATA:MEMBER.DAT FORM DECUS IN [REGISTRATION.DECUS.FORMS]DECUS; DELETE DECUS_MEMBERS; REDEFINE RECORD DECUS_MEMBERS USING 01 DECUS_REC. 05 DECUS_NO PIC 9(9). 05 M_TYP PIC X. 05 M_STATUS PIC X. 05 M_RATE PIC X. 05 POSTAL PIC X(12). 05 M_COUNTRY PIC XX. 05 M_REGION PIC XX. 05 PROV PIC X(15). 05 NAME PIC X(30). 05 NAME_PTR PIC X. Page 38 03 ADDRESS. 05 COMPANY PIC X(30). 05 COMP_PTR PIC X. 05 N1 PIC X(30). 05 ADDRESS_1 PIC X(30). 05 ADDRESS_2 PIC X(30). 05 CITY_PROV PIC X(30). 05 TELEPHONE PIC X(20). 05 FILLER PIC X(211). ; DELETE EVENTS; REDEFINE DOMAIN EVENTS USING EVENT_REC ON SRS$BACKUP:EVENTS.DAT; DELETE EVENTS_TABLE; REDEFINE TABLE EVENTS_TABLE "P1 ":"Seminar only ", "P2 ":"Extra Seminar Supplement", "P3 ":"Seminar/Symposium", "P4 ":"Seminar/Symposium/Workshop", "P5 ":"Seminar/Symposium/Site Tour", "P6 ":"Seminar/Workshop", "P7 ":"Symposium/Site Tour", "P8 ":"Symposium only", "P9 ":"Symposium - 1 Day", "P10 ":"Symposium - 2 Days", "P11 ":"Fri. Workshop - Half Day", "P12 ":"Fri. Workshop - Full Day", "P13 ":"Fri. Site Tour", "P14 ":"Students - 1 Day", "P15 ":"Students - 2 Days", "P16 ":"Students - 3 Days", "P17 ":"Companions' Program", "XL ":"Extra Luncheon Tickets", "XB ":"Extra Banquet Tickets", "XR ":"Extra Reception Tickets", "M1 ":"Making Time Work For You", "M2 ":"RSX Realtime and Performance Issues", "M3 ":"Networks, Communications & Protocols", "M4 ":"Introduction to the C Language", "M5 ":"VMS Performance", "M6 ":"Integrating PCs and LANs with VAX", "M7 ":"Introduction to UNIX", "M8 ":"Building Applications in 4GL and DBMS Environment", "M9 ":"Introduction to VAX/VMS System Management", "F1 ":"Effective Utilization of RMS", "F2 ":"Developing Training Programs for End-Users", "F3 ":"Advanced C Language Tips", "F4 ":"Network Design for PC and Workstations", "F5 ":"Hitchhiker's Guide to VMS Internals", "F6 ":"VAXBI - DEC's High-Performance Bus", "F7 ":"X.25 and PSI Technical Overview", "F8 ":"Advanced Ethernet Concepts and Configurations", "F9 ":"Introduction to VAX/VMS Perfomance Management", Page 39 "F10 ":"Seminar en Francais" "W1 ":"Workshop 1", "W2 ":"Workshop 2", "W3 ":"Workshop 3", "W4 ":"Workshop 4", "S1 ":"Site Tour 1", "S2 ":"Site Tour 2", "S3 ":"Site Tour 3", "S4 ":"Site Tour 4", "L1 ":"VAX/VMS TK-50 Library Tape", "L2 ":"VAX/VMS 1600 BPI Library Tape", "L3 ":"RSX 1600 BPI Library Tape", "L4 ":"PC/VAXMATE RX-50 Library Tape", "NSRN":"Next available Symposium Registration No.", "NMES":"Next available Message record no.", "NPAY":"Next available Payment record no.", "TOTA":"Total Attendees to-date", "TOTD":"Total Attendee records deleted", ELSE "NOT IN TABLE" END_TABLE DELETE EVENT_REC; REDEFINE RECORD EVENT_REC USING ALLOCATION IS LEFT_RIGHT 01 EVENTS_REC. 15 ASSIGNED_E_CODE PIC 9999. 15 EVENT_CODE PIC XX99. 15 EVENT_CODE_PARTS REDEFINES EVENT_CODE. 25 EVENT_TYPE PIC X. 25 HYPHEN PIC X. 25 EVENT_NUMBER PIC 9. 25 ASSOCIATED_DATE PIC 9. 15 EVENT_DESC PIC X(40). 15 EDATE USAGE IS DATE. 15 COST PIC 9(4)V99 EDIT_STRING $(4).99. 15 TIME_CODE PIC 9999. 15 MAX_NO PIC 999. 15 WALKIN_COST PIC 9(4)V99 EDIT_STRING $(4).99. ; DELETE HOTEL_TABLE; REDEFINE TABLE HOTEL_TABLE "Y":"l'Hotel", "y":"l'Hotel", ELSE "OTHER" END_TABLE DELETE INDEX; REDEFINE PROCEDURE INDEX DECLARE IDX PIC 9999. IDX=0 FOR CURRENT BEGIN IDX=IDX + 1; PRINT IDX, SRN,SURNAME||', '||FIRST_NAME ON *."Output Device" END Page 40 END-PROCEDURE DELETE LANGUAGE_TABLE; REDEFINE TABLE LANGUAGE_TABLE "X ":"English", " X":"French", "XX":"Eng-Fre", ELSE "Not Specified" END_TABLE DELETE LETTER_LIST; REDEFINE PROCEDURE LETTER_LIST REPORT CURRENT ON LETTER.LIST SET NO REPORT_HEADER SET NO COLUMN_HEADER SET LINES_PAGE = 90000 PRINT COL 1, SURNAME, SKIP, COL 1, FIRST_NAME, SKIP, COL 1, COMPANY, SKIP, COL 1, ADDRESS_1, SKIP, COL 1, ADDRESS_2, SKIP, COL 1, CITY_PROV, COL 1, POSTAL, SKIP, COL 1, "-----------------" END_REPORT END-PROCEDURE DELETE LOCATE; REDEFINE PROCEDURE LOCATE READY ATTENDEES FOR ATTENDEES WITH SURNAME CONTAINING *."Attendee's Surname or part of (ie. BOYD)" BEGIN PRINT FIRST_NAME||" "|SURNAME, HOTEL, COMMENT USING T(23) END END-PROCEDURE DELETE MESSAGES; REDEFINE DOMAIN MESSAGES USING MESSAGES_REC ON [REGISTRATION.DECUS.DATA.BACKUP]MESSAGES.DAT; DELETE MESSAGES_REC; REDEFINE RECORD MESSAGES_REC USING ALLOCATION IS LEFT_RIGHT 01 MESSAGES_REC. 15 MESNUM PIC IS X(5). 15 CODE PIC IS X(1). 15 CREATION_TIME PIC IS X(8) QUERY_NAME IS CT. 15 CREATION_DATE PIC IS X(9) QUERY_NAME IS CD. 15 DELETION_TIME PIC IS X(8) QUERY_NAME IS DT. 15 DELETION_DATE PIC IS X(9) QUERY_NAME IS DD. Page 41 15 TEXT PIC IS X(25). ; DELETE MOD_COMMITTEE_FLAG; REDEFINE PROCEDURE MOD_COMMITTEE_FLAG DECLARE TMP PIC X. READY ATTENDEES WRITE FOR ATTENDEES WITH SURNAME STARTING *."SURNAME (or part of)" BEGIN TMP=*."Specific Committee flag" MODIFY USING CLASS=TMP END END-PROCEDURE DELETE PAYMENTS; REDEFINE DOMAIN PAYMENTS USING PAYMENT_REC ON SRS$BACKUP:PAYMENTS.DAT ; DELETE PAYMENT_REC; REDEFINE RECORD PAYMENT_REC USING ALLOCATION IS LEFT_RIGHT 01 PAYMENT_REC. 15 PAY_NUMBER PIC 9(5) QUERY_NAME PN . 15 DATE_CREATED USAGE IS DATE. 15 LAST_UPDATE USAGE IS DATE. 15 SRN PIC 9(4). 15 NAME PIC X(30). 15 PRC_FLAG PIC X. 15 AMOUNT PIC 9(7)V99. 15 CANCEL_FEE PIC 9(7)V99. 15 PFI_FLAG PIC X. 15 PAYMENT_TYPE PIC X. 15 PAYMENT_DETAILS PIC X(60). ; DELETE PAYMENT_TOTALS; REDEFINE PROCEDURE PAYMENT_TOTALS READY PAYMENTS FIND PAYMENTS WITH DATE_CREATED AFTER *."After date: " SORTED BY PRC_FLAG, NAME REPORT ON PAYMENTS.LIS SET COLUMNS_PAGE = 132 SET REPORT_NAME = "PAYMENTS AT THE SYMPOSIUM" AT TOP OF PRC_FLAG PRINT PRC_FLAG VIA PRC_FLAG_TABLE AT BOTTOM OF PRC_FLAG PRINT TOTAL(AMOUNT) PRINT CRN, NAME USING X(15), AMOUNT, PAYMENT_TYPE VIA PAYMENT_TYPE_TABLE, PAYMENT_DETAILS END_REPORT END-PROCEDURE DELETE PAYMENT_TYPE_TABLE; REDEFINE TABLE PAYMENT_TYPE_TABLE 1:"Cash", 2:"VISA", 3:"MASTERCARD", 4:"Business cheque", Page 42 5:"Personal cheque", 6:"Traveler's cheque", 7:"Bank Charges", 8:"Other", ELSE "Undefined" END_TABLE DELETE PRC_FLAG_TABLE; REDEFINE TABLE PRC_FLAG_TABLE D:"Discount", G:"Gratis", P:"Payment", R:"Refund", ELSE "Undefined" END_TABLE DELETE TMP; REDEFINE DOMAIN TMP USING ACOUNT_REC ON SRS$DATA:COUNTS.DAT; DELETE TMP_A; REDEFINE DOMAIN TMP_A USING ATTENDEE_REC ON [-.DATA]ATTENDEES.DAT; DELETE TMP_E; REDEFINE DOMAIN TMP_E USING EVENT_REC ON SRS$DATA:EVENTS.DAT; VD3:[VAX91B.CANADA.VANC89.ADD_LIST]AAAREADME.FIRST;1 The command file ADD_LIST.COM will add a definition (P2) to a library list (P1). The ususal library lists are HLP$LIBRARY and LNK$LIBRARY, the only two I have yet encountered that use this method. P2 is defined as the translation (in the JOB table) of the first of the following that is undefined: 'P1' 'P1'_1 'P1'_2 ... Example: HLP$LIBRARY and HLP$LIBRARY_1 are defined. Then the command @ADD_LIST HLP$LIBRARY FOO.BAR will execute the command $ DEFINE HLP$LIBRARY_2 FOO.BAR VD3:[VAX91B.CANADA.VANC89.MUN]AAAREADME.FIRST;1 KEYPAD Programming Kit January 26, 1987 ====================== Prepared by William R. Garland for DECUS. Page 43 Wm. R. Garland, Manager Computer Services (Medicine) Health Sciences Centre St. John's, Nfld. A1B 3V6 INTRODUCTION The following is a precis of an article from the ------------ MUN Faculty of Medicine Computer Services Newsletter. Those of you who have been around long enough to remember line- oriented editors will remember the great improvement in personal productivity that occurred when keypad editting arrived. People used to the many DIGITAL operating systems (RSTS/E, RSX, RT-11, VMS, TOPS) will know about TECO. TECO, which stands for Text Editor and COrrector, is an editor extraordinaire, which allows one to write editting programs, that is, programs which operate on text files (such as manuscripts, programs, documentation, etc.). One of the fancier features of TECO is VTEDIT, for Video Terminal EDITor, which is a TECO program that made one's screen come alive by providing instant feedback about the content of one's file by always displaying an up-to-date, screen- sized window into the file, and which allowed single keystroke commands to perform editting functions (such as search and replace, cut and paste, advance or backup in the text by a specified entity such as paragraph, sentence, word). There were some technical problems with TECO on the older systems, especially in that it was a resource hog. TECO was, however, a 'freebee', written by dedicated hacks and provided to DECUS members. As such, it was an 'unsupported product'. There were some thirty-five or forty different versions of TECO over the years, and many survive today. Eventually, however, DIGITAL was forced to provide a 'supported' video editor, and they invented EDT, which did many of the things TECO did, although not all, but a few others as well. EDT became the standard text editor, and its most important feature was, again, keypad editting. EDT itself has now become old and is being replaced by TPU, the Text Processing Utility, which is the subject of another article. The point of all this is that the use of the keypad to provide single keystroke commands went a long way towards providing the individual programmer and other users with some of the power of the computer with which to perform editting tasks. The same phenomenon has occurred at the operating system level on VMS. One can now define keys to perform DCL (DIGITAL Command Language) commands, and, now that I am using these features, I wonder how I ever did things before. ..... This programming kit includes the command files and a small patch one must apply to one's LOGIN.COM file in order to do use the keypad effectively. Individuals will want to start with blank files and define keys for themselves as they go. Crucial to the process is the DEFINE/KEY command, which is well DECumented. You should already be beyond the novice stage to use these tools, however, because it is vitally important that you understand fully the Page 44 steps in the program development cycle and the concepts of symbols and logical names used on VMS. Also, you should be able to invent many new tools of your own to add to the kit. Send me feedback, if you wish. VD3:[VAX91B.CANADA.VANC89.PAXLUG]AAAREADME.FIRST;1 Submissions from PAXLUG Montreal CONVERSION.C - A program to convert French ascii characters between the VAX, IBM PC and MACINTOSH. Uses external conversion tables in files which are assumed to be in the default directory. Submitted by Michel Savoie - Centre de Recherche d'Informatique de Montreal, 1550 de Maisonneuve O. Suite 1000, Montreal H3G 1N2 - 848-3983 PACK2DCL.COM - Command procedure to pack files together in a single container suitable for VMS MAIL. The container file will unpack itself when invoked as a DCL command procedure. Handles various types of binary files (libraries, executables etc.) without a problem and works over PSIMAIL. New version (with bug fixes) of procedures submitted last Year. Invoke without arguments for more info. Submitted by C. Singleton - Tordion Consulting, 2394 Park Row W. Montreal H4B 2G4 (514) 481-7908. VD3:[VAX91B.CANADA.VANC89.UWO]AAAREADME.FIRST;5 UWO VAX ACCOUNTING UTILITY COMPUTING AND COMMUNICATIONS SERVICES THE UNIVERSITY OF WESTERN ONTARIO CHRIS LEE & BRENT STERNER - FEBRUARY 1988 Overview r The "master" accounting system at UWO CCS is written in ACCENT ' r on our DECsystem-10, and will be ported to ACCENT ' on the VAX in the next year. The VAX accounting system described herein provides charging records for, and receives update information from, that master system. The VAX/VMS operating system provides an excellent audit trail which can be used in many ways. After significant effort trying to make an interactive product from another site function, and after considering the merits (and cost) of several commercial products, UWO CCS decided to write its own VAX accounting utility from scratch, using VAX C as the programming language. Page 45 In summary, the UWO accounting utility tracks the VMS audit trail (ACCOUNTNG.DAT) "live", providing users of the VAX with account balances and session cost information. Shift and holiday discounts are implemented, as are special rates for print and batch queues. The Components There are two discrete software components to the system. - DAEMON processor (the heart of the system) - USER interface (communications to the DAEMON) This product is now running on the VAXcluster (8600 and 8550) in CCS at UWO. The latest efforts have been to stabilize the software and to package it suitably for DECUS distribution. The product was designed to fit our shop's unique circumstances, but should be easily extensible by any site having Digital's VAX C compiler. This is our first effort at writing a large package from scratch using "C", and we welcome suggestions and other comments. The User Interface Utility This component provides communication between users and the DAEMON using VMS mailboxes. Several "commands" have been defined to invoke the DAEMON, including LOGIN (so that the DAEMON knows about a new user), COST (so that the DAEMON can report a session cost to a user), and BYE (so that a user can be presented with a charge on his screen which is guaranteed to match the final session bill). Special privileged functions provide control of the system (for example closing of the charging files at midnight and reading in updated account balances when they are determined daily from the master database). The Accounting Daemon This component is the heart of the centralized accounting product for the VAX. It is initiated with system startup files when VMS is booted. Initialization files define necessary rates, holidays, shift discounts, account balances, and the most recent "snapshot" if a restart of the DAEMON is requested. All elements of the system which are likely to change at our site have been defined in these files, so that rebuilding the utility is not a frequent necessity. Periodically, this module reads (beginning where it previously left off) the VMS system accounting file (ACCOUNTNG.DAT) through to its new end of file, and updates the billing file (which is maintained as a parallel file for downstream input to the master accounting system). The period for this processing is defined in the initialization files (one minute works just fine for our system). Page 46 At specified times, this component closes both the VMS accounting file and the billing file, keeping them in synchronization. At UWO CCS, this occurs daily at midnight. Periodic snapshots are taken of all system users, consolidating charges for the most recent snapshot period. Charging rates may change at any snapshot boundary. At UWO, rate changes occur on the hour, and snapshots occur every 10 minutes. The initialization files define these time frames. On request from any user (through the user interface), a session cost calculation is performed. All information relating to the session cost, are tallied as dollars and cents, and returned to the user via the user interface. On request (again through the user interface), a "preferred" logout process is performed. This first implements the equivalent of the cost request. Then the daemon stops the process and creates the billing record. The charge displayed to the user in this case is remembered, and propagated to the billing file, guaranteeing consistency. All requests from the user interface are processed with a higher priority than timed events. This was done to prevent unacceptable delays during such events as snapshots. Most user interface requests are processed in less than one second elapsed time. The daemon currently runs with elevated priority as a batch job to ensure timely response to user requests. If a user logs off in some other manner, it is his choice. He loses the logoff display of the session cost, but the VMS session termination entry is eventually cut and processed, and the parallel entry still made in the billing file. In this case, the session cost is determined when the daemon "catches" the VMS entry in ACCOUNTNG.DAT. Futures It would be nice to integrate a modified print symbiont with this system, so that the cost of a print task could be displayed on the trailer page. To date, this is still a dream. VD3:[VAX91B.CANADA.VANC89.WORD11]AAAREADME.FIRST;1 This directory contains three Word-11 extras that were developed by Brad L. Tinney Canadian Hydrographic Service 867 Lakeshore Road Burlington, Ontario L7R 4A6 (416) 336-4728 Page 47 These are currently running on version 4.1 of Word-11. These items have been placed in the public domain and previous versions have been previously submitted to DECUS. They include a VMS access help file, a startup file memo form for the LN03 laser printer (eg. this page), and an index utility that gives a directory of Word-11 documents that includes the revision date and number of disk blocks as well as the document name and number (output can be sorted by any entry). VD3:[VAX91B.CANADA.VWS_CRIBBS]AAAREADME.FIRST;1 The Screen-Print and Screen-Save Utilities by Steve Cribbs Atomic Energy of Canada Limited Pinawa, Manitoba R0E 1L0 This submission consists of two VWS VAXstation specific programs that make use of the mouse-controlled copy and paste functions. These programs are intended for use only by a user logged in through the VAXstation's windowing interface - don't run them from a terminal. Text file MOUSE_COPY_PASTE.TXT provides a brief explanation of the new VWS mouse features. The Screen-Print program enables users to print a snap-shot of the visible text in any of the windows on their screen. This is similar functionality to that provided by the [Print Screen] key on a DEC VT-200 or VT-300 series terminal which writes to a printer connected directly to the terminal. Screen-Print offers several extended capabilities. With this program, users may route the text snap-shot to any print queue defined for their VAXstation. The text sent to the printer may be part or all of the text visible within a window. Users may also take advantage of any of the VMS PRINT command options - such as specifying a particular output format (eg. /form=LETP1). Several copies of Screen- Print may be running at the same time providing access to multiple print queues and/or various output formats. Screen-Save offers the capability of capturing the text contents of a workstation window into a file. Part or all of the window's text may be written out. The contents of several windows may be combined in a single file. By default, the output file is created in the current directory and is named SCREEN_SAVE.TXT. Users may over-ride that file specification. These two programs are intended as "handy gadgets" that the VAXstation user may call up quickly as a need for them arises. Once you have logged in initially, by responding to the VMS' Username and password prompts, new processes for the same account can be quickly begun. Simply select the "Create new VT220 window" option from the main menu and type either command SPRINT[Return] or SSAVE[Return] when the new window appears. Through this method, Screen-Print and/or Screen- Save may run along with your regular work sessions. They have been designed to automatically shrink to icon size as they start up and then can be conveniently nudged to an unused corner of the screen or pushed Page 48 into the background. A simple mouse selection action recalls the programs for use when needed. Remember, these utilities are only available to people logged in through the VAXstation's windowing monitor. A more detailed description of operation and optional features is presented on your screen when the programs are started with the following commands: SPRINT HELP[Return] and SSAVE HELP[Return] ========> [VAX91B.DATEBOOK]AAAREADME.TXT;1 <======== Datebook is a calendar program that keeps track of appointments for specific times and dates as well as recurring (daily, weekly, monthly, yearly) events. Calendar entries may be at a specific time or have no time associated with them. Datebook will also keep track of general 'to do' lists, phone numbers, etc. Remind is an accompanying program that runs in the background and will display a message 10 minutes before, 5 minutes before and at the time of the calendar entry. ========> [VAX91B.DECUSERVE_TAPES]AAAREADME.TXT;4 <======== VD3:[VAX91B.DECUSERVE_TAPES.1991_B.CONNEX]AAAREADME.FIRST;1 CONNEX External Dialup Connection Control Facility The CONNEX program is a rather crude hack of the DECUS UUCP UUCICO program. It manages dialup connections to external systems using a system and port database and scripting facility similar to that used by UUCP. It allows the user to use his own choice of technique for the actual data transfer. It is designed with automated batch transfers in mind. See CONNEX.RNO for details. George Merriman Cambridge Computer Associates New York City merriman@camb.com VD3:[VAX91B.DECUSERVE_TAPES.1991_B.MASTER_MENU]AAAREADME.FIRST;1 Submission Title: MASTER_MENU Submitter/Author: Chuck McMichael Pittsburgh Corning Corp. 412-327-6100 Abstract: MASTER_MENU is a set of four command procedures and one executable image that resides in SYS$MANAGER: and provides a set of customized menus based on the user's account name. At startup, it creates one logical name per menued application (ITEM_application) and one per username (USER_username) in its own logical name table. VD3:[VAX91B.DECUSERVE_TAPES.1991_B.MEMO]AAAREADME.FIRST;1 Submission Title: MEMO Submitter/Author: Jack Harvey c/o GWA Information Systems 1432 Main Street Waltham, MA, 02154 Telephone (617)890-1838 Abstract: MEMO stores a small amount of your data in the Access Control List (ACL) of a VMS ODS-2 disk file. It allows attaching (pasting on, so to speak) additional information about the file, or the environment of the file, without disrupting the normal file data or structure. The file may be any VMS/RMS supported type. Page 2 For example, the auxiliary data might declare something special about the file: "This file used for acceptance testing of PAYROLL II at Acme Bootstraps, on 3-Jan-91". Or, "Received from Paris office, 3/9/91". Data may be stored as ASCII strings as in these examples, or in binary expressed as decimal or hexadecimal values. Data can be in multi-field mixtures of these. VD3:[VAX91B.DECUSERVE_TAPES.1991_B.NEWHELP]AAAREADME.FIRST;1 NEWHELP Screen-Oriented Help for Character Cell Terminals This program uses an SMG window to provide scrolling help text from the system help library. It works very much like the normal VMS help command, but does not support any command line qualifiers. Prev-Screen and Next-Screen scroll through the text. PF1-Prev-Screen and PF1-Next-Screen scroll to the top and bottom of the text. The command line prompt is a little different from that in the standard HELP command, but is easy to use with command line editing. Broadcast message are trapped and displayed on the bottom of the screen. NEWHELP must be defined as a foreign command. A DCL command similar to the following will replace the standard HELp command with NEWHELP: $ h*elp :== $NEWHELP George Merriman Cambridge Computer Associates New York City merriman@camb.com VD3:[VAX91B.DECUSERVE_TAPES.1991_B.TK-LABELS]AAAREADME.FIRST;1 Submission Title: TK-LABELS Version 1.1 28-Sep-1991 Submitter/Author: Jack Harvey GWA Information Systems (617)890-1838 Abstract: TK-LABELS converts a simple editor text file into an LN03 print file to produce a sheet of labels for the TK50/TK70 cartridge. It prints a grid of fine lines to guide cutting the sheet into individual slips that will fit the cartridge label window. The text, which is variable length and may contain up to eight lines, is attractively centered in the window. There are up to 33 labels per sheet, printed on ordinary stock paper. The printer used must be an LN03 (or compatible) but does not require any advanced features, such as Post Script. Page 3 Computer and O/S Version Information: VAX/VMS, any version from V4.7 VD3:[VAX91B.DECUSERVE_TAPES.1991_B.UAI]AAAREADME.FIRST;1 AAAREADME.TXT This submission contains two different programs that allow a DCL command file to easily determine what the actual login.com file is for a VMS account. This is the content of the LGICMD field of the record in the user authorization file, SYSUAF.DAT, for the account. Both programs execute very quickly and return the content of LGICMD as a DCL symbol, UAI_LGICMD. The first, UAI_LGICMD.MAR, is a bare minimum program which assembles and links to produce a small (5 blocks) executable image. It works only for the current process. It is simply run, with no arguments. The second program, UAI_LGICMD.BAS, is a more sophisticated program which defines the same DCL symbol, but can also be executed as a foreign command and takes an argument. The argument is a username in the authorization file. If the executing account has SYSPRV, the program will return the content of LGICMD for any account in SYSUAF.DAT. ========> [VAX91B.DECWLOGINDOC]AAAREADME.TXT;1 <======== DECWLOGINDOC.PS is a file in postscript describing how LOGIN works on DECWindows and how to control it and its defaults. ========> [VAX91B.DINKEY]AAAREADME.TXT;2 <======== The programs in this directory permit users to compare entire directories merely by pointing the respective programs at the directories. If there is no match the next file name is used until all of the files that have corresponding files have been compared. In case of having the requirement that there be hard copy of the comparison for the purposes of governmental documentation, the 'output' option is included. The format of the command is: $ @diffcomp directory1 directory2 sample: $ @DIFFCOMP DRA0:[A.B.C] DRA0:[A.B.D] ========> [VAX91B.DNORTH]AAAREADME.TXT;2 <======== ...]000READ.ME -------------- I. Library DNORTH: Programs by directory: 1LOGIN - Selectively allows single login per user per vaxcluster. Another 'stupid DCL trick'', but some folks could use something like this (a site I worked for needed one!) Also a number of small DCL tricks too small to mention, but handy if you need'em. C - Lexical analyzer, C declaration parser, ACL blaster. CD - MSDOS-like CD command w/extra features This command provides a CD command to VMS users that is similar in some ways to the MSDOS CD command. It also provides methods for a user to define 'format' symbols which allow brief specifications for structured directory path formats. Wildcards now supported. Nice LIB$TPARSE example too! DETACHED - Useful tools for detached programming DO - 'DO' a DCL command. Comes right out of the 'stupid DCL tricks' grab-bag. Good only for not depositing a command into the recall buffer. DSF - Data Security Facility This is a small encryption facility used to keep prying eyes and privileges out of your private data. HEX, BLOCK, and wildcards are supported on the newest version. ENTER - Enter a specific file_id as a filename Used to enter a specific FID as a specified filename... useful for recovering TMD (marked for delete) files, or files that a user has $ SET FILE/REMOVEd. PATCHER - Procedure to force an image to call another shareable image for patching purposes... greatly simplifies some types of PATCH operations. PRV - SET PRIVILEGE shortcut + set privileges for another process This procedure may be used as a much briefer way to do a $ SET PROC/PRIV=(list). It also may be used to alter the privileges of another user. Nice LIB$TPARSE example too! RMVFIL - Try to remove a leftover file from INSTALL bug VMS V5.1-1 and V5.3 (at least) have a bug in INSTALL that can leave files open on a drive, and no way to close them. This program may be used (as a last resort only) to force those files closed. Also included are patches for VMS V5.1-1 and VMS V5.3-1 INSTALL which will prevent the problem. SETDATE - Set any/all file dates for wildcard specification. Provides a user capability to set any date on any file they can write to. Two versions of the .CLD provided, one for managers, one for users. Manager version changes anything, user version can only 'touch' or 'reset' a file's dates. SETUP - Partial (in fact fairly complete) replacement for LOGIN.COM Implements most readily programmable aspects of what you need in a LOGIN.COM. It is also node and mode -sensitive in the operations performed. SIGVEC - Method to use LIB$SIGNAL to simultaneously call SYS$PUTMSG and control program flow. *** USED BY PERMISSION OF THE VAX PROFESSIONAL TECHNICAL JOURNAL *** TRACE - Programmer callable utility to trap program traceback to a file. The originating program is called back during image exit to allow the program to perform some action with the Page 2 newly created trace dump such as using callable mail to mail the dump to a programmer. TTFISW - Procedure to allow a pre-loading of the typeahead buffer for a terminal-oriented application. PY/TW programming example. UWDIMGSTA - User-written-debugger 'catcher' program. Modifies default behaviour of RUN command. May also be used to bypass INSTALL's prevention of running an image with /TRACEBACK. Misc. debugger control utilities. Force an image into debug even though it was linked /NOTRACE. ========> [VAX91B.FLOWERS]AAAREADME.TXT;1 <======== ___ ___ _____ ___ ___ | \/ | / ____\ | | | | | \ / | \____ \ | |_| | FALL 1991 VAX SIG TAPE SUBMISSION |_|\/|_| \_____/ \_____/ Memphis State University Harry Flowers Internet: FLOWERS@MEMSTVX1.MEMST.EDU 112 Admin Bldg Bitnet: FLOWERS@MEMSTVX1 Memphis, TN 38152 Phone: (901) 678-2663 +-------------------------------------------------------------------------+ | Disclaimer: The author, Memphis State University, and DECUS assume no | | responsibility for the use or reliability of this software. | +-------------------------------------------------------------------------+ SUBMISSION DIRECTORY ==================== AAAREADME - This text file. Most of these submissions require VMS 5.4 or later. The programs were linked with VMS V5.4-2. If you're using an earlier version, you'll need to re-link them. Remember to link /NOTRACE the ones requiring installation with privileges. Object files are included for those without a compiler for that language. Documentation files with .PS types are PostScript and files with .LN3 are LN03/LN05/LN06 (not postscript "R" versions) compatible. As I use most of these programs regularly, I would be interested in any problems of a general nature you may have with them, or enhancements which would prove generally useful. Enjoy! ABSTRACT - Included because this is also being submitted to the DECUS library. It includes the abstract for the library catalog. Corrections and enhancements to previous submissions: ----------------------------------------------------- ASKOPER - Get an operator reply (like REQUEST/REPLY) in a symbol. Increased request text to maximum (255 characters). CSWING - Directory and file management tool, C Swing v3.5.4. Many new features and bug fixes. See the documentation for details. [.CSWING] - Contains sources for C Swing [.CSWING.DOC] - Contains sources for help and documentation. [.CSWING.OBJ] - Contains object files; the original is linked under VMS V5.4-2, so you'll need to go to the [.CSWING] directory and @LINK_V5 if you're running a previous version of VMS. Even if you don't try anything else here, you should try this. DISK - Reports free disk space. Actually, this is a complete re-write, not a modification of the old version. Added stripe set support and bar graph. DISK_MOUNTER - Mounts disk drives; call from startup command files. Made modifications to support more than two disk bound volume Page 2 sets. (Does not support mounting stripe or shadow sets.) DISK_WATCHER - Monitors free disk space. Changed to work with stripe sets. See command file for setup. MASTER - Allows a nonprivileged holder of a nnn_MASTER identifier to grant or revoke any existing nnn_* identifier to any user. The program must be installed with CMKRNL, SYSPRV, and WORLD. This is intended to allow project managers to control access to their projects without having elevated privileges. Using ACLs with these identifiers allows very fine control over files and types of access. Changed to log changes to a file. You must define a logical MASTER_LOG as follows: $ DEFINE/SYSTEM/EXEC/NAME=NO_ALIAS MASTER_LOG dev:[dir]logfile.ext The /EXEC and /NAME=NO_ALIAS are important, as MASTER makes no attempt to make sure the name is in the correct mode or table. MENU - DCL Menu System V2.2. Changed to handle variable terminal page lengths. SYSFILES - Check page and swap file usage. Changed to allow for no swap file. SYSTAT - System status program (works cluster-wide). Minor bug fixes and exit status change when no matching records. WILDCMD - File command substitution for wildcard file commands. Old FILCMDSUB.COM procedure. Minor improvements for wildcard check; should be slightly faster. Basically allows wildcarding in any DCL command, with flexibility with names, like renaming *.* to *.*-OLD. Easy to use, see command file for directions, syntax, and examples. New submissions: ---------------- DYNPRI - Dynamic priority adjustments. This program runs detached and modifies priorities of interactive processes based on their CPU time and the total available. This effectively places interactive jobs that should be run in batch down to batch priorities. Great aid to response time when ten users decide to run CPU-bound programs at the same time. Start it with the command file. Documentation is in the program source. Note that the logicals DYNPRI_MAXPRI and DYNPRI_MINPRI are only read on startup, and DYNPRI_STOP is checked every 30 seconds. GET_BROADCAST_CLASSES - Define a symbol with enabled broadcast classes. This program defines a symbol BROADCAST_CLASSES that contains the current state of broadcast classes enabled and disabled. Just run this program before changing broadcast classes, then, to restore them, just: $ SET BROADCAST=('BROADCAST_CLASSES') SYSGENCOMP - Compare active and AUTOGENerated parameters (in SETPARAMS.DAT). If you've started following DEC's new recommendations for running AUTOGEN, you might wonder how much the parameters have changed since you went through the SETPARAMS phase and rebooted. ========> [VAX91B.FRANCE_1991]AAAREADME.TXT;2 <======== DECUS France 5 Décembre 1991 This is the DECUS France contribution to the VAX/L&T sig tapes, covering spring and fall 1991. All the submissions runs under a system. See the associated NOTES in [FRANCE_1991.NOTES_91A]. The file is structured, for exemple Notes : RESEAUX 379 means : see the note NOTES_RESEAUX.0379. In French RESEAUX means NETWORKS and PROGRAMMATHEQUE means PROGRAMM LIBRARY. The French Library Coordinator Nicolas DIAKONOFF -------------------------------------------------------------------------------- Commentaires : This file. Auteur : DIAKONOFF_N Notes : PROGRAMMATHEQUE 70 AAA_LIRE_91A_VMS.;2 * This file for the international programm library. -------------------------------------------------------------------------------- Commentaires : Replace the DEC Logo at login time. Auteur : FOUCHET_F Notes : DECWINDOW 151 CHAMPS.BCK;1 * Save set. CHAMPS.DOC;1 * Documentation. -------------------------------------------------------------------------------- Commentaires : French version of COMPRESS with news functionalities like U*IX. Auteur : FAUCONNET_A Notes : VAX_VMS 1015 / 1212 / 1320 * Add two options : -i and -r : * * -i: Image mode (defined only under MS-DOS and VMS). Prevents * conversion between UNIX text representation (LF line * termination) in compressed form and MS-DOS text * representation (CR-LF line termination) in uncompressed * form. Useful with non-text files. * * -r rsize Output file record size (defined only under VMS). * Defines RMS record size for output file when image * mode is specified. Output will be fixed record size * file with no record attributes. Implies -i. COMPRESS.BCK;1 * Save set of COMPRESS (Sources, Objets, Executable). COMPRESS.DOC;1 * Documentation. -------------------------------------------------------------------------------- Commentaires : Presentation Sig Réseau 19/12/90 on EMA in French. Auteur : ROGGEBAND_P Notes : RESEAUX 379 Page 2 DECMCC_19_12_90.PS;1 * Presentation in Postscript. -------------------------------------------------------------------------------- Commentaires : Reading and display the Home Block. Auteur : OURGHANLIA_B Notes : VAX_VMS 1221 DISPLAY : This example MACRO program will read, format, and print to SYS$OUTPUT the contents of a disk homeblock and storage control block. It requires read access to both INDEXF.SYS and BITMAP.SYS. It prompts for the disk name. DISPLAY.MAR;1 * Source. -------------------------------------------------------------------------------- Commentaires : DM$SD Correction BUG of V00256 from Dale E. COY Auteur : GRACIA_J Notes : PROGRAMMATHEQUE 7 DM$SD_C.BCK;1 * Backup save set for SDTree_Subs.FOR et SDTree_Subs.OBJ -------------------------------------------------------------------------------- Commentaires : Patch editor to modify the files in HEXA and ASCII mode. Auteur : LAKS_J Notes : VAX_VMS 1096 EDP.DOC;1 * Documentation du produit. EDP.SAV_Z;1 * Save set compressé contenant le produit. -------------------------------------------------------------------------------- Commentaires : Configure a VMS node to access InfoServer based disks. Auteur : OURGHANLIA_B Notes : VAX/VMS 1276 This command file sets up the environment needed to use InfoServers. It should be run interactively by the system manager. The command file operates interactively unless invoked with P1 and/or P2 input parameters. P1 is set to the "interact" variable and if "Y" is specified, interactive mode will be entered without asking. If P2 is specified as "Y", command mode is entered. If P3 is entered as "Y" then BOOKREADER libraries will automatically be added when detected in both interactive and command modes. See help below. ESS$CONFIGURE.COM;1 * Procédure DCL. -------------------------------------------------------------------------------- Commentaires : Network meeting October 1990. Presentations. Auteur : GROSSETETE_P Notes : RESEAUX 360 FDDI.PS;1 * Presentation on FDDI. ROUTAGE.PS;1 * Presentation on Routing DECnet Phase V. -------------------------------------------------------------------------------- Commentaires : Disks, files, free spaces and fragmentation. Auteur : FOUCHET_F - PETIT_JP Notes : VAX/VMS 1092 / 1270 FRAG_FREE.MAR;1 * Display free space on a disk. FRAG_LIST.MAR;1 * Display files with n extension headers. Page 3 SHOW_LBN.MAR;1 * Display the map area of files. ODS-2.PS_Z;1 * Presentation in French on the ODS 2 structure. -------------------------------------------------------------------------------- Commentaires : Get three longwords from the target and return to the caller. Auteur : OURGHANLIA_B Notes : VAX_VMS 1091 GET3 : Goes into kernal mode, builds an ACB from nonpaged pool, queues a special kernal mode AST to the target process so that the target process can copy the data the acb extension. Then the ACB is turned around and the caller is issued a special kernal mode AST with the data. This code runs in kernal mode at IPL$_ASTDEL and IPL$_SYNCH. While this code is running at elevated IPL, comments will start with two semicolons rather than one for IPL 0. GET3.C;1 * "Brico" utilisant la technique qui consiste à allouer GET3_CLI.CLD;1 * un bout de npp, créer dedans un ACB, y inclure le code GET3_MAC.MAR;1 * à faire exécuter et poster l'AST pour que le process GET_GENERIC.FOR;1 * cible l'exécute. -------------------------------------------------------------------------------- Commentaires : Get caller's number of args Auteur : FOUCHET_F Notes : VAX_VMS 1297 This routine get the number of arguments passed to the routine whitch call it. Previous AP is found using Call Frame (pointed by FP). The call stack frame, described in "VAX Architecture Reference Manual", page 89. GET_NUMBER_OF_ARGS.MAR;1 * Source. IS_ARG_DEFINED.MAR;1 * Test if a parameter is defined. -------------------------------------------------------------------------------- Commentaires : Alias table for X400 adresses for VAX MAIL. Auteur : GERARD_G Notes : VAX_VMS 1288 GMAIL.BCK;1 * Save set. -------------------------------------------------------------------------------- Commentaires : Setup a condition handler at image startup time. Auteur : FOUCHET_F Notes : VAX_VMS 1101 This module setup a condition handler at image startup time. This condition handler will be called by VMS for each error not dismissed by a previous condition handler. To setup the condition handler, just link this module with your code (no call neccessary), and with a routine nammed CONDITION_HANDLER. INIT_HANDLER.DOC;1 * Documentation. INIT_HANDLER.MAC;1 * Source. -------------------------------------------------------------------------------- Commentaires : Adds, removes, modifies or lists "user labels" attached to a file Page 4 Auteur : COLLOT_JY Notes : VAX_VMS 941 This utility gives to the users an opportunity of attaching any kind of comment to a file. $ LABEL [/quals] file(s) [comment] The maximum size of the label is 120 characters. Those labels are kept by the BACKUP utility, but not by COPY. file(s) : Specifies the file (or files) to be searched for adding, modifying or listings labels. You may use the wildcard specification (* or %). DECnet access is not supported. comment : Specifies the label you want to give to your file(s). This parameter is required with the /MODIFY qualifier. /ALL : If this qualifier is present on the command line, all files mat- ching the specification are listed, even those which have no label. /OUTPUT : Specifies a file name for the output listing. /SYMBOL : Creates the named DCL symbol and equates it to the label of the specified file. /MODIF : Specifies that the text provided as the second parameter of the command is to be included as a label for all the files specified by the first parameter. /EDIT : If you use this qualifier, for each file being modified, the old label is dispayed on the screen, and can be edited using the standard keys (arrows, etc...) /LOG : Controls whether the LABEL command displays the file specification of the files being modified. LABEL_ACE.BCK;1 * Save set. -------------------------------------------------------------------------------- Commentaires : How to print a Word file on a LN03 ? Auteur : GALLAUSIAUX Notes : PC 148 LASERPREP.PS;1 * Explanations in french. Postscript format. -------------------------------------------------------------------------------- Commentaires : New functionality for LAT VMS 5.4-1 Auteur : OURGHANLIA_B / FOUCHET_F - JOLIN_R Notes : VAX_VMS 1119 - 1280 / VAX_VMS 1100 KERMIT_CONNECT : This module is an interface to KERMIT, allowing automatic transfert betwheen two VAXes. LAT.COM;2 * \ LATSYM$SETUP.C;1 * > Procedures for LAT / VMS 5.4-1 LAT_CONNECT.COM;1 * / KERMIT_CONNECT.MAR;1 * Equivalent exemple to SET HOST/DTE. LAT_PORTAL.BCK;1 * Connect two VAXes via 2 async. ports with Ethernet. -------------------------------------------------------------------------------- Commentaires : Open the MAIL file from an other user. Auteur : OURGHANLIA_B Notes : VAX_VMS 1187 MALL : This example demonstrates using the callable interface to VMS MAIL to move messages from one folder to another. It will also update Page 5 the newmail count field if the NEWMAIL folder is selected. The program will prompt for a username and mailfile name. It will then display a list of folders in that mailfile, allow the user to select a folder, target folder and a message number. MALL.C;2 * Exemple in C using MAIL$USER. COPY_FOLDER.C;3 * Including the current documentation deficencies ... -------------------------------------------------------------------------------- Commentaires : Commands U*IX makedepend for VMS. Auteur : PIERRONNE_J Notes : VAX_VMS 1208 MKDEPEND.BCK;1 * Save set. -------------------------------------------------------------------------------- Commentaires : Physical memory : total, free and in use.. Auteur : FOUCHET_F Notes : VAX_VMS 991 MONITOR_MEMORY.MAR;1 * Source. -------------------------------------------------------------------------------- Commentaires : The QIO interface of NETACP (No documented by DEC). Auteur : FOUCHET_F Notes : RESEAUX 403 / VAX_VMS 1230 NETACP.BAS;1 * Exemple in Basic. NETACP.DOC;2 * Documentation in French. REACH.MAR;2 * Program to probe reachability of a remote node. -------------------------------------------------------------------------------- Commentaires : VAX/VMS Null Printer Device Driver Auteur : COLLOT_JY Notes : VAX_VMS 951 NULDRIVER.MAR;1 * Source. -------------------------------------------------------------------------------- Commentaires : Boot date, Elapse time, Inactivity time, # active process. Auteur : KERMA_G Notes : OISIF.FOR;1 * Source Fortran of the subprogramm.. -------------------------------------------------------------------------------- Commentaires : Set the ownership of a file while the file has been locked by another user. Auteur : OURGHANLIA_B Notes : VAX_VMS 1104 OWNER.B32;1 * Source in BLISS32. OWNER.CLD;1 * ... Define verb owner ... OWNER.MAR;1 * Source in macro-32. -------------------------------------------------------------------------------- Commentaires : Fixes bug and adds new functionality for PARMQUAL. Auteur : OURGHANLIAN_B / PERROT_B Notes : VAX/VMS 678.* / VAX_VMS 1278 This program is designed to be used inside command procedures. Page 6 It parses the arguments passed to the procedure (the DCL Symbols P1 through P8), which are assumed to be in the format of DCL command parameters and qualifiers. PARMQUAL.SAV;1 * Save set (.FOR, .OBJ et .EXE) PARMQUAL.TXT;1 * Documentation. -------------------------------------------------------------------------------- Commentaires : Pipe Driver for VMS. Auteur : OURGHANLIA_B Notes : VAX_VMS 1232 PIPEDRIVR.EXE;1 * Only the executable for VMS 5.4. PIPEDRIVR_V53.EXE;1 * Only the executable for VMS 5.3. -------------------------------------------------------------------------------- Commentaires : How to use SYSMAN to manage the startup procedure. Auteur : LECOMPTEBO_M Notes : VAX-VMS 1300 PRES_STARTUP.PS;1 * Documentation in Postscript. LIST_STARTUP.COM;1 * Full listing of the databases in startup. -------------------------------------------------------------------------------- Commentaires : Exemples of PSI security. Auteur : GERARD_G Notes : DECUS 196 PSI_SECURITY.COM;1 * Procedure for PSI security. -------------------------------------------------------------------------------- Commentaires : Display Username and Personal name form VMSMAIL_PROFILE.DATA Auteur : PETIT_JP, DIAKONOFF_N Notes : PROGRAMMATHEQUE 81 QUI.BCK;1 * Full distribution in French. -------------------------------------------------------------------------------- Commentaires : File attributs recovery and select a file. Auteur : QUIVOGNE_L Notes : DECUS 188 RETURN_FILE_ATTRIBUTES.COB;1 * Source Cobol. RETURN_FILE_ATTRIBUTES.OBJ;1 * and the Objet. FIND_FILE_WITH_SELECTION.COB;1 * Select a file with some attributs. FIND_FILE_WITH_SELECTION.OBJ;1 * Objet. -------------------------------------------------------------------------------- Commentaires : Select the path with VMS 5.4 et VMS FMR (Futur Major Release). Auteur : OURGHANLIA_B Notes : VAX_VMS 1144 1340 SELECTPATH : VMS has added preferred path selection QIO to V5.4 of VMS. This MACRO program provides a DCL foreign command line interface to this QIO. PREFER : VMS Version 5.4 allows you to select a preferred disk path at mount time or force a preferred disk path (move a disk that is already mounted to its preferred path) through the use of a new $QIO function called IO$_SETPRFPATH and its function modifier IO$M_FORCEPATH. This applies to RA series disks and Page 7 disks accessed through the MSCP server. Although VMS does not provide preferred path functionality at the command line level, this article contains a MACRO program called PREFER.MAR and its DCL command line interface PREFER.CLD which provide access to the IO$_SETPRFPATH QIO. Future version of VMS will contain these programs in SYS$EXAMPLES. HSCCMD : This program will issue one command to an HSC via a DUP connection. The command to be sent is read via the DCL foreign command line interface. This allows "one-liners" to be issued from command procedures (and batch jobs). SELECTPATCH.MAR;2 * Source. PREFER.CLD;1 * \ PREFER.MAR;1 * > functionality for CRONIC V600 [VMS FMR]. PREFER.TXT;2 * / HSCCMD.MAR;1 * Source. -------------------------------------------------------------------------------- Commentaires : Open a window and define a cursor. Auteur : FOUCHET_F Notes : DECWINDOW 139 SHOW_CURSOR.C;2 * Source in C. SHOW_CURSOR.DOC;1 * Documentation in French. -------------------------------------------------------------------------------- Commentaires : Search and find the meaning of a message by the number. Auteur : FOUCHET_F Notes : VAX/VMS 1041 SHOW_ERROR.COM;4 * DCL procedure. SHOW_ERROR.DOC;1 * Documentation. -------------------------------------------------------------------------------- Commentaires : Recover the Secondary Status Value. Auteur : OURGHANLIA_B Notes : RESEAUX 81 STV.MAR;3 * Source. -------------------------------------------------------------------------------- Commentaires : Trace errors in programms. Auteur : FOUCHET_F Notes : VAX_VMS 1113 TRACEBACK : This module is designed to replace DEC default traceback handler. It's called by VMS when an unhandled error occurs. Activation is made trought the LIB$TRACE logical (witch point to this file). As decribed in the VMS Microfiches (module TBKSTART), a special vector must be present at address 0. This vector describe the data portion of the image (starting and ending address) and the image entry point (in the third longword). It also seems to be neccessary to define the image first transfert vector to this entry point. TRACE.BCK;1 * Save set. TRACE.DOC;1 * Documentation. -------------------------------------------------------------------------------- Page 8 Commentaires : Procedure to find very easily a title into NOTES. Auteur : FOUCHET_F Notes : DECUS 186 UPDATE_NOTES_TITLE.COM;1 * Procedure DCL. -------------------------------------------------------------------------------- Commentaires : VMS 5.4 (210 pages) and VMS 5.4-1 in french. Auteur : OURGHANLIA_B Notes : VAX_VMS 1004 et VAX_VMS 1119 V54_DECUS_ALL.PS;1 * French presentation in Postscript for 5.4. V541_DECUS.PS;1 * French presentation in Postscript for 5.4-1. NEW_MEMMGT.PS;1 * French presentation of NEW MEMORY MANAGEMENT. -------------------------------------------------------------------------------- Commentaires : Memory management for VAX/VMS in french. Auteur : PETIT_JP Notes : VAX_VMS 1189 ET VAX_VMS 1136 VIRTUAL_MEMORY.PS;1 * Presentation in Postscript (1134 blocks). -------------------------------------------------------------------------------- Commentaires : More informations about the locked files and the used files. Auteur : FOUCHET_F / MANET_P Notes : PROGRAMMATHEQUE 93 VMSLOCKS : This program will list all F11B$a file locks for a specified file. This is usefull to display all processes that have a file open on a cluster. RMSLOCKS : This program will list all RMS$ file locks for a specified file. This is usefull to display all processes that have a file open by RMS on a cluster. SHOW_CALLED_FILES : This program will list the files used by a DCL procedure. VMSLOCKS.MAR;1 * Utilisation des locks XQP. RMSLOCKS.MAR;2 * Utilisation des locks RMS. SHOW_CALLED_FILES.MAR;1 * Visualisation des fichiers utilisés par une proc. DCL. -------------------------------------------------------------------------------- Commentaires : VMSTAR : a TAR reader/writer for VMS. Auteur : FAUCONNET_A Notes : VAX_VMS 948 VMSTAR is a TAR reader/writer for VMS. It can read archives ("tarfiles") created by the Un*x command "tar" and also create such archives. Tarfiles can be disk files or directly on tape. TAR2VMS and VMS2TAR have been merged into a single program. Made several improvements, bug fixes and message cleanup. For those who know TAR2VMS and VMS2TAR, the main differences are: o everything is now in a single program that can be used for extracting files from tar archives, listing the contents of tar archives or creating them. Page 9 o VMSTAR now accepts a `f tarfile' option to explicitely specify the tarfile name (either a VMS file name or a VMS device name). o VMSTAR allows VMS-style wildcarded strings for Un*x-style file names to be specified when extracting from a tar archive. o VMSTAR will attempt to create relative tar archives i.e. archives where filenames are recorded as "./foo/bar/baz" whenever possible. o VMSTAR has a VMS help file (VMSTAR.HLP) that can be added to your HELPLIB.HLB to provide online help. VMSTAR.BCK;1 * Distribution of VMSTAR. -------------------------------------------------------------------------------- Commentaires : Some very usefully programms ... Auteur : BROWN_N Notes : DECUS 188 XCOPY.BCK;1 A program to copy files, with one major improvement on VMS COPY. Should the copy fail (for example, because one file is on a remote node, and the connection is lost), XCOPY returns (to SYS$OUTPUT, and DCL via symbols) sufficient information about the failure to enable the copy to be restarted from the point of failure. Only disk-to-disk transfers are supported. WHO.BCK;1 Invokes a program to display various attributes of processes on the local node, another cluster node, or any other node in the network. If you are running VMS V5.2 or higher, WHO uses cluster-wide system services for efficiency. Otherwise, you can still access other cluster nodes by using the DECnet access methods. WHO was written in response to a need to see which users in a network, where everyone had lots of privileges (developers !) and people tended to increase their base priority because they thought they were important. It has evolved into a general-purpose tool for examining the processes on the VMS systems in your network. PTT.BCK;1 Invokes a program to display and optionally correct various fields of the VMS MAIL user profile data file (VMSMAIL_PROFILE). PTT will normally be run by the system manager (with SYSPRV privilege) to correct problems in users' mail profiles. A non-privileged user can also run PTT, but will only have access to their own profile. TCOPY.BCK;1 A program to copy tapes. Page 10 TCOPY allows direct tape-to-tape copies, on systems with more than one tape drive, or copying of tapes via an intermediate disk file. TCOPY allows you to make exact copies of VMS, Ultrix, diagnostic, and other tapes, without the need for two tape drives. If you have two drives, you can use TCOPY without any extra disk space. SHRIMG_STUFF.BCK;1 MAKE_XFER.COM Makes a transfer vector for all modules in library 'P1'. Assumes a module name is an entry point, which works OK for COBOL and FORTRAN, but may give problems with other languages. After creating the transfer vector, maintain it by hand. Running this file to re-create it will endanger programs already linked with the shareable library. If you do re-run this program, increase the major version of the shareable library to force relinking. NO_SHR_WRT.COM Takes a .MAP file (/FULL) from linking a shareable image, and generates the necessary PSECT_ATTR statements for a link options file to ensure that shareable writeable PSECTs become NOshareable. This is necessary for COBOL/FORTRAN shareable images which reference COMMON data areas. After generating the .OPT file, use it to rebuild the shareable image, and append it to the .OPT files of programs which link with the image. -------------------------------------------------------------------------------- DECUS France 5 Décembre 1991 GRAPHIC APPLICATION SIG CATALOG =============================== Submissions between 1/06/91 to 15/11/91 on The VAX DECUS France. Commentaires : Few abstract of the purpose. Auteur : The person who submits the programm. Notes : See [FRANCE_1991.VAXF91B.NOTES_91B]NOTES_xxxx.yyyy where xxx is the name of the conference (ie DECUS, DIVERS, GRAPHIQUE, HARDWARE, PC, PROGRAMMATHEQUE, RESEAUX, UNIX and VMS); yyyy is four digits ( ie 70 = 0070) -------------------------------------------------------------------------------- Commentaires : This file Auteur : DIAKONOFF_N Notes : PROGRAMMATHEQUE 70 AAA_LIRE_91B_GRAPH.;4 * This file. -------------------------------------------------------------------------------- Commentaires : PLOT_PS V4: A PostScript C graphic library. Auteur : VIBERT_JF Notes : PROGRAMMATHEQUE 98 et 112 PLOT_PS is a degraded version of PLOT_DPS, specifically designed for users not interested by the X Window possibilities of PLOT_DPS. Nevertheless, it is fully PLOT_DPS compatible, except for the X functions. Page 11 PLOT_PS is a library of graphic C functions designed to build PostScript files from C programs. This library allows the production of graphics on a PostScript printer such as the DEC LN03R or any standard PostScript printer, or on an X window using Display-PostScript (DPS). All functions begin with the prefix ps_ and need to have the plot_ps.h header file included. The very first function to be called is ps_iniplot. It opens the postscript file, and allow to choose to plot in a PS file or on a PDS window, or both. PLOT_PS allows to work in both absolute (in cms) and user or subject space. PLOT_4_2.BCK;1 * Save set complet. -------------------------------------------------------------------------------- DECUS France 5 Décembre 1991 PC SIG CATALOG ============== Submissions between 1/06/91 to 15/11/91 on The VAX DECUS France. Commentaires : Few abstract of the purpose. Auteur : The person who submits the programm. Notes : See [FRANCE_1991.VAXF91B.NOTES_91B]NOTES_xxxx.yyyy where xxx is the name of the conference (ie DECUS, DIVERS, GRAPHIQUE, HARDWARE, PC, PROGRAMMATHEQUE, RESEAUX, UNIX and VMS); yyyy is four digits ( ie 70 = 0070) -------------------------------------------------------------------------------- Commentaires : This file. Auteur : DIAKONOFF_N Notes : PROGRAMMATHEQUE 70 AAA_LIRE_91B_PC.;6 * This file. -------------------------------------------------------------------------------- Commentaires : Two conversion programms : DEC et IBM-PC 8 bits Auteur : GARBASI_JP Notes : PC 195 ACDECIBM.C;1 * Source C : Conversion ASCII DEC to PC IBM. ACIBMDEC.C;1 * Source C : Conversion ASCII IBM PC to DEC. -------------------------------------------------------------------------------- Commentaires : More than one Boot in CONFIG.SYS Auteur : PEYRARD_JC Notes : PC 234 BOOT142.ZIP;1 * Compress distribution. -------------------------------------------------------------------------------- Commentaires : Fix for DECstation warm start keyboard problem. Auteur : BROWN_N Notes : PC 167 On a DECstation 200/220 (others ?) and/or Olivetti M250, there is an intermittent problem whereby after a WARM boot (Ctrl-Alt-Del), the keyboard ignores the first keystroke typed. If this is the Ctrl (or Shift) part of (say) a Ctrl-C, the C will be given to the BIOS; otherwise the whole character is ignored. This problem is particularly prevalent on systems with DEPCAs and Page 12 LK250s; for some reason AZERTY LK250s are more susceptible than QWERTYs. Anyway, thanks to a very diligent Digital Field Service person (who is not really responsible for this, but found the fix anyway, bravo, why can't Digital find a few more like him ?), I have a fix for this problem. It won't help people with diagnostics-level passwords, as it is run as part of AUTOEXEC.BAT, butI have found it useful. It is incredibly frustrating to explain to people the 1000's of benefits a move from VT to PC-based word processing will bring if they are going to let a minor thing like this upset them. LK250.BCK;1 * Save set. -------------------------------------------------------------------------------- Commentaires : Supervision of PCs across a DECnet-DOS network. Auteur : BROWN_N Notes : PC 200 SMILEY and MOLE - a PC monitoring system ---------------------------------------- SMILEY and MOLE (apologies to John le Carre, not that I expect he's reading this) are a pair of programs which allow you to monitor a PC across a DECnet-DOS network. You can perform the following functions: - see which files are open on the PC. - look at the top-level COMMAND.COM environment. - set variables in the top-level COMMAND.COM environment (ie, outside any currently running program). - reboot the remote PC (cold or warm start). - display the PC's screen. - if your monitoring system is a DOS PC, you can monitor the screen continuously and type as if you were on the remote keyboard (ZAP mode). MOLE is a small (about 1K) TSR which runs on a DECnet-DOS node. It listens for requests from SMILEY, an interactive program which can be run on another DOS PC or a VAX/VMS system. SMILEY.BCK;1 * Save set (sources, documentation, ...). -------------------------------------------------------------------------------- DECUS France 5 Décembre 1991 ULTRIX SIG CATALOG ================== Submissions between 1/06/91 to 15/11/91 on The VAX DECUS France. Commentaires : Few abstract of the purpose. Auteur : The person who submits the programm. Notes : See [FRANCE_1991.VAXF91B.NOTES_91B]NOTES_xxxx.yyyy where xxx is the name of the conference (ie DECUS, DIVERS, GRAPHIQUE, HARDWARE, PC, PROGRAMMATHEQUE, RESEAUX, UNIX and VMS); yyyy is four digits ( ie 70 = 0070) The French Library Coordinator Page 13 Nicolas DIAKONOFF -------------------------------------------------------------------------------- Commentaires : This file. Auteur : DIAKONOFF_N Notes : PROGRAMMATHEQUE 70 AAA_LIRE_91B_ULTRIX.;5 * This file. -------------------------------------------------------------------------------- Commentaires : File management for U*IX. Auteur : BERENGUIER_J Notes : UNIX 167 CVS12.TAR_Z;1 * Over RCS. RCS55.TAR_Z;1 * Managment versions and tree. -------------------------------------------------------------------------------- Commentaires : Format a floppy disk without privilege. Auteur : VIBERT_JF Notes : UNIX 194 / PROGRAMMATHEQUE 113 FD_UTIL.SHAR;1 * Full kit. -------------------------------------------------------------------------------- DECUS France 5 Décembre 1991 VMS SIG CATALOG =============== Submissions between 1/06/91 to 15/11/91 on The VAX DECUS France. Commentaires : Few abstract of the purpose. Auteur : The person who submits the programm. Notes : See [FRANCE_1991.VAXF91B.NOTES_91B]NOTES_xxxx.yyyy where xxx is the name of the conference (ie DECUS, DIVERS, GRAPHIQUE, HARDWARE, PC, PROGRAMMATHEQUE, RESEAUX, UNIX and VMS); yyyy is four digits ( ie 70 = 0070) The French Library Coordinator Nicolas DIAKONOFF -------------------------------------------------------------------------------- Commentaires : This file. Auteur : DIAKONOFF_N Notes : PROGRAMMATHEQUE 70 AAA_LIRE_91B_VMS.;4 * This file. -------------------------------------------------------------------------------- Commentaires : Full package to create, manage and edit bibliographic databeses. Auteur : VIBERT_JF Notes : PROGRAMMATHEQUE 101 BIBLIO_README.1ST;1 * Abstract. BIBLIO_VMS.BCK;1 * Version VMS au format BACKUP. -------------------------------------------------------------------------------- Commentaires : BROWSER is a tool to read Online documentation. Auteur : ALBERT_JN Notes : PROGRAMMATHEQUE 106 Page 14 BROWSER.ALIRE;1 * Documentation in french. BROWSER.BCK;1 * Save set and documentation in English. -------------------------------------------------------------------------------- Commentaires : HSC Cache Needs Analysis. Auteur : OURGHANLIA_B Notes : VAX_VMS 1521 CACHE_TEST.BCK;1 * Save_set. Read the documentation BEFORE. -------------------------------------------------------------------------------- Commentaires : Test the entry points sending/reading for MAIL. Auteur : BACH_J Notes : VAX_VMS 1355 CALLABLE_MAIL.PAS;1 * Source Pascal. PASCAL$MAIL_ROUTINE.PAS;1 * Declarations. -------------------------------------------------------------------------------- Commentaires : Change via programm the form of a printer queue. Auteur : PELLE_PY (Via COLLOT_JY) Notes : VAX_VMS 1367 CHFORM.BCK;1 * Save_set (All in french). -------------------------------------------------------------------------------- Commentaires : Presentation from BO (our French Guru). French symposium 1991. All are in French and Postscript. Auteur : OURGHANLIA_B Notes : VAX_VMS 1366 DECAVAIL.PS;1 * Layered product DECavail. DECUS_POSIX.PS;1 * POSIX and Digital. DECWINDOWS_V3.PS;1 * DECWINDOWS Version 3. V55_DECUS.PS;1 * VMS Version 5.5. -------------------------------------------------------------------------------- Commentaires : Test a Postscript printer with accent lowercases. Auteur : JOLIN_R Notes : GRAPHIQUE 136 CONFIG_LASER.PS;1 * Test file. -------------------------------------------------------------------------------- Commentaires : New version for the DCL debugger. Auteur : QUIVOGNE_L Notes : DECUS 217 / VAX_VMS 1364 DEBUG_DCL.BCK;1 * Save set complet. -------------------------------------------------------------------------------- Commentaires : Presentation DECnis 500/600 in french. Auteur : GROSSETETE_P Notes : RESEAUX 498 DECNIS.PS;1 * Presentation. -------------------------------------------------------------------------------- Commentaires : Presentation from BO. October 1991. Auteur : OURGHANLIA_B Notes : DECUS_PM_1.PS;1 * Concepts for an open applications. Page 15 DECUS_PM_2.PS;1 * Open system bye DEC on VMS and ULTRIX. -------------------------------------------------------------------------------- Commentaires : Presentation DECRam. Auteur : OURGHANLIA_B Notes : VAX_VMS 1498 DECRAM.PS;1 * Presentation. -------------------------------------------------------------------------------- Commentaires : This program acts as a control panel for a SCSI audio CD player. Auteur : OURGHANLIA_B Notes : VAX_VMS 1398 This program acts as a control panel for a SCSI audio CD player. It creates a workstation window with buttons for playing, pausing, selecting tracks, etc. The program uses the DECwindows toolkit routines to create and manage the display and its widgets (RDD42). DECW$CD.C;1 * Source en C. -------------------------------------------------------------------------------- Commentaires : Recover all informations about a file. Auteur : OURGHANLIA_B Notes : VAX_VMS 1441 / 1475 DIR_SLASH_FULL.C;1 * Source C. -------------------------------------------------------------------------------- Commentaires : WatchDog for a cluster. Auteur : BROWN_N Notes : VAX_VMS 1354 DOG.BCK;1 * Save_set. -------------------------------------------------------------------------------- Commentaires : Look at global buffer hits more closely. Auteur : BROWN_N Notes : VAX_VMS 1376 GBLHIT.BCK;1 * Distribution Save set. -------------------------------------------------------------------------------- Commentaires : Manager for multi-windows. Auteur : QUIVOGNE_L Notes : DECUS 229 GMENU.BCK;1 * GMENU011.A and GMENU011.B (VMS install). GMENU.TXT;1 * Documentation in french. -------------------------------------------------------------------------------- Commentaires : HOT_FILES with multi-processors. Auteur : OURGHANLIA_B / FOUCHET_F / PANNETIER_AM Notes : VAX_VMS 966 HOT_FILES_SMP.B32;1 * Source Bliss. HOT_FILES_SMP.MAR;1 * Source MACRO-11. -------------------------------------------------------------------------------- Commentaires : Presentation : Lock Manager VMS. Auteur : COLLOT_JY Notes : VAX_VMS 1409 Page 16 LCKMGR.PS;1 * Presentation. -------------------------------------------------------------------------------- Commentaires : SUBMIT/USER without a priviligied account. Auteur : PELLE_PY (Via COLLOT_JY) Notes : VAX_VMS 1367 LCTBATCH.BCK;1 * Save_set. -------------------------------------------------------------------------------- Commentaires : LOG_PORT is a small program to allow the terminal server and port id to show up in the accounting file. Auteur : BROWN_N Notes : DIVERS 165 LOG_PORT.BCK;1 * Full kit. -------------------------------------------------------------------------------- Commentaires : Automatic connection in MAIL if new mail. Auteur : QUIVOGNE_L Notes : VAX_VMS 1423 MAIL_INSPECT.COM;1 * Generate file for COBOL sources. -------------------------------------------------------------------------------- Commentaires : Multi Yield Editor based on TPU version 1.1. Auteur : BERENGUIER_A Notes : VAX_VMS 1092 It is my eve, this is for emulate all fonctions than i use on edt. M U L T I Y I E L D E D I T O R Increase yield of programmers by decrease the hit of keys. Many COMMANDS : Ascii, Display_Character, Edit, Format_Help, Format_Ident, Format_Isole_Word, Format_Word, Globalset_Start_Line, Hextype, Include, Indent_Columns, Indent_Tab, Load_Selected, Macro, Rol_Edit, Scratch, Sort_Buffer, Substitute, Translate_Spaces_To_Tabs, Translate_Tabs_To_Spaces, Word_Column, Word_Mcolumn, Zcnl, Znl. KEYS_FUNCTIONS : Assign_Go_Buffer, Blue_Keypad, Date, Get_Lis, Get_Log, Get_Ruler, Goto_Last, Go_Buffer, Make_Signature, Mye_Cmd, Swap_Char, Toggle_Screen_Update, Toggle_Tabs, Toggle_Timer, Toggle_Wrap, Word_Format, Word_Space, Word_Toggle. MYE_TPU.BCK;1 * Distribution of MULTI_YIELD_EDITOR. -------------------------------------------------------------------------------- Commentaires : Utility to collect information about the size and ownership of files. New functionnalities. Auteur : RICHARD_M Notes : VAX_HARDWARE 216 This program examines the file header file (INDEXF.SYS) to retrieve information about the largest files strored on disk and who owns them. Back link pointers in the INDEXF.SYS file are followed to obtain a complete directory specification. Page 17 NEWFILES.BCK;1 * Save set de la distribution. -------------------------------------------------------------------------------- Commentaires : OPCOM catcher. Auteur : OURGHANLIA_B ; BROWN_N Notes : VAX/VMS 1445 OPCOM_CATCHER.TXT;1 * Original from BO. OPCOM_CATCHER2.TXT;1 * Modifications from NB. -------------------------------------------------------------------------------- Commentaires : Presentation "Techniques to optimize RMS". Auteur : LECOMPTEBO_M (Mathieu LECOMPTE-BOINET) Notes : VAX_VMS 1390 PRES_RMS.PS;1 * Presentation. -------------------------------------------------------------------------------- Commentaires : PSICOPY Version 2.1. New functionalities. Auteur : GERARD_G Notes : DECUS 196 PSICOPY021.A;3 * PSICOPY Version 2.1. PSICOPY_BOOT.MAR;1 * Bootable version to get the full PSICOPY kit. -------------------------------------------------------------------------------- Commentaires : Test the CPS 4.0 on APPLE. Auteur : ALBERT_JN Notes : VAX_HARDWAE 226 PS_STATUS.COM;1 * Test file. -------------------------------------------------------------------------------- Commentaires : Remote" cat via a TCP connection. Auteur : FAIPOT_L Notes : RESEAUX 502 RCAT.C;1 * Source C with english documentation. -------------------------------------------------------------------------------- Commentaires : RECALL more than 40 DCL commands. Auteur : QUIVOGNE_L Notes : VAX_VMS 1457 RECALL.COM;1 * Construct RECALL.EXE (Foreign command). -------------------------------------------------------------------------------- Commentaires : Patch for fixe a RMS-F-IRC on MAIL.MAI Auteur : OURGHANLIA_B Notes : VAX_VMS 1392 RMS_FIX.EXE;1 * Patch generator. -------------------------------------------------------------------------------- Commentaires : Fixe a bug on SET VOLUME/REBUILD=FORCE Auteur : OURGHANLIA_B Notes : VAX_VMS 1432 SET.CLD;1 * For DCLTABLE. SET.EXE;1 * Executable V5.4-2R02 -------------------------------------------------------------------------------- Commentaires : Forces the target to set itself in NO RESOURCE WAIT MODE. Auteur : PANNETIER_AM Page 18 Notes : VAX_VMS 1357 SET_PROC_NO_RWMOD.MAR;1 * Source in MACRO-32. -------------------------------------------------------------------------------- Commentaires : Utility for SHUTDOWN the system like the startup. Auteur : PERROT_B Notes : VAX_VMS 1469 SHUTDOWN$README.1ST;1 * Documentation. SHUTDOWN.BCK;1 * Full kit. -------------------------------------------------------------------------------- Commentaires : Symbolize offsets, bit mask, bit position, field size. Auteur : FOUCHET_F Notes : VAX_VMS 1319 SYMBOLIZE_MACRO_CODE.TPU;1 * Source TPU file. -------------------------------------------------------------------------------- Commentaires : UCX security Auteur : GERARD_G Notes : RESEAUX 488 TCPFILTER.MAR;1 * Source in MACRO-32. -------------------------------------------------------------------------------- Commentaires : Translate characters MCS <---> DOS ASCII Auteur : BROWN_N Notes : VAX_VMS 1350 TRANSLATE.BCK;1 * Backup (Source, objet,exe, .HLP et .CLD) -------------------------------------------------------------------------------- Commentaires : Recovery deletes files. French version. Auteur : GARBASI_JP, BROWN_N, LECOMPTEBO_M (From COLLOT_JY) Notes : VAX_VMS 1428 ; URGENT 128 UNDEL.BCK;1 * Full kit. -------------------------------------------------------------------------------- Commentaires : Version number of an image. Auteur : KERMA_G Notes : RESEAUX 461 VERSION.COM;1 * DCL procedure. -------------------------------------------------------------------------------- Commentaires : Set to 0 the LTA number. Auteur : SPITALIER_A Notes : VAX_VMS 1483 ZEROLTA.COM;1 * DCL procedure. -------------------------------------------------------------------------------- ========> [VAX91B.FTS]AAAREADME.TXT;1 <======== FTS 1.0 Release Notes ===================== Overview: --------- The Functional Testing Suite (FTS) is a do-everything utility for monitoring and controlling VMS systems. The philosophy here is that everytime I want to do something under VMS, and there's no command to do it, I'll write it myself and add it to FTS. It started out as a monitor for images which I didn't have source code for (like UCX applications) and grew into a sort of grab-bag of hacks. FTS (Functionality Testing Suite, aka Futz) is a utility program which provides services not offered by the standard VMS distribution. The only file required is FTS.EXE which should be installed as a foreign command (ie. "$ FTS :== $disk:[dir]FTS.EXE"). WARNING!!! FTS is an rather brutish program which may very well do nasty things to your system, least of all crash it. Don't use this program unless you think you know what you're doing! Comments and additions are cheerfully accepted: Bruce R. Miller TGV, Inc. 603 Mission St. Santa Cruz, CA 95060 (403) 427-4366 Internet: MILLER@TGV.COM New and Changed Features: ------------------------- ALONONPAGED [/size=n] Allocate some nonpaged pool. If no size given, 512 is assumed. A 12-byte system header including allocated size is presumed. DEANONPAGED S0addr [/size=n] Deallocate some nonpaged pool. If no size explicitely given, The size in the system header is used. CRASH [/PID=pid] Crash the system. The /PID qualifier specifies the ID of the process to blame, but is not currently implemented. The command crashes the system by placing a -1 in the PC. HALT Execute a HALT instruction in KRNL mode. Sometimes quicker than reaching back behind the machine for the HALT button. DEPOSIT location value [/PID=pid] Write a value to a location in memory. Runs in kernel mode but does a kmode PROBER/W first. /PID option not implemented, yet. EXAMINE location [/PID=pid] Fetch a value from memory. Fetches from kernel mode but executes a PROBER instruction first. /PID option not implemented, yet. Page 2 EXIT/QUIT/^Z Leave the FTS utility. FORCEX [pid] [/rcode=x] Forces image exit of a given process with the given status. SS$_NORMAL assumed if /RCODE not specified. HELP Currently prints a simple help message. Needs to be improved. Can't use standard VMS help facility since that would require another file and I want to limit things to FTS.EXE. LOAD JASMON Installs the JASMON code in P1 space and takes over the P1 system service vector. Jasmon resides in P1 space and comtinues to operate across image activations. Use WATCH to monitor service, UNWATCH to stop monitoring them, and UNLOAD JASMON to restore the process to normal. WATCH SS service Intercepts calls to a particular system service. For example, "WATCH SS TRNLNM" monitors logical name translation. WATCH SS QIO[W] device [/STYLE=NULL|DEFAULT|TGV|UCX] Intercepts $QIO[W]s to a particular device (ie. DK: or INET:). The /STYLE switch controls the formatting of P1 though P6. WATCH RMS service Intercepts calls to a particular RMS service. For example, "WATCH SS OPEN" monitors RMS file opens. UNWATCH SS service Disable monitoring of a system service and restore P1 dispatch vector. UNWATCH RMS service Disable monitoring of an RMS service and restore P1 dispatch vector. UNLOAD JASMON Uninstalls the JASMON code from P1 space and restores the P1 system service vector to it's previous state. Currently supported system services: ASSIGN,CANCEL,CANEXH,CANTIM,CANWAK,CHKPRO,CRETVA,DASSGN,DEQ, ENQ,ENQW,GETLKI,GETLKIW,LKWSET?,QIO,QIOW,SETIME,SETPRT,TRNLNM Currently supported RMS services: CLOSE,CONNECT,CREATE,DELETE,FLUSH,GET,OPEN,PUT LOAD XDT Install XDelta and invoke it. Works even if system was not booted with XDelta. Caution: XDelta will cause LAVC nodes to crash with CLUEXIT run for more than 20 seconds. You can use the EXAMINE and DEPOSIT commands to modify memory in a cluster. NOOP Does nothing. Doesn't even execute a NOOP command. SET PAGE addr [size] /PROTECTION=prot {[/PID] [/REFCOUNT]} Modify a memory page in some way. /PROT sets the page protection bits in the PTE to the value specified by the given string (eg. "URKW"). /PID and /REFCOUNT not yet implemented. Size only used for process pages. Page 3 SHOW DEFAULT [pid] Print the Default Directory string for the given process SHOW ERROR hex_code Print the text of an error signal. SHOW ETHER List protocols assigned to the EtherNet card. Not Yet Implemented. SPAWN [command-line] Spawn a CLI process and optionall execute a command. Currently broken, but not interesting enough to fix. VERSION Display information about this FTS version, including authors. WAKE [pid] Wakes up a given process. WATCH DEVICE device [/FDT] [/START] [/ALTSTART] [/CANCEL] [/IOPOST] Monitors the given device by patching it's DDT. Interactive utility; type any key to exit. /FDT prints calls passing through the Function Decision Table. /START intercepts the device's StartIO routine. /ALTSTART intercepts the device's alternate StartIO routine. /CANCEL monitors device request cancellations. /IOPOST plugs the IOC$IOPOST interrupt vector and watches it for completion of requests for this device. Type any key to exit the monitor. Take care in monitoring disk and terminal devices with this comand. Note: A conditional assembly in a second version of JASMON here allows the $setprv service to appear to always indicate a privileged envrionment. This is done to allow one to set up a mousetrap for checking code for covert behavior by making it believe it is running in a fully privileged environment (when hopefully it is not). The VMS SET WATCH command should be used in such a situation as well to monitor RMS operations, to tell what files are being accessed (or attempted). ========> [VAX91B.F_GETLKI]AAAREADME.TXT;1 <======== USE AT YOUR OWN RISK. NO WARRANTY OF ANY TYPE IS PROVIDED BY ANY PERSON OR ENTITY. USE AT YOUR OWN RISK. NO WARRANTY OF ANY TYPE IS PROVIDED BY ANY PERSON OR ENTITY. F_GETLKI has been tested through VMS 5.4-2. The RMS lock searching feature uses undocumented internals of RMS and is therefor subject to failure without notice (specifically, if the RMS record lock resource names are ever changed). The .CLD file assumes that UTIL_EXE is a logical name where F_GETLKI.EXE can be found. Most of the detail on what this program does and how to use it are in the .HLP file. CMEXEC privilege is required, as well as SYSLCK in most cases. AAREADEM.1ST this file F_GETLKI.CLD the DCL command line definitions for F_GETLKI F_GETLKI.EXE the executable F_GETLKI.FOR the source F_GETLKI.HLB a sample help library F_GETLKI.HLP the help file text, to be put into an .HLB by LIBRARIAN R. Koehler 1100 West St. Laurel, MD. 20707 ========> [VAX91B.GCE91B]AAAREADME.TXT;9 <======== Miscellaneous things from Glenn Everhart [.analy] AnalyRim program (combined spreadsheet and relational DBMS, for VMS, Unix, and AmigaDos. Also AnalytiCalc spreadsheet for unix (Sun executables). AnalyRIM has a new graphics command making it trivial to obtain high quality plots of spreadsheet data while still in AnalyRIM using GnuPlot (V3.0, included prebuilt for VMS) as the plotting engine. Most of the capabilities of GnuPlot can be used. [.anunewsmods] Compendium of posted patches for ANU News 6.0-3 since the Spring 1991 tapes. These include the newly released alphas of ANU News 6.1 as well as the 6.0-3 fixes. [.boss] The BOSS multisession monitor, with mods by Tony McGrath to allow it to compile with Gnu C. [.bulletin] Latest BULLETIN software; this is a bulletin system that works like vax mail but allows many to many communications in lots of folders, and can also act as a news reader for net news. [.virtualdisks] Complete virtual disk package. Updates to FDDRV to make it more bulletproof; extensions to many routines. Also initial code for a Sun version of fddrv. Remote and local virtual/crypto/shadow/file/memory disks. Shadowing disk assign now allows both hosts to be specified by LBN so both can be raw devices. Also the fdhostcry4 program (better debugged than it used to be) now adds a more robust /CLEAR option to unjam some stuck I/O that could be caused by injudicious use of STOP/ID. FDdriver has also been made more bulletproof. There have been enhancements and bugfixes to vddriver4ae also to correct a problem that occurred in very high concurrent access situations, and an ASNVD mod which recognizes files which are contiguous by virtue of having only one extent is included, allowing these to be used even where they are not marked contiguous. (Often sysdump.dmp will qualify!) Several bugfixes to VD and FD drivers are included. The older ASNVD version is also present, since the one-extent recognition only works on ODS2 disks. Forbidden_Knowledge.txt Discussion by Glenn Everhart on techniques for intercepting VMS I/O at interesting points, and a few of the things that can be done with such techniques (meant to encourage more of this kind of discussions). [.Kenney] Technical hints from Forrest Kenney on terminal monitoring (including rt: terminals) [.net91b] Lots of bits from info-vax and other net sources. Includes Fortran-to-C translator update, POP3 mailserver for VMS, VNEWS news reader, MOST lister, Gnu Grep, Zip, Bulletin update, ada grammar, much more. Also includes pc based ethernet bridge/router code (use a PC for bridge or router), and pathworks file clients for unix. [.MX123] Copy of the "user contributed" mods for MX. Note these all predate the release of MX 3.0 (in the [.rpi...] tree on this tapeset) and so should be examined carefully to determine if they are helpful with the current MX release. [.uucp_update] Couple of updates to DECUS UUCP 1.3 (from 1.3-2) from Tom Allebrandi and Earle Ake. ========> [VAX91B.GCE91B.BRUREAD]AAAREADME.TXT;1 <======== RSX 91A Submission: This directory contains an update to BRUREAD, a program to read RSX BRU backup sets under VMS. The modifications were applied to G. Kums' submission to the Fall 1990 RSX SIG tape (which in turn came from Adrian Weiler's submission to the U.S. Fall 1989 VAX SIG tape, part 1 (VAX89B1) that appeared in directory [.BRUREAD].) To use this program, simply: $ DEFINE BRUDIR $ SET COMMAND BRUDIR:BRU What documentation there is is in BRU.TXT, which is accessable via the command BRU/HELP (or, of course, your favorite editor). A working knowlege of "real" BRU may be helpful. The modifications in this update are mainly in the area of command interface: * The input spec now simply specifies the input file (I found the old device:backupset format awkward for TPC files). * There is a /BACKUP_SET qualifier, which takes multiple backup set names, with wildcards. * /ZERO qualifier to supress complaints about files whose maximum record length is zero. * /BRIEF qualifier to /LIST, which causes it to display only the backup set name and its size. * An output spec is also accepted, specifying the directory to restore the tape under. The old functionality (still supported) is equivalent to specifying [.]. The directory contains the following files: AAAREADME.1ST This file, for more info see AAAREADME.TXT BRU.CLD Set Command BRU BRU.TXT Short documentation BRUREAD.COM Recompile/relink BRUREAD. BRUREAD.PAS program source written in Pascal BRUREAD.OBJ Object file BRUREAD.EXE Executable build under VMS V5.1-1 BRUMSG.MSG Message/OBJ BRUMSG.OBJ Message object. T. R. Wyant E. I. DuPont de Nemours P. O. Box 27001 Richmond, VA 23261 USA ========> [VAX91B.GPLOT]AAAREADME.TXT;1 <======== 6-DEC-1991 GPLOT is a library of high-level subroutines for use with DEC GKS graphics. You will need DEC GKS full-function software to develop programs using this library. Executables developed with the library can be run on systems with DEC GKS run-time only licenses. EZPLOT is an interactive plotting program which uses this library. It was written by one of our users and is made available here in executable form only. GPLOT includes the following types of routines: Linear and logarithmic axis routines routines for drawing curves with/without error bars curve interpolation routines Legend creation routines Enhanced text output routines (superscript, font-switching, etc.) contour plot routines 3D-surface plot routines routines for vectors with arrowheads bar chart routines Device-selection menu routines/automatic printing Routine for interpreting GKS metafiles To install GPLOT on a VAX which has VAX GKS installed, copy the GPLOT directory tree to a disk with sufficient space (~12000 blocks), then define the logical name GPLOT_DIR to point to directory [GPLOT] on that disk, and the logical name GPLOT_SRC to point to the directory [GPLOT.SRC] on that disk. Add these logical name definitions to SYS$MANAGER:SYLOGICALS.COM so the names will not be lost when you reboot. You should also add the following symbol definition to SYLOGIN.COM: $ EDIT_GMENU:==RUN GPLOT_DIR:EDIT_GMENU.EXE If you need to reduce the amount of disk space used, you can delete all files in the [GPLOT.EXAMPLES] and [GPLOT.DOC] directories and all the ".for" files in the [GPLOT.SRC] directory. You can also delete GPLOT3.* AND GPLOT11.* in [GPLOT]. Use the EDIT_GMENU routine to customize the graphics device menu for your site. You will need the GKS Workstation type numbers from the DEC GKS manuals to add a new device. After customizing the graphics device menu for your site, edit the file GPLOT.HLP to enter site-specific device information, then use the command: $ library/help/create sys$help:gplot gplot.hlp Individual users can create private graphics menus by copying the file GPLOT_SRC:GDINIT.DAT to SYS$LOGIN: and then using EDIT_GMENU to modify it as desired. When GSTART or GMENU are called they will use the menu data from SYS$LOGIN:GDINIT.DAT if it exists. Otherwise the version in GPLOT_SRC will be used. This file should be protected against modification by users since EDIT_GMENU will operate on this file if there is no GDINIT.DAT in the SYS$LOGIN directory. Use EDIT_GMENU from the SYSTEM account to modify the default version of GDINIT.DAT. Documentation on GPLOT is given in the [GPLOT.DOC] directory. It is given in both the source MASS11 form and as a postscript printer file. Example Page 2 routines are in the directory [GPLOT.EXAMPLES]. Users can link to GPLOT by including "GPLOT_DIR:GPLOT/OPT" in their link statements. There is an old version of GPLOT in the main directory (GPLOT3) which is for compatibility with older versions. Delete this unless you have an old version of GPLOT or are converting from an old version of DISSPLA. There is a subdirectory intended for the Unix version of GPLOT. This is not yet in operation, but may be useful for someone doing their own conversion. The source code format on most of these routines is tab format. The new version of the MODIFY command can be used to convert the source code format and comment format if desired. There are some known DEC GKS bugs which affect the operation of GPLOT. One of the current bugs is that software characters are only two-thirds of the correct size, but Postscript hardware characters are the correct size. Thus switching fonts on a postscript printer will result in mismatched character sizes. The other serious bug occurs for circular and elliptic arcs on postscript devices. The GPUSH and GPOP routines do not work when multiple workstations are open. This may be a GKS bug or a GKS design problem. Workstation Independent Segment Storage is not currently working correctly. The only way to add to the plot interactively is to select both the screen and plotter devices initially. There are also bound to be a number of other bugs in GPLOT which have not yet been discovered. Any bugs found in GPLOT should be reported to: Tom Worlton Intense Pulsed Neutron Source Division Argonne National Laboratory Argonne, IL 60439 WORLTON@ANLPNS (BITNET) WORLTON@ANLPNS.PNS.ANL.GOV (INTERNET) ANLPNS::WORLTON (HEPNET) 708-972-8755 ANLPNS DECnet node number is 46.535 ANLPNS Internet node number is 130.202.20.244 GPLOT is the property of the author and the Argonne National Laboratory of the United States Department of Energy. Distribution or sale of this software without the express permission of the author is prohibited. ========> [VAX91B.GRC]AAAREADME.TXT;2 <======== General Research Corporation Scientific Computer Network P.O. Box 6770 5383 Hollister Avenue Santa Barbara, CA 93160-6770 (805)964-7724 (805)967-7094 [fax] The contributing authors are: David W. Deley [.GRC.DAVID...] [.GRC]--------+--[.CONTROLLER] |--[.EDX] |--[.OPTIMIZE] |--[.PRIMES] |--[.PROSE] +--[.RANDOM] [.GRC.CONTROLLER] This is an example of how to get a batch job which may take more than a day to complete to run at night and suspend itself during the day. [.GRC.EDX] The very latest version of the EDX editor which now includes a built-in spelling checker, the ability to edit modules in VMS text libraries, buffer journaling, and bugfixes for VMS 5.3 & VMS 5.4 EDX is a powerful EDT-style TPU based text editor which supports all the major functions of the EDT editor plus many other advanced features not available in the EDT editor or the newer EVE editor. It is intended for users familiar with the EDT editor who would like to switch to a faster, more powerful editor without having to learn a new editor all over again. EDX also supports a WPS-style keypad mode for users who prefer the WPS-style keypad. Following are some of the advanced features of the EDX editor which are not available in EDT or EVE: · Built in spelling checker with 70,000 word dictionary. Spell check a buffer, range, word, or display the dictionary and browse. Includes guessing algorithms and personal supplemental dictionary support. · Edit modules within VMS text libraries. · Obtain a directory listing Include optional /SIZE and /DATE qualifiers. Read in a selected file from the directory listing, delete a selected file, or lock a selected file. · Wildcard search and replace mode, with optional string to exclude as a match, case sensitive or insensitive. Page 2 · List all lines containing a specified string or wildcard pattern along with the corresponding line number. (The EDT 'TYPE ALL' command) · Search for and highlight matching parenthesis. · Lock files, preventing others from editing them while you do. · Sort a buffer, range, or columnar range. · Columnar cut and paste in insert or overstrike mode. · Encrypt a buffer using the American National Standard algorithm X3.92-1981. · Translate a buffer from EBCDIC to ASCII, and vice versa. · Compare two buffers line by line. · Translate DCL symbols and logical names. · Create DCL symbols and logical names. Note that all of the above features are performed within the editor, without spawning a subprocess. EDX is built on the VAX Text Processing Utility (VAXTPU). Users familiar with VAXTPU can dynamically extend the editor's abilities by adding new functions which perform complex tasks. EDX makes this job easier by defining over 40 general purpose functions not available in VAXTPU itself. The EDX editor is also available from the DECUS library as program #V00385. New updates are submitted to the DECUS library. [.GRC.OPTIMIZE] Some code for performing numerical optimizations. Given a function of several variables, find the values for the variables which minimizes the function value. Two methods are presented, the Conjugate Direction Method of Fletcher and Reeves, and Powell's method. [.GRC.PRIMES] Routines for generating prime numbers and for finding the prime factors of a given number. Also a routine for finding the next highest prime given a starting number. [.GRC.PROSE] This is a small collection of a few fun things to read. [.GRC.RANDOM] A paper on computer random number generators, with analysis of several commonly found random number generators including MTH$RANDOM (used by VAX FORTRAN and BASIC) and the standard ANSI C rand() function. Anyone using random number generators will find the research done here most interesting and enlightening. ========> [VAX91B.HG]AAAREADME.TXT;1 <======== Western Kentucky University Fall 1991 DECUS VAX SIG Submission January 12, 1992 All submitted programs by: Hunter Goatley VMS Systems Programmer Western Kentucky University Academic Computing, STH 226 Bowling Green, KY 42101 Voice: 502-745-5251 E-mail: goathunter@WKUVX1.BITNET [.BAT] BAT lets you quickly and easily submit multiple commands to batch queues without creating temporary command files. For example, $ BAT DEL *.TXT;*|RENAME *.TMP *>TXT submits a batch job that sets its default directory to the one current at the BAT command, deletes all .TXT files, and renames all .TMP files. Source: BLISS-32, but MACRO-32 sources also provided [.CVTLIS] CVTLIS converts CD-ROM VMS source listings back to .B32, .MAR, or .C files for easy reading. Source: MACRO-32 [.DCL_RECALL] DCL_RECALL is a program that will apply my DCL command recall patch to DCL.EXE. It works for *all* versions of VMS. The patch allows the DCL RECALL command to recall as many as 62 commands, instead of the default 20. Source: MACRO-32 [.GETCMD] GETCMD lists the DCL command recall buffer for any process on the system. Source: MACRO-32 [.JNET_LINKWATCH] JNET_LINKWATCH runs as a detached Jnet process that checks link connections and reports link failures via operator alarms and optional mail messages. Requires Jnet to run. Source: BLISS-32, but MACRO-32 sources also provided [.RCARD] RCARD reads DECwindows CardFiler files and displays them on normal VT terminals (non-X terminals). Works with DECwindows and Motif v1.0. Page 2 Source: VAX C (can also be compiled with GNU C) [.SET_PRCNAM] SET_PRCNAM allows you to set the process name for any process on the system. Source: MACRO-32 Internet/BITNET sites can retrieve many other programs via e-mail by sending e-mail with the body HELP and DIR ALL (on separate lines) to FILESERV@WKUVX1.BITNET. The following lists all packages available as of January 12, 1992: ================================================================================ FILESERV@WKUVX1.BITNET Western Kentucky University Last updated: 2-JAN-1992 21:00 ================================================================================ The following VMS programs and files are available from the Western Kentucky University file server (FILESERV@WKUVX1.BITNET). To retrieve one or more packages, send e-mail with the body consisting of the following command: SEND package-name Multiple commands may be specified by putting each command on a separate line. In addition to SEND, HELP and DIR are also supported. For more information on a particular package, send DIR package-name. Package Name Description ------------ ----------- APRT Lee Gleason's Change Protection on Pages in Memory BAT BAT - Easily execute multiple commands in a batch queue CD_ROM Read High-Sierra format CDs under VMS CLRREF Program to clear the owner fields for a device (Gavron) COMPRESS UNIX-compatible compress CVTLIS Converts CD source listings to BLISS, MACRO, or C source DCLKEYS Routines to define DCL keys from a program DCL_RECALL DCL patch to allow recall of more than 20 commands DECW_COOKBOOK DECwindows Cookbook (PostScript) DISM32 Andy Pavlin's DISM32 VMS disassembler DVIDVI VMS port of Tom Rokicki's DVIDVI FLIST TPU-based directory and file manager GETCMD Display the recall buffer for another process GREP VMS port of GNU grep, egrep, & fgrep (w/ on-line help) GREP_EXE GNU grep, egrep, & fgrep executables (w/ on-line help) INVISIBLE Ehud Gavron's INVISIBLE: Hide your process on the system JNET_LINKWATCH Periodically checks to ensure BITNET links are connected KEYS Lee Gleason's Process-Permanent Action-key routines LABELS TPU procedure to renumber MACRO local labels LASERV2_3 PostScript symbiont LOGIN MACRO program to replace most of LOGIN.COM LZW LZW compression/decompression programs for VMS MXSUM Generate summaries from Message Exchange (MX) files NEWSLETTER TeX macros for formatting newsletters PBMPLUS VMS port of Portable BitMap routines PBM_TEX Convert Portable Bitmap to TeX .PK font PRCPRV Grant privileges to another process (Ehud Gavron) Page 3 RAMDRIVER Gerard K. Newman's RAM disk driver RCARD Display DECwindows Cardfiler cards on VT terminal SED VMS port of GNU sed (stream editor) (w/ on-line help) SED_EXE GNU sed executable (w/ on-line help) SET_PRCNAM Change the process name for any process on the system STB Display contents of symbol table files (.STB) SWIM SWiM v2.0 -- a multi-session windowing package for VMS TQE Display Timer Queue Entries (TQEs) (Lee Gleason) TURBO Locks shareable images into memory for faster access UNMACRO Interactive disassembler for VMS (Robert Chojnacki) UUCODE UUENCODE/UUDECODE - two versions: Pascal and C VMS_SHARE Packages source files into files suitable for mailing WATCH Watch another terminal XDVI TeX .DVI previewer for DECwindows ZIP-UNZIP Zip v1.0 & UnZip v4.1 for VMS, DOS, UNIX, & OS/2 ZIP_EXE Zip and UnZip executables (w/ on-line help) ZOO210 Sources for ZOO v2.10 FILESERV Manager: Hunter Goatley, goathunter@WKUVX1.BITNET ========> [VAX91B.JBAKER]AAAREADME.TXT;1 <======== The following are a list of subdirectories and a short description of what is contained in each. Some changes may be required due to the location of files and related routines (obviously). Hopefully any of these can be done with the least amount of effort. All higher level programs are documented internally to help any user that may want to modify any of the code. If a user does modify any code so that it works better I would appreciate a copy. All work with any version of VMS (as far as I know, unless stated otherwise). [.CONFIRM] - Utility to keep that pain in the rear from saying that they did not get some important message. Some new qualifiers have been added to confirm to allow messages to become reminders at times. Also fixed a security hole in the program. Also not as stringent to file names. [.LIST] - A username phone list that allows user modification. The new version of LIST is version 2.0-A. There was a bug when adding a username that matched up with the beginning of a longer username. Also some input modifications. [.NEURAL_NET] - A toy neural network that uses backpropagation to learn the exclusive or (XOR). Also some research documents. [.SHOWCUSERS] - A modification of an earlier DECUS release. [.USERCOUNT] - A DCL command procedure used in identifying a user's "other" interactive processes across the cluster. A rewrite of previous program. [.VERSION] - A utility that displays the current version of software whether it be personal files, layered products or the version of the operating system (NOT THE FILE NAME VERSION). This does not require the SYSTEM MANAGER to update any files. There have been a few internal mods to the previous version of VERSION. I think you will really like this one. I have other projects that I had hoped to include in this submission, however, time has been limited around here in the past year. Hopefully I can get those out next time. If there are any questions or problems contact: JONATHAN C. BAKER NAVAL SURFACE WARFARE CENTER CODE N23 DAHLGREN, VA 22448 (703)663-8705 ========> [VAX91B.LEVINE]AAAREADME.TXT;1 <======== MACRO PRE-PROCESSOR Michael N. LeVine Naval Weapons Center Code 3511 China Lake Ca 93555 (619)939-2614 avn 437-2614 LEVINE%FIDLER.DECNET@NWC.NAVY.MIL Abstract This macro PRE-PROCESSOR is provided to allow the user to write code that can easily modified for multiple environments, conditions, etc simply by changing parameters at the beginning of his code. Capabilities included are: macros, conditional assembly, loops, automatic label generation, including other files, macro directive nesting, etc. A program written for the macro PRE-PROCESSOR consists of directive declarations and substitution operations. directives are to be on lines by themselves (no source code). Substitution operators can be almost anywhere. Two output files can be generated, a list file(.LIS) and a resulting source file (.SRC) . The following is a summary of directives, substitution operators and predefined variables: *COMMENT *ENDCOMMENT *MACRO(name) *ENDMACRO *DOMACRO(name)(arg1)(arg2)(arg3)(arg4)...(arg10) or *name(arg1)(arg2)(arg3)(arg4)...(arg10) *IF(expression) *ELSEIF(expression) *ELSE *ENDIF *SET(var=value/string/logical expression) *REPLACE(var=value/string/logical expression) *DEFAULT(var=value/string/logical expression) *DELETE(var) *REMOVE(var) *DO(idx=start expression,end expression[,increment expression]) *ENDDO *LIST(name) *ENDLIST *RESET(name) Page 2 *MLIST(name,name,....name) *ENDMLIST *OPTION(option_var=value/string/logical) *END *EXIT *DUMP *INCLUDE(filename) *PAGE *ERROR('msg') *TRACEBACK *OPEN(expr,filename) *APPEND(expr,filename) *CLOSE(expr) *REDIRECT(expr) $varname$ $LABEL$ $LABEL0$ $LABEL1$ $LABEL2$ $LABEL3$ $LABEL4$ $LABEL5$ $LABEL6$ $LABEL7$ $LABEL8$ $LABEL9$ $INPUTLINE$ $DEF(varname)$ $TYPE(varname)$ $LENGTH(varname)$ DATE FILE TIME VMS=VMS (VAX/VMS only) or UNIX=IRIX (SGI IRIX ) VAX=VAX (VAX/VMS only) or SGI=SGI (SGI Irix) LANGUAGE=NONE or Language name ========> [VAX91B.LOMASKY]AAAREADME.TXT;1 <======== AAAREADME.DOC 12/03/91 Brian Lomasky c/o TERADYNE, INC. 321 Harrison Ave., Mail Stop H87. Boston, MA 02118 (617) 422-2259 DEC's AUTHORIZE utility has two reporting options for the SYSUAF.DAT file: 1) Too little (AUTHORIZE LIST/BRIEF) 2) Too much (AUTHORIZE LIST/FULL) This is almost useless for meeting the system manager's requirements of maintaining and monitoring the SYSUAF and its users. -------------------------------------------------------------------------------- SYSUAF V5.00 is a reporting program for the SYSUAF and RIGHTSLIST data files. Simply turn on READALL (or equiv) privilege and run SYSUAF.EXE. (Do NOT install this program with privilege; otherwise, any user could execute it). A menu of reporting options will be displayed. The best way to see what is available is to try them and see what data is displayed. You can print reports either to the screen, to a data file (SYSUAF.LIS), or to create a DCL command procedure (SYSUAF.COM) which can then be easily edited and then executed. SYSUAF.EXE will try to open SYS$SYSTEM:SYSUAF.EXE and SYS$SYSTEM:NETPROXY.EXE (or SYS$SYSTEM:NETUAF.DAT), unless the logical name of SYSUAF and/or NETPROXY (or NETUAF) is defined, in which case the SYSUAF.EXE program will try to open the SYSUAF and/or NETPROXY (or NETUAF) files pointed to by the logical name(s), respectively. AAAREADME.DOC is this file. SYSUAF.BAS is the source code for the main program (written in VAX BASIC V3). SYSUAF.OBJ is the compiled source code SYSUAF.EXE is the executable file for the main program. TRANSFER_PWD_TO_NODE.BAS is the source code for the password-copying program which is executed by the command file created by the SYSUAF.EXE report option "L" (written in VAX BASIC V3). TRANSFER_PWD_TO_NODE.OBJ is the compiled source code TRANSFER_PWD_TO_NODE.EXE is the executable file for the password-copying program (which must reside in a directory pointed to by the logical name: TOOLS: in order to be available to the SYSUAF.COM command file created by SYSUAF.EXE) You do not need the TRANSFER_PWD_TO_NODE.* files if you never select the "L" option on the SYSUAF menu. You should not need to recompile or relink either of the executables unless you need to change the features of the program. (Instructions for compiling and linking SYSUAF are contained at the beginning of the source code). These Page 2 programs have been tested on VMS V4.6, V4.7 and V5.1, V5.2, and V5.3. Special note on report option "K": Report option "K" is used to copy all SYSUAF.DAT data (except for any encrypted password data - which is handled by the "L" option) for selected users (based upon the responses to the other SYSUAF prompts) from one node's SYSUAF.DAT to another node's SYSUAF.DAT. It does this by creating a command file, which when executed, will copy the account data. You will be prompted as to whether you want to copy only usernames which do not have a matching username (as yet) on the remote node or whether to copy data for all selected usernames (based upon the responses to the other SYSUAF prompts). Normally, you would run this option and then run option "L" to create the two SYSUAF.COM command files which will then be subsequently executed, as follows: 1) Copy the SYSUAF.COM command file produced by the report option "K" to the remote node and execute it on the remote node to add the required new accounts (less passwords). 2) Then execute the command file produced by the report option "L" on the local node to copy the encrypted password information from the local node's accounts to the accounts on the remote node. The command file will prompt you for the name of the remote node to be updated. Besides the usual SYSPRV (or equiv) privilege that is required to run this utility on the local node, you will also need a proxy from the local node to a similarly-privileged account on the remote node in order for the program to open both nodes' SYSUAF.DAT files for the transfer operation. Special note on report option "L": Report option "L" is used to copy the encrypted password information from one node's SYSUAF.DAT to another node's SYSUAF.DAT. It does this by creating a command file, which when executed, will copy the data. You will be prompted as to whether you want to copy only passwords whose usernames do not have matching usernames (as yet) on the remote node or whether to copy passwords for all selected accounts (based upon the responses to the other SYSUAF prompts). Note that the command file created by this option will attempt to execute a utility called TRANSFER_PWD_TO_NODE.EXE which is located in a logically-named directory called TOOLS: (You must define the TOOLS: logical name and ensure that the executable resides in that directory, prior to executing the command file). This report option does not affect the local node's SYSUAF.DAT file in any way; Only the remote node's encrypted password data in its SYSUAF.DAT file is updated. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Page 3 **** Besides the Username, select the data item(s) to appear on the report: **** A) Access Restrictions Quotas: !) Last Password #1 Change Date B) Account Expiration Date R) ASTLM @) Last Password #2 Change Date C) Account Name S) BIOLM #) Last Interactive Login Date D) Base Priority T) BYTLM $) Last Non-Interactive Login Date E) CLI Name U) CPUTIME %) Number of Login Failures F) CLI Table V) DIOLM ^) Any Existing Userdata G) Default Device W) ENQLM &) Customer-site-specific data H) Default Directory X) FILLM *) Held Identifiers I) Login Command filespec Y) JTQUOTA J) Login Flags Z) MAXACCTJOBS K) Minimum Password Length 0) MAXDETACH L) Owner Name 1) MAXJOBS M) Password Lifetime 2) PBYTLM N) Primary/Secondary Days 3) PGFLQUOTA O) Privileges - Authorized 4) PRCLM P) Privileges - Default 5) SHRFILLM Q) UIC 6) TQELM 7) WSDEFAULT 8) WSEXTENT 9) WSQUOTA ========> [VAX91B.NSWC]AAAREADME.TXT;1 <======== FALL 1991 DECUS VAX SIG TAPE SUBMISSIONS FROM DAHLGREN VAX LUG Naval Surface Warfare Center Dahlgren, Virginia 22448 For each submission, all of the sources are present. The sources, and other files necessary to build the products from their sources, are compressed. See SOURCES.0README for more information. Most of the programs are written in Fortran, and require object library NXXXLIB (whose sources are also present) to link. Each product has a command procedure (named product.BUILD) to build the product from sources. Several of the programs require some site-specific configuring, often edit- ing a .CLD file. I believe everything should work without tinkering if you set your default directory to this directory, and define logical name HERE to be this directory. Submissions from Alan Zirkle, NSWC Code K55 (703) 663-8023 Dahlgren, VA 22448 Just got on DECUServe: "ZIRKLE" SD -- SET/SHOW DEFAULT -- This version of SD is related to Dale Coy's excellent version, in that they both descend from a common ancestor. This incorporates his features, plus several new ones. Read SD.0README and SD.HLP for further information. Small fixes since Spring 1991. LET -- Related to SD. A shorthand DEFINE command for defining logical names. Read LET.HLP for more information. To use, first execute the command $ LET == "$dev:[dir]LET". Small fixes since Spring 1991. USERS -- Continuously-updating cluster-wide display of information about all or selected processes (select by nodes, process types, and/or usernames). Read USERS.HLP for more infor- mation. VGRAPH -- A very, very simple viewgraph producer for PrintServer 20 and 40 printers. Uses PostScript. Read VGRAPH.HLP for more information. To use, first execute $ SET COMMAND VGRAPH. Two sample input files *.VIEW are included. Tailoring for your local print queues is now done in a companion command procedure. Many improvements since Spring 1991. BOXES -- A utility to allow documents and screen displays to easily use the line-drawing characters in the DEC Special Graphics character set on DEC-compatible terminals and printers. You write your document using +, -, and | to construct boxes or line segments, for example: +-----+-----+ | TST | 001 | Page 2 +-----+-----+ and the BOXES utility will translate these characters to the applicable corners, tees, etc. so that solid lines print in the finished document. Read BOXES.HLP for more information. IF_ENDIF -- A command procedure which checks other command procedures for proper nesting of IF/ELSE/ENDIFs. See usage notes and re- strictions in IN_ENDIF.COM. ZMENU -- A utility to produce a menu display inside a command proced- ure. You provide a simple template file, and ZMENU displays it along with a pointer which it moves between your selections based on the user's arrow key input. See ZMENU.HLP for more information. Execute @ZMENU.TEST for a demonstration. NXXXLIB -- Subroutine library needed to link the above programs. Many of the routines may be useful to you in other applications. The library and its sources are in the compressed sources file; see SOURCES.0README for more information. Subdirectory [.OLDSD] contains what may be the original version of the SD utility, from 1979. ========> [VAX91B.POP]AAAREADME.TXT;1 <======== This is the POP3 system for various machines. POP stands for Post Office Protocol and is a means for PCs to access mail stored on servers whose network connections remain up all the time. On VMS the Indiana university POP3 server is here. For the Mac's we have: Eudora 1.2 (requires MacTCP) For the PC's we have POPmail 2.4b1 (or 2.3) (requires a clarkson packet driver) ========> [VAX91B.RAGOSTA]AAAREADME.TXT;1 <======== Fall 1991 DECUS Symposium Release Arthur E. Ragosta RAGOSTA@MERLIN.ARC.NASA.GOV (Internet) MS 219-1 NASA Ames Research Center Moffett Field, Ca. 94035 (415) 604-5558 This directory tree contains new versions of (mostly) previously released software. Included are: ADAM - the ADAM text editor. Updated for EVE 5.3. FPT - FORTRAN Programming Tools. Many program-development and support tools. Some are FORTRAN-specific. GRAPHICS - latest release of the GRAF program. Interactive technical graphics using DISSPLA. Latest release of DISSPLA-based viewgraph program. KRONOS - latest version of the super batch job scheduler. Enhanced, more robust, etc. Also more/improved sample jobs. Also notes and viewgraphs from session VA052 "Automating VMS System Management Tasks". Most files are archived using the LHARC utility provided on the Fall 1990 Symposium tape. ========> [VAX91B.RICHARDSON]AAAREADME.TXT;1 <======== SUBMISSION: VARIOUS SOFTWARE ITEMS FROM COMPASSION INTERNATIONAL AND/OR KEN RICHARDSON - 06-Dec-1991 Submitted by: Ken Richardson Compassion International PO Box 7000 Colorado Springs, CO 80933 Phone: (719) 594-9900 FAX: (719) 594-6271 TELEX: (025)910-380-9380 (CMPASHUN) Easylink: 62868920 Disclaimer: This software is made available to the public with no warranties, guarantees, or liability for its use or any consequences thereof. After all, it's free. However, I wouldn't submit it if I didn't think it worked correctly. And the code written at our site tends to be well-structured, efficient, clean, and debugged. New this year: ENPAGE_HP. Changed: SYSTATUS, INITMODEM, and DIALUPINI. Detailed descriptions: The following are descriptions of most of the files you'll find in this submission. CLOSE_VMS_ACCT.COM We use this command procedure to close our VMS accounting files every month. This facilitates usage analysis and archiving of accounting data by month. Nothing fancy, but if you don't have it, here it is. CONCATENATE_SIXEL.EXE This program concatenates SIXEL graphs side-by-side. At our site, we do Datatrieve graphs of CPU performance statistics. Lots of them. So I wrote this program to minimize paper by printing these graphs in two columns. First we run our REGIS graphs through RETOS, which gives us SIXEL graphs. Then we run the SIXEL graphs through this program. CONCATENATE_SIXEL_EXAMPLE.COM This little command procedure shows the basics of using CONCATENATE_SIXEL. COUNTREC.EXE I got tired of copying files to the null device in order to find out how Page 2 many records they contain (copy/log file.dat nl:), which can be quite slow and resource-intensive with large files, so I wrote this simple record-counting program. If you define it as a foreign command, you can specify the input file on the command line. Otherwise, it prompts you. Wildcards are not implemented yet; however, COUNT_RECORDS.COM provides this. COUNT_RECORDS.COM This procedure allows wild-carded counting with COUNTREC.EXE. We have a COUNT command defined as @CI$COMMAND:COUNT_RECORDS.COM, which lets us type "COUNT filespec" to count records in a bunch of files. DIALUPINI.EXE We use US-ROBOTICS hayes-compatible modems on our dialups (the kind that use the AT command set). They work fine; we use the same lines both for dialing in and for dialing out. However, when the modems power up, they default to sending extra information to VMS (like "RING" and "CONNECT") every time someone dials in. This causes VMS to complain that username RING is trying to break in. So we run DIALUPINI.EXE to tell the modems to be quiet, and everything works much better. DIALUPINI.EXE expects a logical name (DIALUP) to point to the port that needs to be reset, and it expects you to already have allocated the port and set the appropriate speed (assuming you are using autobaud on the port). You might need a privilege to allocate the dialup port, depending on how your ports and system parameters are set. I think it's SYSPRV. For more info about DIALUPINI.EXE, see INIT_DIALUPS.COM. DROIDS.EXE This game lets you get chased by robots on a 24x40 field. Only in a weak moment will I confess who wrote it. It runs efficiently, using only one QIO per screen update and one per input. It requires write access to a CI$GAMES directory, which is where it stores the "droids champions" list (droids.dat). If more than one player will be using the same droids.dat file, you need to SET FILE/PROT=W:RW to the file after the first player creates it. EATCPU.EXE This program consumes an (almost) exact percentage of a VAX's CPU capacity. It is typically used to test the response time of various software packages under controlled load conditions. For example, "How fast (slow) is product X when the CPU is Y% saturated?" If you are considering using a slower processor for an application, response times on slower processors can also be predicted fairly reliably by slowing down the faster processor by the appropriate ratio. EMPTY.SIXEL This "empty" sixel graph is used by CONCATENATE_SIXEL_EXAMPLE.COM. It Page 3 is used as the "left-hand" graph in a concatenation operation in order to indent a SIXEL graph. It has the minimum SIXEL codes needed by CONCATENATE_SIXEL for a successful concatenation operation. ENPAGE.DOC ENPAGE.DOC is a documentation file describing the ENPAGE utility. For more info, see ENPAGE.EXE or read ENPAGE.DOC. ENPAGE.EXE (and ENPAGE_HP.EXE) When we got our nifty new LN03 laser printers, we needed a way to put all that power in the hands of our office staff. ENPAGE is how we did it. New this year is ENPAGE_HP, necessary now that we've got HP Laserjets floating around the VAXcluster. The idea is to provide basic formatting capabilities without resorting to a word processor. (We do have WordPerfect on our VAXes, but often it's faster and easier just to fire up a text editor followed by enpage.) ENPAGE reformats a text document, adjusting margins (left, right, top, & bottom), pitch (both vertical & horizontal), orientation (portrait or landscape), point-size, and stuff like that. It compensates for embedded tabs regardless of the left margin you specify. If you've never encountered that problem, please ignore the previous sentence. For people who write letters, ENPAGE can optionally output the first page separately from the rest of the document. We use this feature to drive two LNO3 printers, one loaded with letterhead, the other with plain-bond. ENPAGE output can be directed either to devices or to files. ENPAGE output is suitable primarily for DEC or HP laser printers (it inserts control sequences into the results). To use the output on some other printer, you'd probably have to edit the device control sequences out of the first and last lines of the output files. FORCEX.EXE Have you ever had a program get into an infinite loop? Well, neither have I, but just in case it ever happens, this program will exercise the VMS system services just enough to list out all the processes on the system and ask you if you want to force-exit any of them. The display format has been upgraded since Fall 1989. It's not any fantastic new discovery, but it does have the advantage of stopping just the current image rather than the entire process. The process returns to the $ if it's interactive, or to the next line in the command procedure if it's batch. FORCEX requires WORLD privilege, GROUP privilege, or the same username, depending on the target process. INIT_DIALUPS.COM We have three dialup lines; they are known by system-wide logicals Page 4 ci$dialup_1, ci$dialup_2, and ci$dialup_3. We initialize the modems on those lines during system startup and once per hour (in case someone has been using a modem and left it in a non-standard condition). The INIT_DIALUPS.COM command procedure looks for all devices pointed to by ci$dialup_n. For each such unallocated device, INIT_DIALUPS.COM allocates the device, sets the speed, initializes the modem (using DIALUPINI.EXE), and deallocates the device. The maximum speed for each modem must be specified by the logical ci$dialup_max_speed_n (e.g. ci$dialup_1 = "TXA0" and ci$dialup_max_speed_1 = "2400"). LASER2.COM This is the procedure that drives the ENPAGE utility. Actually, at our site we have another procedure that provides novice users with somewhat simple access to rather sophisticated printer characteristics on several printers throughout the office, including our plain-bond laser printer. However, LASER2.COM shows the basics of using ENPAGE.EXE when driving a letterhead/plain-bond printer combination. LOCK_TERMINAL.EXE This is a simple program that accepts and verifies a password, then locks your terminal until you type the password again. Useful for leaving an account logged in while you go away for a couple of minutes. It traps CONTROL-C and CONTROL-Y. However, if you are logged-in remotely using $SET HOST, CONTROL-Y could still be used by a malicious user to return to your original process on the local node. For this reason, I use it mainly on local nodes. REMINDPRT.COM This is a simple command procedure to provide access to REMINDPRT.EXE. REMINDPRT.EXE We are using a REMINDER utility that came from a DECUS tape a few years ago. It was written by someone at AT&T. If you are using the same REMINDER program, you might find REMINDPRT.EXE useful. It is NOT compatible with other reminder programs from more recent DECUS tapes! We needed more flexibility in printing out reminders, so we wrote this program to print simple calendars from the reminder file. No REMINDER user should be without it. Output goes to CI$OUTPUT. REMRESCHD.EXE One of the annoying things about that AT&T REMINDER utility is that it deletes old reminders automatically, even if you never got to see it. Well, every night right after midnight I run REMRESCHD.EXE to reschedule old reminders up to today. That way REMINDER becomes a to-do list that won't let me forget a reminder unless I explicitly delete it. Page 5 Caution: If your login.com automatically displays your reminders ($REMIND ME) like mine does, you need to jump over that line when f$mode is "BATCH" so your midnight rescheduling job can run REMRESCHD on your reminder file before REMINDER gets to it. SHUT_LOGS.COM We use this command procedure to close our OPERATOR.LOG file nightly and open a new one. It also closes our database monitor logfiles, which are produced by VAX DBMS. It resubmits itself nightly, skipping weekends automatically. Again, nothing fancy, but if you don't have it, here it is. For some reason, the VMS developers wrote the $REPLY/LOG command to require a terminal as its sys$command device. Therefore, in order to shut OPERATOR.LOG, this procedure temporarily grabs the operator console as its sys$command device. Back when I wrote this procedure, it wouldn't work from batch unless it did some sort of trick like this. I haven't checked to see if VMS has lifted this requirement since. SYSTATUS.EXE This is SYSTATUS version 5.6 for VMS version 5.2 or later. It's a system status monitor with some interesting display flexibility. We rely on it heavily at our site. VMSDOWN.COM (and VMSDOWNUP) These procedures allow under-privileged operators to take a VAX down (optionally with automatic reboot). They are to be submitted /HOLD on a batch queue from a privileged account like SYSTEM. When the operator releases one of these jobs, it resubmits itself /HOLD again, and then creates a detached process that does the actual shutdown. USING COMPASSION INTERNATIONAL SOFTWARE If you use any of the software in this submission, you will probably need to edit our command procedures or define logical names to account for the conventions that we use at Compassion. The items you will probably need to change or define include: LOGICAL NAMES: ci$command The directory that holds our local command procedures. ci$dialup_n The dialup ports at our site (n = 1, 2, 3, etc.). ci$dialup_max_speed_n The dialup port speeds at our site (n = 1, 2, 3, etc.). ci$games The directory that holds games and related files. ci$images The directory that holds our local images. ci$input The primary input device for a program. ci$output The primary output device for a program. ci$output_2 The secondary output device for a program. ci$workfiles The intermediate directory commonly used at our site. Page 6 QUEUE NAMES: laser$print_1 The name of our plain-bond print queue. laser$print_2 The name of our letterhead print queue. normal$batch The name of our priority-4 batch queue. FORM NAMES: letter1 The form type normally mounted on laser$print_2. plain_bond The form type normally mounted on laser$print_1. ========> [VAX91B.RPI]AAAREADME.TXT;2 <======== DECUS VAX Systems SIG Tapecopy Submissions Rensselaer Polytechnic Institute Fall, 1991 submitted by: Matthew Madison Engineering Computing Services Rensselaer Polytechnic Institute Troy, New York 12180-3590 USA +1 518 276 2606 madison@vms.ecs.rpi.edu (Internet) MADISON@RPIECSVX (BITNET) This submission contains six subdirectories with items of possible interest to VMS system managers and users. All entries include source code, object code, executables, and documentation. Updates to previously submitted entries are noted. All entries, unless otherwise noted, are written BLISS-32. All entries include the BLISS source code contained in a compressed BACKUP save set to save space. Use the LZDCMP program to decompress the save sets and BACKUP to unload them. Some of the entries also contain MACRO source code as generated by the BLISS compiler. All entries include an AAAREADME.DOC file; most also include further documentation. All entries require VMS V5.0 or later. 1. [.MDMLIB] MDMLIB is a set of utility routines called by some of the programs in this submission, and is required if rebuilding the programs from sources. [update of Spring 1991 submission] 2. [.MX] Mesage Exchange (MX) is an electronic mail routing and distribution facility, supporting local delivery via VMS MAIL, SMTP over TCP/IP (CMU-Tek, TGV MultiNet, or DEC VMS/ULTRIX Connection), SMTP over DECnet, BITNET mail over Jnet, and UUCP mail via DECUS UUCP. It also supports mailing lists and file distribution over E-mail. [update of the Spring 1991 submission] 3. [.NETLIB] NETLIB is a library of routines that provide access to TCP/IP Page 2 services in a transport-independent fashion. Supports CMU-Tek TCP/IP, TGV MultiNet, and DEC VMS/ULTRIX Connection. 4. [.NEWSRDR] NEWSRDR is an NNTP client program for reading Usenet news. Can use CMU-Tek TCP/IP or VMS/ULTRIX Connection as NNTP transport. [update of Spring 1991 submission] 5. [.NSQUERY] NSQUERY is a utility that interrogates Internet domain name servers. Requires the NETLIB library, also provided in this submission. [new] 6. [.UCX_FINGER] A simple FINGER utility and server for DEC VMS/ULTRIX Connection. Nothing fancy, but it works. [new] ========> [VAX91B.RSX91B]AAAREADME.TXT;2 <======== RSX Fall 1991 SIG TAPE --- [301050] TPC - Tape - Disk - Tape copier update. Fixes register save bug in BIGTPC. Submitted by Alan Frisbie. [301200] THIS DIRECTORY CONTAINS: AAAREADME.1ST, THIS FILE. BRUSHELL.FOR A Fortran shell for the DECUS program BRUREAD. This is a fortran program for VAX/VMS 4.6 or later which system services to manage BRUREAD. It may be installed and used through the system DCL tables or a user may do a SET COMMAND and use it from a local directory. Please refer to program BRUSHELL for configuration parameters. The tape drive is set to _MTA0: and should be set according to individual requirements. NOTE: BRUREAD MUST BE INSTALLED IN THE SYSTEM DCL TABLES OR EXIST IN LOCAl CONTEXT VIA THE "SET COMMAND" FACILITY. INSTALL_BRUSHELL.COM Installation command file. Tailor this to your specific requirements. BRUSHELL.CLD Command Line Definition file. Patch the image statement as required. BRUSHELL.OBJ VAX/VMS Fortran 4.4 object BRUSHELL.EXE VAX/VMS 4.6 executable From Bruce Prendergast [314100] THIS SUBMISSION INCLUDES 2 PROGRAMS: DIR.CMD IS A COMMAND FILE TO GIVE THE USER MUCH MORE INFOR- MATION ABOUT THE CONTENTS OF A DIRECTORY FILE THAN CAN BE GOTTON WITH MOST OTHER PROGRAMS SUCH AS PIP OR DIR. SDF (SHOW DISK FRAGMENTATION) IS A MACRO PROGRAM TO GIVE THE USER INFORMATION ABOUT THE FRAGMENTS ON A DISK. THE OUTPUT CAN BE DIRECTED TO A FILE FOR STORAGE FOR THOSE PEOPLE WHO WANT TO KEEP RECORDS OF SUCH THINGS. BE ADVISED: THIS PROGRAM WILL NOT WORK FOR THE VERY LARGE NEW DISKS SUCH AS THE RA-90. WHEN I FIND OUT HOW DEC MODIFIED THE BITMAP FILE TO HANDLE THESE LARGE DISKS, I WILL MODIFY AND RESUBMIT THIS PROGRAM. THANKS ANTHONY E. LEVAN 513-426-6000 [351144] This is a reissue and update of the SIG Tape Road Map by Annamaria Szentgali of DECUS MUNCHEN, updated by Jan H. Belgraver of DECUS Holland. It includes all known RSX tapes (both Europe and US), plus Pascal SIG and selected IAs and RT SIG tapes. Additions since the last issue (Fall 1990) are: Spring 1983 RSX SIG tape. Fall 1990 RSX SIG tape. Spring 1991 L&T SIG tape (RSX portion). Tom Wyant DECUS U.S. December 1991 [351145] This directory contains four papers to be presented at the Fall 1991 DECUS U.S. Symposium - Favorite RSX problems (DA115) RSX Indirect Command Processor (as AT_INTRO and AT_ADV) RMS Utilities for Non-RMS RSX Users (DA120-?) \ Session A Practical Introduction to RMS (DA120-?) | du ACP QIOs from High Level Languages (DA120-?) / Jour Also included are example command files from the "@" processor talk. From Tom Wyant [351146] CRPADD: Cryptic Addition - V91.340 Author: T. R. Wyant III, E. I. DuPont de Nemours, Richmond, VA. Operating System: RSX, VMS Language: Fortran-77/VAX FORTRAN Memory Required: VMS: 6KB RSX: 28KB (no resident libraries) Other Hardware Required: None Keywords: Mathematical Abstract: This program solves cryptic addition problems by a brute-force depth-first search. In its current incarnation it will handle problems of up to 10 addends of up to 60 digits each. The user is prompted for number of addends, verification (useful for large problems) whether or not all solutions are desired, and whether a trace of the logic is desired. Then the actual addends and sum are requested (with a verify pass if desired). Input is case-sensitive. [351147] BRUREAD, a BRU tape reader for VMS. Submitted by Tom Wyant. (A later correction is in version BRUREAD2.*; the file may be relinked if desired.) ========> [VAX91B.RUCKERT]AAAREADME.TXT;1 <======== This is a submission from Medtronic, Inc., Minneapolis, MN. It consists of 1 thing: (1) WordPerfect Kermit keys. These would be useful to have a PC, with the enhanced keyboard running Kermit, emulate the standard WordPerfect PC keys (regular function key, shifted function key, alt function key, and control function key). It takes advantage of the WordPerfect "compose" function. To use it, simply add it as a "take" file in Kermit's initialization. Roger G. Ruckert Senior Technical Analyst Medtronic, Inc. Mail Stop 111 7000 Central Ave. Minneapolis, MN 55432 (612) 574-4742 ========> [VAX91B.SABATINE]AAAREADME.TXT;1 <======== VMS device driver names are, by convention, two letters and the word DRIVER, as in LDDRIVER. This name is not only a file name, but must be encoded in the device image itself. In this way, the device identifies itself to VMS. Problems can exist if a site has two different drivers to be loaded, both of which have the same name. This can sometimes happen when sites purchase or evaluate a number of third party vendor products. Since VMS will not allow different drivers to share the same name, one driver either must be renamed (typically through the vendor), or only one device can be used at a time. FIXDRIVER solves this problem by modifying the driver image internal name to a user specified value. Thus, a driver named LDDRIVER could be changed to something else, say SPDRIVER. Please note that FIXDRIVER only changes the internal image name. The user will need to perform a RENAME on the file itself to rename it. FIXDRIVER assumes that the "current" name of the driver is of the form XXDRIVER. If it is not, no change will be made to the image, and the program will report an error. ========> [VAX91B.SWIM]AAAREADME.TXT;1 <======== SWiM version 2.0 by Steve Jennen jennen@tigger.stcloud.msus.edu Student Programmer, Academic Computer Services St. Cloud State University, St. Cloud, MN 56301 ========================================================================= Welcome to SWiM, the multi-session windowing terminal application for VAX/VMS. SWiM let's you open windows on your terminal screen, each window becoming a terminal in itself. In the windows then, you can log into your same account (the one running SWiM) or into a different account. Each window is an almost full featured VT100 terminal, running most popular applications available for the VAX. SWiM allows dynamic sizing of the windows, movement of windows to anywhere on or off the screen, CUT and PASTE between windows and a back-scroll feature to look at information that has just scrolled off your screen. Once you have the number of windows you're comfortable with and you've placed them in your favorite location, SWiM allows you to save that information in a script file. Next time you run SWiM, you can specify the loading of the script file and your setup will be properly reproduced. SWiM is fun, useful and addicting and I hope you enjoy it. To set up SWiM on your system, first install the pseudo-terminal drivers according to the documentation for them. (Note: The pseudo-terminal drivers are now part of DECwindows, so if you've installed that you're ready to go. If not, then you may have already installed them for some other utility, just do a SHOW DEV and look for two devices called PYA0 and TWA0. If they are there, then you're set.) Then, compile and link SWiM as follows: $ cc/opt=(disj,inline) swim $ link/notrace swim,swim.opt/opt The VAX C compiler can be resource intensive during a compilation with optimizations turned on, so if you get a "Compiler Abort" message, use an account with sufficient quotas to compile SWiM or simply compile using "cc/noopt". Then, create the help library for SWiM: $ library/create/help swim swim Or use the command procedure to compile, link and create the help library: $ @build SWiM uses a logical SWIM_LOCATION to point to the location of the help library. This logical must be defined before running SWiM. SWiM needs to be INSTALLED with privs and you can do this by: $ INSTALL INSTALL> CREATE SWIM_LOCATION:SWIM /OPEN /HEADER /SHARE /PRIV=SHARE INSTALL> EXIT $ The important option there is the PRIV=SHARE. SWiM needs this priv to modify Page 2 the pseudo-terminal device characteristics that may be owned by a process other than the process activating the SWiM image. Setup SWIM as a foreign command: SWIM == "$swim_location:swim" It'll accept one parameter, that being the script-file-name: $ swim [script-file-spec] The script-file has a default extension of ".SWM", which will be added automatically by SWiM during the creation of the script file. For information on differences between version 2.0 and 1.0, please read the first few pages of the source file SWiM.C. ========> [VAX91B.TAYLOR]AAAREADME.TXT;1 <======== Fall 1991 DECUS Submission This directory contains the example programs from session VA091 Introduction to VMS System Services. The programs in this submission can be used freely. They are not much different from example programs in VMS, C, and FORTRAN documentation. The authors accept no responsibility for the use or reliability of these submissions. The following files are included: FORTRAN examples SETPRN_FOR.FOR ! Uses SYS$SETPRN to set process name SETPRN_FOR.OBJ ! compiled and linked on VMS V5.4 SETPRN_FOR.EXE SHOW_PRCNAM_FOR.FOR ! Uses SYS$GETJPI to show process name SHOW_PRCNAM_FOR.OBJ ! compiled and linked on VMS V5.4 SHOW_PRCNAM_FOR.EXE C examples SETPRN_C.C ! Uses SYS$SETPRN to set process name SETPRN_C.OBJ ! compiled and linked on VMS V5.4 SETPRN_C.EXE SHOW_PRCNAM_C.C ! Uses SYS$GETJPI to show process name SHOW_PRCNAM_C.OBJ ! compiled and linked on VMS V5.4 SHOW_PRCNAM_C.EXE The following logical was created before linking the C programs: $ DEFINE LNK$LIBRARY SYS$LIBRARY:VAXCRTL Mike Taylor Retha Taylor Taylor Made Software St. Louis, MO We apologize for not giving a complete address. The address will change soon and the new address was not available at submission time. ========> [VAX91B.UALR]AAAREADME.TXT;1 <======== ******** ******** ***** ****** *********** * * * * * * * * * * * * * * * * * * * * **** * * * * * * * * * * * * * * * * * * * * * * * * * * **** * * * * * * * * * * * * * * * * * * * * * * * * * ** * * * * * ***** * * * * * * * * * * * * * * * * * * * * * * * * ******* * * * * * * * * * ******* * * * * * * ************ * * * * * * * * * * * * * * * * ************ ****** ****** **************** ****** **** Submissions by: Dale Miller University of Arkansas at Little Rock Data Center 2801 S. University Little Rock, AR 72204-1099 (501) 569-8714 DOMILLER@UALR.EDU To further your computing experiences, the following directories are enclosed for your inspection and use: [.ETAPE] - The latest version of an old favorite. This ETAPE has a few fixes in since the last one on DECUS. Converts to/from EBCDIC, non-standard ASCII and Honeywell GCOS BCD tapes. Added in this version: Packed decimal support, bug fixes, reformatting records while translating. [.CB] - CB simulator (a la Compuserve) to go with UBBS [.READBACK] - Read a VMS BACKUP save tape and produce a backup save set from a subset of files. [.UBBS] - A full-function public-access bulletin board system for VMS. This is most likely the last production release of UBBS. Permission is given to all DECUS members to copy, distribute, and use all files contained in this submission. Not to be sold! ========> [VAX91B.VAXPRO]AAAREADME.TXT;2 <======== THis is a submission from the VAX Professional Magazine. The file 1_MASTER_LIST.TXT is information on the material in this submission and information on the VAX Professional Magazine. ORDERING INFO CONTACTS Georgiann Dunion (215) 957-4266 VAX Professional subscriptions Back issue information and orders *** *** *** Tape Contents: C Utilities In Ada Filename: ADA.VAX This file features code published in VAX Professional, February 1991. It was written by Alan Cohn and appeared in his article, "C Utilities In Ada." The procedure, called ada.string, contains astring functions and procedures. RMS Block I/O Filename: BLOCKO.VAX This file features code published in VAX Professional, February 1991. It was written by Mark Petrie and appeared in his article, "RMS Block I/O." RMS offers the capability to do block I/O transfers which allow for large data transfers. Each block contains many records, so you can move a lot of data per call. This procedure allows you to do that. This file was updated to include a correction, described in a text forward to the actual program. Synchronize Processing Across A VAXcluster System Filename: SYNCHR.VAX The programs featured in this file were published in VAX Professional, February 1991, as part of an article titled "Using The VAX Distributed Lock Manager To Synchronize Processing Across A VAXcluster System," written by Tom Speake. The programs LATCH and STROBE start programs simultaneously on several VAXcluster nodes. Zeroing In On Runaway Identifiers Filename: RUVOLO.VAX This file features code published in VAX Professional, February 1991. It was written by Joseph P. Ruvolo as part of his article, "Zeroing In On Runaway Identifiers." The program finds all the holders of an identifier or all the identifiers of a holder. Using PHONE Object To Show Users On Another Node Filename: PHONEU.VAX This file features code published in VAX Professional, February 1991. It was written by Jim Egerton and appeared in his article, "Using The PHONE Object To Show Users On Another Node." The procedure tells you if a particular user is logged onto another node in the network. It starts up a PHONE slave process through Decnet and follows the PHONE protocol. Storing The Terminal Server And Port Page 2 Filename: LOGPRT.VAX This file features code published in VAX Professional, February 1991. It was written by Kevin Homan and appeared in his article, "Storing The Terminal Server And Port In VMS Accounting." This procedure stores the port and server in the remote ID and remote node name fields, and restricts AUDIT to logging only login failures and break-in attempts. The Hitchhiker's Guide To VMS: Episode 7.2 Filename: HIKER7.VAX This file features code published in VAX Professional, February 1991. It was published under the title, "The Hitchhiker's Guide To VMS: Episode 7.2," by Bruce Ellis. The program prompts for a directory specification, opens the directory file, and uses the file ID of the files catalogued in the directory to count the number of file headers and mapping pointers for each file. Creating DECterm Windows Filename: DECTRM.VAX This file features code published in VAX Professional, February 1991. It was written by David W. Bynon as part of his article, "Creating DECterm Windows." The program enables you to create your own DECterm windows for just about any purpose, including working on multiple accounts. Break-In Detection Notifier Facility Filename: BREAKN.VAX This file features code published in VAX Professional, February 1991. It was written by J. Wren Hunt and appeared in his article, "Break-In Detection Notifier Facility." The program reads the audit mailbox, acts on incoming audit messages, and notifies designated terminals of break-in attempts. VMS Kernels: MAIL In Alphabetical Order Filename: MAIL.VAX This file features code published in the April 1991 issue of VAX Professional magazine. Written by Jerrold Leichter, Ph.D. as part of his article, "VMS Kernels: MAIL In Alphabetical Order," which appeared on page 32, the program here cleans up and reorganizes mail stuff. Evrything in the DEAD folder is discarded. Everything in the DELETED folder more than a month old is discarded. Then the MAIL.MAI file is rebuilt, and the mail subdirectory is rebuilt. A Remote DECterm Client And Server Filename: WINDOW.VAX This file features code previously published in the April 1991 issue of VAX Professional magazine. The procedure was written by John McMahon as part of his article, "A Remote DECterm Client And Server," which appears on page 15. Here's a resource saving twist on the normal method of having the local VAXstation access a remote VAX through DECwindows. With the procedure presented here, a remote VAX opens a window on the local workstation. Extending VAX COBOLs Argument-Accepting Mechanism Filename: RENAME.VAX This file features code previously published in the April 1991 issue of VAX Professional magazine. Originally run as part of Joseph P. Ruvolo's article, Page 3 "Extending VAX COBOL's Argument-Accepting Mechanisms," which appears on page 20, the program here makes COBOL programs accept arguments both by reference and descriptor. Saving And Restoring The DCL Recall Buffer Filename: RECALL.VAX This file features code previously published in the April 1991 issue of VAX Professional magazine. It was originally run as part of M.D. Kosta and Phil LoVecchio's article, "Saving And Restoring The DCL Recall Buffer," which appeared on page 28. Sometimes, it might be handy to reconstruct the contents of the RECALL buffer after logging out of a session. Here's a method to accomplish that task. Poor Man's CASE Filename: FDE.VAX This file features code previously published in the April 1991 issue of VAX Professional magazine. Originally run as part of Don Weyel's article, "Poor Man's CASE," which appeared on page 24, this home-grown CASE utility uses existing VMS facilities to increase programmer productivity on small to medium sized programming projects. It lacks the bells and whistles of VAXset; use it when simplicity is sufficient. Using PC DECwindows Filename: PCDECW.VAX This file contains code previously published in the April 1991 issue of VAX Professional magazine. Written by Hunter Goatley and originally run as part of his article, "Using PC DECwindows," which appears on page 8, the command file is executed by the PC DECwindows display facility. It starts the DECwindows Session Manager (DECW$SESSION), waits for it to get started, and then starts the DECwindows Window Manager (DECW$WINMGR). The Hitchhiker's Guide To VMS: Episode 8 Filename: GUIDE8.VAX This file features Episode 8 of Bruce Ellis' "The Hitchhiker's Guide To VMS," which ran in the April 1991 issue of VAX Professional magazine on page 34. The code here has a lengthy description which wouldn't fit into this tiny buffer. What does Billy do when he gets stuck in heavy traffic? Read Episode 8 and see! Automating Cluster Shutdown Filename: SHUTDN.VAX This file features a commmand procedure to shut down all the nodes on a cluster. It preserves most of the flexibility of the standard VMS shutdown command. It asks the same questions in the same order as the normal shutdown procedure. It synchronizes the shutdown so the nodes can exit in the correct order. SHUTDN.VAX first ran on page 14 of the June 1991 VAX Professional, as part of Barry J. Gillin's article, "Automating Cluster Shutdown." X Views: Using DEC PHIGS With DECwindows Filename: PHIGSX.VAX This file features code previously published in the June 1991 issue of VAX Professional magazine. It was first run as part of Garry Poegel's article, "X Views: Using DEC PHIGS, DEC GKS, And DEC GKS-3D With DECwindows," which appeared on page 29. DEC GKS, DEC GKS-3D and DEC PHIGS Page 4 provide facilites that allow an application to use both the graphics library and X11 as needed. Here's how to integrate these higher-level graphics with X. The Hitchhiker's Guide To VMS: Episode 9 Filename: HIKER9.VAX This file features code written by Bruce Ellis as part of his article, "The Hitchhiker's Guide To VMS: Episode 9." Originally run in the June 1991 issue of VAX Professional magazine on page 35, Episode 9 answers these questions: Does Billy ever write a program to track open files or is he just blowing smoke? Does the girl really like the SHOW_SHARE program? Does she like Billy? Can OLTP really be done on windowing systems? Restricting Access To WAN And Cluster Nodes Filename: CHECK.VAX This file features code published in the June 1991 issue of VAX Professional magazine, as part of James McNamara's article "Restricting Access To WAN And Cluster Nodes," which appeared on page 17. Because of programs like the WANK worm, you might want to restrict network access by FAL, PHONE and NML to a small group of trusted nodes in a WAN. A filter program run at login can serve this purpose by logging out access attempts by unknown nodes. ========> [VAX91B.VEGAS]AAAREADME.TXT;2 <======== This entry contains several "Vegas" type games. Sources and OBJ are provided, EXE's require LINKing. 1) NFLBOOKIE allows betting on NFL games based on the lines published in the newspaper. It allows betting on teams and total points, plus parlay and teaser bets; and keeps tract of who has won and lost for the season. Requires several files in the directory NFL$LOC:, and supports up to 12 users (more if source is modified). This version takes no "juice" on straight bets, the next version will! 2) BJTRNR and CCTRNR are for practicing Blackjack prior to a trip to Las Vegas, Atlantic City, Reno, etc. They DO NOT play a game of blackjack - they are only for training. BJTRNR tests whether you should hit, stand, split or double based on your cards and the dealer's up card. A log file of mistakes can be maintained in SYS$LOGIN:. CCTRNR tests your ability to "count" cards. 3) CRAPS simulates a Vegas-style crap game, allowing bets on PASS/DON'T PASS, COME/DON'T COME, place bets, odds bets, etc. The outcome of each session is logged to GAMES$LOC:CRAPS.LOG. See you in Vegas after Anaheim - I'm staying at the Stardust this trip! ========> [VAX91B.VMSNETARCH]AAAREADME.TXT;2 <======== This area contains updates for the VMSNET archives since the Spring 1991 VAX/L&T tapes. LZDCMP.EXE Program to decompress .*_Z files. [.MAILSERV...] ASCII VMS_SHARE files sent by the mail server. These files are automatically archived from vmsnet.sources. See [.MAILSERV]INDEX.TXT and HELP.TXT. [.VMSNET] Various things (but far from all) from vmsnet.sources saved as compressed BACKUP save sets. The following areas are included: Directory [VAX91B.VMSNETARCH.MAILSERV] ARCHIE_CLIENT.DIR;1 ARCHIVER.DIR;1 CD.DIR;1 CRASHME.DIR;1 CSWING.DIR;1 DATEBOOK_V510.DIR;1 DCL_MAILBOX.DIR;1 DCL_MENU.DIR;1 DCL_MENU_2.DIR;1 DCL_RECALL.DIR;1 DEF.DIR;1 DRIBBLE_V1.DIR;1 DRLOGIN.DIR;1 DWPROFILE_V22.DIR;1 DXRN_614.DIR;1 FTS.DIR;1 GET_NFSNAME.DIR;1 GREP.DIR;1 HELP.TXT;11 INDEX.TXT;370 JOBLOG.DIR;1 MAILCOMPRESS.DIR;1 MEMTRIM021.DIR;1 MINISHAR010.DIR;1 MOST.DIR;1 MOVE_LOGIN_BOX.DIR;1 MXRN_DXRN.DIR;1 PASSWORD_POLICY.DIR;1 PBMPLUS.DIR;1 PBMPLUS_OCT91.DIR;1 PBMPLUS_VMS.DIR;1 PBM_TEX.DIR;1 PCAL.DIR;1 PEEKFILE.DIR;1 PRIMGR.DIR;1 PROMPT.DIR;1 PTD.DIR;1 QUEUE_DISPLAY.DIR;1 RAMDRIVER.DIR;1 REMOTE_TAPE.DIR;1 REMPRTSMB.DIR;1 SED.DIR;1 SQUEEZER.DIR;1 SWIM.DIR;1 TEXT-POSTSCRIPT.DIR;1 TIFF.DIR;1 TIME_PROMPT.DIR;1 TURBO.DIR;1 UNSHAR.DIR;1 USERS.DIR;1 UUENCODE.DIR;1 UUSTAT.DIR;1 VERTICAL_MENU.DIR;1 VMS-NEWS.DIR;1 VMSTAR.DIR;1 VMSTIME_FOR_VMS047.DIR;1 VMS_SHARE.DIR;1 VNEWS.DIR;1 XLOADIMAGE_V203.DIR;1 XROACH.DIR;1 XUAF.DIR;1 XV.DIR;1 XWATCH.DIR;1 ZIP.DIR;1 ZOO.DIR;1 Directory [VAX91B.VMSNETARCH.VMSNET] ARCHIE_CLIENT.BCK_Z;1 DATEBOOK510.BCK_Z;1 DWPROFILE22.BCK_Z;1 PBMPLUS.BCK_Z;1 TGIF25.BCK_Z;1 TIFF.BCK_Z;1 UNSHAR.BCK_Z;1 XLOADIMAGE203.BCK_Z;2 XV.BCK_Z;2 ZOO21.BCK_Z;1 ========> [VAX91B.WORLTON]AAAREADME.TXT;1 <======== 06-DEC-1991 This version of MODIFY contains some improvements over the initial version which is now part of the VMS startup set. It allows longer record lengths (up to 512 bytes) and it has a new F77 qualifier for changing Fortran source code format from tab code to standard and replacing exclamation point comment delimiters and debug statement delimiters, and/or removing all comments. Tom Worlton worlton@anlpns.pns.anl.gov