+++++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_1:[000TOOLS]FREEWARE_README.TXT;1 +++++++++++++++++++++++++++++++++++++++++++++++++ 000TOOLS, FREEWARE, Various Useful Tools This directory contains a DEFINE_TOOLS.COM procedure used to establish DCL foreign commands for a collection of useful DCL command procedures and executable images, and this particularly contains the Unzip tools necessary to unpack the Zip archives. This directory tree is duplicated on all OpenVMS Freeware disks. ++++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_1:[BARCODE]FREEWARE_README.TXT;1 ++++++++++++++++++++++++++++++++++++++++++++++++ BARCODE, UTILITIES, Barcode Software for OpenVMS ++++++++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_1:[BLISS-FOR-C]FREEWARE_README.TXT;7 ++++++++++++++++++++++++++++++++++++++++++++++++++++ BLISS.MEM, Languages, BLISS for C Programmers ++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_1:[BLISS]FREEWARE_README.TXT;3 ++++++++++++++++++++++++++++++++++++++++++++++ BLISS, LANGUAGES, BLISS Implementation Language Contains BLISS-32 for the VAX and BLISS-32E and BLISS-64E for the Alpha AXP. The release notes in the kits are a required supplement to the 1987-vintage BLISS Language Reference Manual and BLISS-32 User Manual that are included in Bookreader format. +++++++++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_1:[CDACVTLIB022]FREEWARE_README.TXT;1 +++++++++++++++++++++++++++++++++++++++++++++++++++++ CDACVTLIB022, UTILITIES, CDA DDIF file (document) format converters This directory contains the OpenVMS VAX tools for converting documents among various documentation formats. Also please see the CDA-related tools available within the DECwindows package. +++++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_1:[CDRECORD]FREEWARE_README.TXT;1 +++++++++++++++++++++++++++++++++++++++++++++++++ CDRECORD, UTILITIES, CD-R Recording Software This is the source code for a version of CDRECORD that is included with OpenVMS Alpha V7.3-1 and later. ++++++++++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_1:[CDRTOOLS-1_11]FREEWARE_README.TXT;2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ CDRTOOLS, UTILITIES, CD-R/RW Recording Tools for OpenVMS This is an early port of CDRTOOLS-1_11. The core CDRECORD engine is known to function with local CD-R drives, and CD-R operations have been tried and do function with Plextor PlexWriter SCSI drives and do with CD-R media loaded in HP DVD200 series DVD drives. This version of MKISOFS is known not to function. (Problems within the assumptions made around the readdir and related calls being one reported area of incompatibility.) Other components of CDRTOOLS here have not been tested. +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_1:[CGI_SCRIPTS_WASD]FREEWARE_README.TXT;3 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ CGI_SCRIPTS, UTILITIES, WASD CGI scripts ported to other server environments A small collection of VMS-useful "WASD Hypertext Services" CGI scripts package (also on this freeware CD) ported to the CSWS V1.3 (OpenVMS Apache 1.3.26), OSU (DECthreads, 3.10), Purveyor and other VMS CGI server environments. * CONAN is used to access VMS Help and text libraries. * HYPERSHELF is used to navigate BNU or Bookreader shelves. * HYPERREADER is the book reader. * HYPERSPI is a system performance monitor (of sorts!) * HYPERSPI++ is hyperSPI plus more items plus better graphics * QDLogStats provides elementary Web server access log statistics * QUERY/EXTRACT is an ad hoc plain/HTML text search facility * VMSeti is an interface for monitoring VMS SETI@home processing * WWWCount is Muhammad A.Muquit's graphical Web page hit counter * yahMAIL allows Web access to user's VMS mail See FREEWARE_DEMO.TXT for installation instructions. Access the HTML documentation using a browser on the local system. First ensure the freeware CD is mounted /SYSTEM, then enter file:///cd-device/cgi_scripts_wasd/ into the "Location:" field of the browser. Mark.Daniel@wasd.vsm.com.au (Mark.Daniel@dsto.defence.gov.au) July 2003 http://wasd.vsm.com.au/ http://wasd.vsm.com.au/wasd/ ftp://ftp.vsm.com.au/wasd/index.html +++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_1:[CREMBX]FREEWARE_README.TXT;1 +++++++++++++++++++++++++++++++++++++++++++++++ creMBX, Utilities, create mailbox from DCL +++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_1:[CURL]FREEWARE_README.TXT;1 +++++++++++++++++++++++++++++++++++++++++++++ cURL, UTILITIES, command-line URL-based file transfer tool From the cURL website (http://curl.haxx.se/): Curl is a command line tool for transferring files with URL syntax, supporting FTP, FTPS, HTTP, HTTPS, GOPHER, TELNET, DICT, FILE and LDAP. Curl supports HTTPS certificates, HTTP POST, HTTP PUT, FTP uploading, kerberos, HTTP form based upload, proxies, cookies, user+password authentication, file transfer resume, http proxy tunneling and a busload of other useful tricks. ++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_1:[DCC]FREEWARE_README.TXT;3 ++++++++++++++++++++++++++++++++++++++++++++ DCC, UTILITIES, Disciplined C Checker This contains the Disciplined C Checker, versions V2.9C and V2.9D. DCC can show you the various possible pitfall within your C code. The author and maintainer of the DCC tool is Yves L. Noyelle. For assistance, see the dcc.htmlx file provided, and also please see the provided VMSREADME.TXT file for additional comments and tips. ++++++++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_1:[DCLHOLIDAYS]FREEWARE_README.TXT;2 ++++++++++++++++++++++++++++++++++++++++++++++++++++ DCLHolidays, SYSTEM_MGMT, Calculation of holidays The sample DCL procedure HOLIDAYS.COM (freeware V5) and its successor HOLIDAYS020.COM use a special form auf the Gaussian Easter Algorithm (see reference in the procedure itself) to calculate the date of Easter sunday and from there the dates of other holidays depending on it. Included is the handling of holidays with fixed dates, christmas for example. This procedure has been written in Germany with respect to the local holidays; it may and will require some modifications for other countries. It uses _only_ DCL and _no_ other programming language so it can be used on any OpenVMS system without a need for a separate compiler and its license. This procedure may be usefull if backup or similar operations have to be skipped on such days. (No operator available to handle tape cartridges, for example.) Usage: Include the "check_date" subroutine in your main procedure, call it with the date to be checked as a parameter (OpenVMS absolute date format) and evaluate the value of the symbol(s) $STATUS and/or $SEVERITY. The possible return codes are listed in the subroutine itself. New for V2.0 are (thanks to Paddy O'Brien for suggestions): - a localization option (definition file) - a listing option - a major re-write of the procedure (many loops instead of repeated code segments) The author (i.e., me :-) does not warrant the software but error reports may be sent via e-mail. There even is a real chance that suggestions or enhancement requests get implemented eventually. Michael Unger ++++++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_1:[DCL_CHECK]FREEWARE_README.TXT;1 ++++++++++++++++++++++++++++++++++++++++++++++++++ DCL_CHECK, UTILITIES, Charlie Hammond's unsupported DCL checker Note: Information about DCL_CHECK V3.0 is at the end of this file. The following information is extracted from DCL_CHECK's help file. There is much more information in the help file. The HELP utility can access the DCL_CHECK help file using the command $ HELP /LIBRARY=:[]DCL_CHECK or through DCL_CHECK with this command $ @:[]dcl_check help DCL_CHECK The DCL_CHECK procedure detects a variety of DCL coding errors and displays diagnostic messages that allow you to correct the problems. See "Diagnostics" for a list of the types of errors that DCL_CHECK can detect. See "Problems" for information on the limits of DCL_CHECK. When you execute DCL_CHECK with "HELP" as the first parameter, DCL_CHECK invokes the DCL Help utility. If you provide additional parameters, they are passed to the Help utility. To exit the Help utility, press Return one or more times until the prompt "enter name of file:" is displayed. Additional information available: Called_procs DCL_CHECK DCL_DIET Diagnostics Format Installation Line_counts Modifications Output Problems Version Examples Topic? installation INSTALLATION To install DCL_CHECK you must put the files DCL_CHECK.COM and DCL_CHECK.HLB into the same directory. You then execute DCL_CHECK as an indirect command procedure. See "Format" for additional information. DCL_CHECK.COM is provided in "dieted" form. You may also wish to have the file DCL_CHECK.COM_SOURCE available; this is the fully commented version of the procedure. Topic? format FORMAT DCL_CHECK is a DCL command procedure. It is executed by the following DCL command: $ @[:][]DCL_CHECK.COM [ []] $ @[:][]DCL_CHECK.COM HELP [...] and/or may be omitted; the current defaults will be used. The file DCL_CHECK.HLB must be in the same directory as DCL_CHECK.COM if you use the HELP function in DCL_CHECK. The files may be in any directory to which you have read access. If you use DCL_CHECK frequently, you may wish to assign a symbol in your LOGIN.COM file to execute DCL_CHECK. For example, if the DCL_CHECK.COM and .HLB files are in you login default directory, you might put the following in your LOGIN.COM: $ DCL_CHECK :== "@SYS$LOGIN:DCL_CHECK" Alternatively, if you put DCL_CHECK.COM and DCL_CHECK.HLB in SYS$SYSTEM, you might put the following in your SYS$SYLOGIN (which is normally SYS$MANAGER:SYLOGIN.COM): $ DCL_CHECK :== "@SYS$SYSTEM:DCL_CHECK" Additional information available: Parameters FORMAT Subtopic? Topic? modifications MODIFICATIONS You can modify or "customize" DCL_CHECK by editing the command procedure, DCL_CHECK.COM. However, DCL_CHECK.COM is a "compressed" version of the procedure. To save disk space and improve performance, all comments and unnecessary spacing have been removed from DCL_CHECK.COM. This makes it difficult to read and understand the procedure. It should be much easier to edit the file DCL_CHECK.COM_SOURCE, which contains commands and is formatted to facilitate human reading. You can recreate a "compressed" version of the command procedure by using DCL_DIET.COM. Additional information available: Help MODIFICATIONS Subtopic? Topic? dcl_diet DCL_DIET DCL_DIET is a command procedure that accepts as input a DCL command procedure file. It compresses, or "diets", the file by removing comments and unnecessary spaces. The compressed version is created as output. The smaller size of the compressed file has two advantages: o It takes up less space on disk or tape. o It executes faster -- especially for larger command procedures. DCL_DIET is not part of DCL_CHECK. It is provided separately. --------------------------------------------------------- DCL_CHECK V3.0 The following comments from DCL_CHECK.COM_SOURCE outline the changes. $! D3.1 2003-AUG-21 Charlie Hammond $! Fixed some false instances of UMP and PSQ/PSR errors. $! $! C3.1 2003-AUG-20 Charlie Hammond $! Avoid flagging possessives ("'s " in quoted string) as $! PSQ-W possible error using single-quote (') in quoted string $! $! B3.1 2003-AUG-20 Charlie Hammond $! Re-write code that finds the file-name logical-name on I/P verbs $! so that it can handle quoted strings and symbol substitution $! within quoted strings. $! $! A3.1 2003-JUN-05 Charlie Hammond $! Improved checking for paired brackets $! by not checking in quoted strings Version 3.0 of DCL_CHECK includes several new diagnostics related to file checkin (OPEN, READ, WRITE and CLOSE commands). It also contains a collection of incremental fixes and improvements, and the new IFC diagnostic. The following comments from DCL_CHECK.COM_SOURCE outline the changes. $! V3.0 2003-JUN-03 Charlie Hammond $! Add checking for paired brackets $! $! H3.0 2003-APR-03 Charlie Hammond $! Added the contraction "They've". $! Added all contractions in all upper case. $! Added possessives for common accounting periods. $! "Day's", "Week's", "Month's", "Period's", "Quarter's", $! "Half's" and "Year's" (also in all lower and all upper case). $! Also names of weekdays and months $! $! G3.0 2003-APR-01 Charlie Hammond $! Fixed various spelling errors/typos $! Fixed aproblme with ICO (Help from Norm Raphael @metso.com) $! $! F3.0 30-Sep-2002 Charlie Hammond $! Don't do file checking on SYS$COMMAND, SYS$ERROR or SYS$PIPE $! (In addition to SYS$INPUT and SYS$OUTPUT) $! Fix a problem with double quotes in symbol used w/ READ/KEY $! $! E3.0 16-Sep-2002 Charlie Hammond $! Avoid false diagnostics ICO-S for ">" and "<" in PIPEs $! Only check /END and /ERR labels on /END_OF_FILE and /ERROR $! $! D3.0 04-Sep-2002 Charlie Hammond $! added " .ea ", " ea. " and " .ea. " to list of invalied $! comparison operators. $! $! C3.0 18-Mar-2002 Charlie Hammond $! Fix problem getting file logical names when there is an $! /END or /ERR qualifier with spaces preceedign of following the "=" $! $! B3.0 13-Mar-2002 Charlie Hammond $! Fix problem with /ERROR on RUN statement $! $! A3.0 18-Feb-2002 Charlie Hammond $! Add file verb checking $! NLN-S An OPEN, READ, WRITE or CLOSE statement has no logical name $! ONC-E A file that is opened has no close statement $! INR-A file that is opened for read is not read $! ANR-E A file that is opened for append is not written $! ONW-E A file that is opened for write is not written $! RNR-S A file that is not opened for read is being read $! WNW-S A file that is not opened for write or append is being written $! UNU-S A file that is not opened for read and write is being updated $! CNO-S A file that is closed has no open statement $! $! NOTE: There is no V2.2 -- A3.0 added sufficient functionality $! that the major version was bumped. $! $! G2.2 20-Nov-2001 Charlie Hammond $! Make an "&" in a PIPE statement a warning. $! Re-word several ICF diagnostics. $! Include this in help. $! $! F2.2 02-Aug-2001 Charlie Hammond $! Spelling corrections, mostly in comments, suggested $! by Norm.Raphael@jamesbury.com $! $! E2.2 28-Jun-2001 Charlie Hammond $! Improve line number display in pass 2 $! Display 1000, 2000, etc. instead of 500, 1500, etc. $! Also display line numbers in round 100's instead $! of actual numbers that could be off a bit. $! $! D2.2 08-Jun-2001 Charlie Hammond $! Fix problem mistaking "CALL", "GOTO" and "GOSUB" $! at the end of a symbol name as a DCL command. $! $! C2.2 31-May-2001 Charlie Hammond $! Fix problem with /END and /ERR on same line. $! $! B2.2 22-Feb-2001 Charlie Hammond $! Fix problems with detecting various forms of $DECK and $EOD $! $! A2.2 15-Aug-2000 Charlie Hammond $! Fix problem when first blank delimited token on line $! ends with ":" but is not a label. $! $! V2.1 15-Aug-2000 Charlie Hammond $! Updated freeware release $! $! H2.1 07-Aug-2000 Charlie Hammond $! Make ICF as warning for & and % $! Add information to ICF help. $! $! G2.1 03-Aug-2000 Charlie Hammond $! Allow for a $ in a continued, "one-line" if statement. $! Avoid incorrect INT err that could happen if a PSQ error $! is found in a nested "one-line" if statement. $! $! F2.1 02-May-2000 Charlie Hammond $! Add ICF invalid character found (#, %, ^ or &) $! $! E2.1 24-Mar-2000 Charlie Hammond $! Improved EFB detection ("=" found between IF and THEN) $! $! D2.1 13-Dec-1999 Charlie Hammond $! Improve detection of single quote errors $! Allow /OUT= on output file (P2) $! $! B2.1 04-Dec-1999 Charlie Hammond $! Add LDS error -- Label defined by symbol substitution (warning) $! Fix single quote (') in definition of valid_lexicals $! It should be and now is a comma (,). $! A2.1 23-Oct-1999 Charlie Hammond $! Correct calculation of code_lines. $! We had been subtracting deck_lines twice. $! $! V2.0 17-Sep-1999 Charlie Hammond $! For FREEWARE release $! $! B2.0 31-Jul-1999 Charlie Hammond $! Correct handling of continuation comment that starts $! with only a "!" rather than "$!" $! Correct handling of SRT and INT errors. $! (SUBROUTINE/IF not terminated) $! "Beef up" a few help entries. $! $! A2.0 28 July 1999 Charlie Hammond $! Improve handling for TNA/ENA/DNA $! (THEN/ELSE/ENDIF statement not allowed here) $! Make ENDSUBROUTINE cancel goto and exit shadows $! Handle SUBROUTINE and ENDSUBROUTINE $! IF/ENDIF and SUBR/ENDS may be disjoint or $! strictly nested -- they may not overlap $! $! A1.0 - R1.0 $! through October 1996 Charlie Hammond $! Many changes/additions $! $! X-1 dd-mmm-1996 Charlie Hammond $! Original procedure created. +++++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_1:[DCL_DIET]FREEWARE_README.TXT;1 +++++++++++++++++++++++++++++++++++++++++++++++++ DCL_DIET, UTILITIES, Charlie Hammond's unsupported DCL dieter [The following also appears near the beginning of DCL_DIET.COM and DCL_DIET.COM_SOURCE.] ************************************************************** This procedure "DIETs" a command procedure file -- compressing it by removing comments and unnecessary space. This saves file space and improves execution time. It may also remove comments that you don't want users to see. To run this procedure, enter command $@DCL_DIET where is the input command procedure is the "DIETed" output file ( may also be in the form "/OUTPUT=" If you use DCL_DIET frequently, you may wish to assign a symbol in your LOGIN.COM file to execute DCL_DIET. For example, if the DCL_DIET.COM is in you LOGIN default directory, you might put the following in your LOGIN.COM: $ DCL_DIET :== "@SYS$LOGIN:DCL_DIET" Alternatively, if you put DCL_DIET.COM in SYS$SYSTEM, you might put the following in your SYS$SYLOGIN (which is normally SYS$MANAGER:SYLOGIN.COM): $ DCL_DIET :== "@SYS$SYSTEM:DCL_DIET" If the translation of the logical name DCL$DIET_DOTDOT is true, then this version adds a space a the beginning of a line that starts with ".". This is to overcome a problem with SMTP mail in Compaq TCP/IP services so that TCP/IP V5.3-18's SMTP won't double the "." ************************************************************** +++++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_1:[DECXTERM]FREEWARE_README.TXT;3 +++++++++++++++++++++++++++++++++++++++++++++++++ DECxterm, UTILITIES, xterm key remapping (for use on UNIX Systems) The procedure remaps the Sun Keyboard, IBM AIX PC type Keyboard, Linux PC type Keyboard and Tru64 Compaq Unix keyboards to mappings suitable for VMS This program is designed to run on a Unix machine, create a terminal emulator with VMS keyboard mappings and then telnet to a VMS machine. USAGE: DECxterm [-option ...] which are identical to xterm. "#man xterm" for further details eg: DECxterm -e telnet yakka.ali.dec.com Note 1: All keys in the same position are mapped to the standard VMS LKxxx ikeyboard except for the keys between the main keyboard keys and the Numeric/Application keys which remain as labelled. The keys on an DEC LKxxx Keyboard are marked on other keyboards as:- Find marked Home, Insert marked the same, Remove marked Delete, Select marked End, Previous marked Page-Up and Next marked Page-Down. Note 2: Shift/F1 to Shift/F10 are mapped to F11 to F20 Note 3: Other Terminal Emulators such as dtterm or dxterm can be used by setting the variable DECXTERM_EMULATOR. The default is xterm. Note 4: The default xterm qualiers are defined by the variable DECXTERM_OPTIONS and are set to:- -fn 9X15 Default font -sb Enable scroll bars -sl 500 Number of lines saved that are scrolled off the top of window -cr red Set the cursor color to red -tn vt100 Set the terminal type to vt100 -132 Allow switching between 80 and 132 columns The default settings can be changed by defining this environment variable before running DECxterm. xterm_options="${DECXTERM_OPTIONS:=-fn 9X15 -sb -sl 500 -cr red -tn vt100 -132}" Note 5: To modify this program or to add further keyboard mappings edit out the C code from within DECxterm and follow the procedures documented in DECxterm. ++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_1:[DFU]FREEWARE_README.TXT;7 ++++++++++++++++++++++++++++++++++++++++++++ DFU, Storage_Mgmt, High Performance disk/file utility. DFU Disk and File Utilities is a high performance utility developed to perform routine maintenance and special purpose operations on disks, files and directories. The functionality offered by DFU is not or only partially available through other DCL commands or VMS utilities. Available functions : - DEFRAGMENT one or more files - DELETE files by file-id; delete directory(trees) fast - DIRECTORY functions : COMPRESS or DUMP directories : search directories for files with multiple versions , alias files or empty directories : create directories with preallocated size - REPORT disk for file, freespace and disk usage statistics - SEARCH very fast for specific files - SET : change many file attributes - UNDELETE files - VERIFY and REBUILD of the disk structure ! end-of-text ++++++++++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_1:[DIA_ANA_FILES]FREEWARE_README.TXT;2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ DIA_ANA_FILES, Utilities, SDL for Compiler ANA and DIA Files The SDL file here contains the diagnostic-related data structures used for compiler diagnostic (.DIA) files, and Compiler analysis (.ANA) files. These files are commonly supported by OpenVMS VAX and OpenVMS Alpha compilers, and can be used by text editors and other tools +++++++++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_1:[DISKBLOCK058]FREEWARE_README.TXT;2 +++++++++++++++++++++++++++++++++++++++++++++++++++++ DISKBLOCK, UTILITIES, Editor and performance tests for ODS2 ODS5 and Foreign disks DISKBLOCK is a low level disk block editing tool. This V5.8 version contains fixes for bugs that were identified in the version of this tool that was available on Freeware V4.0. It can be used to read, modify and write LBNs on a disk or VBNs in a file. It can also carry out read, write and seek performance measurements. Diskblock ignores all locking activity on the selected Disk or File, it can access and modify ODS2 and ODS5 data structures such as file headers and it can read, write and test individual shadow set members independently! There is a buffer which holds a copy of the block which you read, you can modify the contents of this buffer using EXAMINE and DEPOSIT commands and then REWRITE it to the same block, WRITE it to a different block or SELECT a new disk or file and WRITE the buffer to any block. When you SELECT a disk, diskblock will attempt to map the Index File If it is successful then any command which requires an LBN (READ, WRITE, COPY etc...) will also accept a FID and operate on the appropriate file header. This will work even if the disk is mounted /FOREIGN. There are commands to SAVE and RESTORE the buffer so that you can keep a copy of the original block and undo changes if they do not work as you expect. There is a CHECKSUM command to enable you to recalculate the checksums for ODS2 and ODS5 file headers and home blocks. There is a DIRECTORY command which will find the header for a file (even if the disk is mounted /foreign) There is a COPY command which will enable you to treat any block on a disk as a file header and copy the LBNs described by its mapping pointers to a new file (even if the disk is mounted /foreign). There is a SEARCH command which will search the entire disk/file (or any range of blocks) for a particular string or integer or file header. There is a TEST command which will carry out performance testing. You may specify queue lengths, I/O sizes, read/write ratios and seek types and Diskblock will report throughput and bandwidth to the disk. Because of its potential to corrupt disks you should only use Diskblock in extreme desperation or on a disk which you have backed up. You need LOG_IO privilege to run DISKBLOCK. Diskblock has an extensive help file with further information. +++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_1:[DIX]FREEWARE_README.TXT;21 +++++++++++++++++++++++++++++++++++++++++++++ DIX, Utilities, A program to read/modify records in any RMS (seq/relative/idx) file This program lets you view/modify records in any RMS file. Dix can work in three modes a. Full screen mode. DIX uses SMG to display the data on the screen and allows you to modify it (if you specify /MODIFY (not the default)) This mode is the default on a terminal. You enter this mode by specifying the /SCREEN qualifier. b. Interactive mode. DIX will prompt you for commands. This mode can also be used in batch with command files. If you specified /MODIFY the file can also be modified (not the default). You also have some scripting possibilities with the IF and GOTO commands. You enter this mode by specifying the /INTER qualifier. See the help with DIX/HELP INTER for possible commands. c. File mode. DIX will display a or more records and returns to DCL. No interaction is possible. You enter this mode by specifying the /FILE qualifier. In all three modes the data can be displayed in two ways. a. Interpreted. You need a record descriptor to do this. The descriptor file syntax looks like fortran record definitions(structures) and the descriptors can be in a file or in the DIX_DES.TLB text library. The layout of the descriptor files is described in the DIX help library under the topic DISPLAY_MODES INTERPRETED /DESCRIPTION See DIX/HELP DISPL INTERP /DESCR DIX delivers (in DIX_DES.TLB) descriptors for the following files SYSUAF.DAT RIGHTSLIST.DAT INDEXF.SYS VMS$PASSWORD_HISTORY VMSMAIL_PROFILE DIRECTORY files Some ALL-IN-1 files. And you can add any file you like, if you know the record layout. b. Raw dump. The program displays the data like VMS DUMP and you can modify any byte. See the help via the HELP command. usage: Define DIX as a foreign command DIX:=$'directory'dix_alpha or DIX_VAX DIX filename /qualifiers For the qualifiers see the help via DIX/HELP, but one very one important one is the /MODIFY. If you do not specify /MODIFY the file is opened readonly and cannot be modified. Note: The files DIX.HLB and DIX_DES.TLB must be in the same directory as DIX, or you must define the logical DIX_HELP and/or DIX_DES to another file. Building: The executables for Alpha and Vax are skipped with the kit, as well as the sources. If you want to rebuild DIX, goto the dix directory and use the command procedure @create_dix. This will compile (fortran) and link DIX. Examples: $DIX SYSUAF[/SCREEN]/EQ=smith [/MODIFY] Will display the SYSUAF record of user "SMITH" using SMG, and lets you scroll though this data. If you specified /MODIFY, you can also modify entries (When you type any character on that field, you enter modify mode for that field (this is signalled by an underline under the text)). You leave modify mode for that field when you type ENTER. The (modified) data is not written to the file until you type DO or PF4. F10 or ^Z returns you to DCL. $DIX SYSUAF/INTER/EQ=smith [/MODIFY] Will enter interactive mode (non-smg), and allows you to inspect/modify fields of the current record. It also contains a (limited) scripting language. Type help in this mode to see the possible commands. $DIX SYSUAF/FILE/EQ=smith Will display the data on the terminal, but will not allow you to modify the record (DUMP command). $DIX datafile/FILE/REC=10 Will display the data on the terminal, but will not allow you to modify the record (DUMP command). Only record 10 will be displayed $DIX datafile/FILE/RECORD=10/COUNT=5 Will display the data on the terminal, but will not allow you to modify the record (DUMP command). The records 10 upto 14 (5) wil be displayed. Example of a (complicated) descriptor record of the INDEXF.SYS file the (n) are explained below ubyte id_offset ! Offset to Ident area ubyte map_offset ! Offset mapping area ubyte acl_offset ! Offset to ACL area ubyte res_offset ! Offset to reserved area integer*2 seg_num ! Extension seqment number byte struct_lev_min ! On disk structure level byte struct_lev_maj ! On disk structure level fileid file_id ! File id fileid ext_fid ! File id extension header structure rec_attr ! RMS record attributes byte rectyp byte recattr integer*2 recsiz rinteger*4 hblk rinteger*4 eofblk integer*2 eofbyte byte bucketsize byte vfcsize integer*2 maxrec integer*2 defext integer*2 globbuf integer*2 %fil3(4) integer*2 verslim end structure bits*4 file_char - (1) [Wascontig,Nobackup,Writeback,Readcheck,Writecheck,- Contigb,Locked,Contig,,,,Badacl,- Spool,Directory,Badblock,Markdel,Nocharge,Erase,alm_aip,- shelved,scratch,nomove,noshelvable,shelv_res] character*2 %res_1 ! reserved 1 ubyte map_in_use ! # map words in use byte acc_mode ! File accessor priv mode needed uic owner ! Owning UIC protection protection ! File protection fileid backl_fid ! Backlink file id bits*2 journal ! Journalling flags integer*2 ru_active ! Recover facility unit number integer highwater ! Highest blocknr written + 1 union map struct_lev_maj=5 (2) byte FI5$B_CONTROL [0=ODS-2,1=ODS-5] (3) byte FI5$B_NAMELEN integer*2 FI5$W_REVISION date FI5$Q_CREDATE date FI5$Q_REVDATE date FI5$Q_EXPDATE date FI5$Q_BAKDATE date FI5$Q_ACCDATE date FI5$Q_ATTDATE integer*8 FI5$Q_EX_RECATTR integer*8 FI5$Q_LENGTH_HINT_LOW integer*8 FI5$Q_LENGTH_HINT_HIGH character*(fi5$b_namelen) FI5$S_FILENAME (7) end map map struct_lev_maj=2 character*20 fnam ! Variable mapped entries integer*2 revnr date*8 cdat date*8 rdat date*8 edat date*8 bdat character*66 rest_fnam end map map * (4) integer*4 data(20) end map end union range (map_offset*2:map_offset*2+map_in_use-1) (5) diskmap maps(256) end range range (acl_offset*2:res_offset*2-1) acl acls(50) end range position (min(510,max(0,recordsize))) (6) integer*2/hex checksum (1) is an example for a bits type. The part between the [] gives an more friendly view of the bits. For example bit3 will be displayed as "readonly" Any bit not described will be displayed as BITnn (for example bit8) (2) is an example of a union/map structure. A union contains one or more maps. This part is selected if the field STRUCT_LEV_MAJ contains 5. See also (4) (3) This is an example for an integer (byte). The part between the [] gives a list of possible values of the integer. For example : if the value of FI5$B_CONTROL is 1, the text displayed is ODS-5. Anly other value than 0 or 1 will be displayed as the normal numeric text. (4) The rest of the union/map. If none of the map statements has matched, this one will. If you do not specify a map with an *, the first map will be taken (in this case the map struct_lev_maj=5 (5) This is an example for the RANGE statement. A RANGE defines a part of the record. In this case the field diskmap map(256) in contained in a part of the record between bytes map_offset*2:map_offset*2 and map_in_use-1 The length 256 is choosen to be big enough. (6) A example of a Position statement. This set the offset for the next field to an absolute value (in this case 510). The next field (checksum) will be at offset 510. (7) The length of the character string depends on a previous field (fi5$b_namelen). All fieldsizes are in bytes, except within a bitfield/endbitfield range. In this bitfield_mode only (u)integer, bits and logical fields are allowed. Another example of files that are linked The example is about 3 RMS indexed files that form a simple sourcemodule cross_reference system The first file (CROSS_REF.CRF_CROSS) has the following description (.CRF_CROSS in the system or user textlibrary) integer*2 caller_nr /file=.crf_mod_names !link to modulename integer*2 called_nr /file=.crf_mod_names !link to modulename The second file (CROSS_REF.CRF_MOD_NAMES) has the following description (.CRF_MOD_NAMES in the system or user textlibrary) integer*2 mod_nr !primary key character*32 mod_name integer*2 file_nr/file=.crf_file_names !link to the filename The third file (CROSS_REF.CRF_FILE_NAMES) has the following description (.CRF_FILE_NAMES in the system or user textlibrary) integer*2 file_nr !primary key character*60 file_name integer*2 %filler When you now (dix-)edit the CROSS_REF.CRF_CROSS file $DIX CROSS_REF.CRF_CROSS %DIX-I-USINGFIL, Using file DSA40:[DIR]CROSS_REC.CRF_CROSS %DIX-I-USINGDES, Using description SYSLIB(.CRF_CROSS) DIX> EXA * 0|CALLER_NR>|738 !the > tells us there is a link present 2|CALLED_NR>|-262 You can follow the link to the next file DIX> Follow CALLER_NR !try to follow this link File .CRF_MOD_NAMES not (yes) opened, open it (y/[n]):Y !do you want to o %DIX-I-USINGFIL, Using file DSA40:[DIR]CROSS_REF.CRF_MOD_NAMES %DIX-I-USINGDES, Using description SYSLIB(.CRF_MOD_NAMES) DIX> Exa * 0|MOD_NR |738 2|MOD_NAME|CHECK_ALLOWED_USER 34|FILE_NR>|66 !and this field also has a link defined Now follow the link to the third file (open automatic) DIX> Follow/automatic file_nr %DIX-I-USINGFIL, Using file DSA40:[DIR]CROSS_REF.CRF_FILE_NAMES %DIX-I-USINGDES, Using description SYSLIB(.CRF_FILE_NAMES) DIX> Exa * 0|FILE_NR |66 2|FILE_NAME|REM_SERVER_CHECK_ACCESS Now backtrace to the CROSS_REF.CRF_MOD_NAMES file DIX> BACK %DIX-I-USINGFIL, Using file DSA40:[DIR]CROSS_REF.CRF_MOD_NAMES %DIX-I-USINGDES, Using description SYSLIB(.CRF_MOD_NAMES) DIX> Exa * 0|MOD_NR |738 2|MOD_NAME|CHECK_ALLOWED_USER 34|FILE_NR>|66 For a complete list of directives see the help in the DIX.HLB under the topic "DISPLAY_MODES INTERPRETED_DUMP/DESCRIPTION RECORD_FORMAT". Use DIX/HELP to display this help. Note: Be careful when modifying datafiles. DIX is very powerful and has no UNDO function after you update the record. If you modify the record, there is no way back except the backup (if you have one). /BLOCK mode is even more powerful, since it bypasses RMS. This package contains the following files In the main directory DIX_VAX.EXE The Vax executable DIX_ALPHA.EXE The Alpha Executable DIX.HLB The help library DIX_DES.TLB The file containing the descriptor records CREATE_DIX.COM The command procedure to compile/link FREEWARE_README.FIRST This file In the [.SRC] directory The FORTRAN sources DIX_MAIN.FOR The main program DIX_CON_LIBRARY.FOR The conversion routines ascii<>binary DIX_DES_LIBRARY.FOR The descriptor file routines DIX_DUMP_LIBRARY.FOR The dump routines DIX_DUMP_FILE_LIBRARY.FOR The dump to file (noscreen) routines DIX_DUMP_INTERACTIVE_LIBRARY.FOR The dump to file (noscreen) routines DIX_DUMP_SCREEN_LIBRARY.FOR The dump to screen (SMG) routines DIX_EDIT_LIBRARY.FOR The editor functions DIX_EVAL_LIBRARY.FOR The expression evaluation routines DIX_HELP_LIBRARY.FOR The interface to the help (FSHELP) program DIX_KEYDEFS.FOR The key-definition library DIX_LBR_LIBRARY.FOR The LBR interface routines DIX_MEMTAB.FOR The memory-file routines DIX_RMS_LIBRARY.FOR The interface to RMS routines DIX_STARTUP_LIBRARY.FOR The Startup routines DIX_SYMBOL_LIBRARY.FOR The routines for symbol manipulation. DIX_SMG_LIBRARY.FOR The interface to SMG routines DIX_UTIL_LIBRARY.FOR The utility library The include files DIX_DEF.INC The general include definitions DIX_MEMTAB.INC The MEMTAB definitions DIX_KEYDEFS.INC THe keydefs definitions The Help file DIX.HLP The CLD files DIX_CLD.CLD The command line definitions DIX_INT_CLD.CLD The commands for interactive mode DIX_STARTUP_CLD.CLD The commands for the startup file In the [.VAX] directory The vax objects In the [.ALPHA] The Alpha objects Instructions: Unpack the save set If you want to rebuild the program If you have a fortran compiler @create_dix otherwise, just link @create_dix link I included all objects so you can relink. Author: Fekko Stubbe If you have questions or suggestions, please mail to the mail address below: Email : dixdev (at) 4ovms.dyndns.org or fekko.stubbe (at) xs4all.nl +++++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_1:[DQDRIVER]FREEWARE_README.TXT;1 +++++++++++++++++++++++++++++++++++++++++++++++++ DQDRIVER, SOFTWARE, ATA/ATAPI (IDE) Disk Driver for OpenVMS Alpha Beware: This version is newer than OpenVMS Alpha V7.3-2. SYS$DQDRIVER is an ATA/ATAPI (IDE) disk driver for OpenVMS Alpha. The driver was originally written and tested on an add-in ATA controller board as well as the on-board IDE controller found on early members of the AlphaStation series. The driver has been substantially revised in subsequent releases and includes ATAPI CD-ROM device support. In addition, the driver has been incorporated in OpenVMS Alpha and is supported on various recent platforms. This version of SYS$DQDRIVER continues the inclusion of IO$_DIAGNOSE for use with CD-ROM audio and also for use with ATAPI devices such as CD-RW and DVD+RW. This version is newer than that included with OpenVMS Alpha V7.3-2, and contains changes to IO$_DIAGNOSE not found in V7.3-2 and prior. This version particularly corrects cases where the SS$_NORMAL was erroneously returned when the requested IO$_DIAGNOSE operation had failed. There may be (will be?) changes made to this version prior to its release either as an ECO kit and/or with an OpenVMS Alpha and/or OpenVMS I64 release after V7.3-2. The driver is provided as an example, and as with any hardware-based tools, you should use at your own risk. Failures within DQDRIVER can lead to OpenVMS system crashes, and errors may or may not result in disk and memory data inconsistencies or corruptions. A version of DECW$CDPLAYER been included in the kit. This version contains enhancements for ATAPI CD-ROM audio support via the new IO$_DIAGNOSE interface in DQDRIVER. The new version of the CD player can be used to play CD-ROM audio from either ATA/ATAPI drives or from SCSI CD-ROM drives. This package has the following code modules: DQDRIVER.C - ATA/ATAPI device driver source file. DQDRIVER.COM - Build file for SYS$DQDRIVER ENABLE-IDE.C - tool to enable the built-in ATA for the AlphaStation 400 4/233 and load the ATA driver. (Beware: DQDRIVER is presently autoconfigured on all Alpha systems with support for ATA/ATAPI devices.) ENABLE-IDE.COM - Build file for ENABLE-IDE.C IDE-INFO - tool to dump the identity page information from an ATA drive. IDE-INFO - Build file for IDE-INFO.C DECW$CDPLAYER.C - New version of DECwindows CD-ROM audio player with support for ATAPI CD-ROMs. DECW$CDPALYER.UIL - Interface definition file for CD player DECW$CDPLAYER.EXE - Excutable for V7.1-2 DECW$CDPALYER.UIL - Compiled Interface definition file. Must be co-located with the .EXE file. Also included in this directory is the procedure LOAD_DQ_INTEL_SIO.COM, which will connect and load DQDRIVER for operation with the Intel SIO peripheral controller found on some members of the Personal Workstation -au series Alpha systems. (DQDRIVER is supported with and autoconfigures on and can boot via the Cypress ATA/ATAPI PCI Peripheral Controller found on various Personal Workstation -au series systems. OpenVMS cannot boot from ATA/ATAPI (IDE) devices connected via the Intel SIO PCI adapter. If your system has the Intel SIO, you must boot from a SCSI device.) To determine which ATA/ATAPI controller you have, use the SRM console command SHOW CONFIGURATION. If your controller is shown as: Bus 00 Slot 07: Cypress PCI Peripheral Controller You can directly use DQDRIVER, can boot from supported ATA/ATAPI devices, and do not require LOAD_DQ_INTEL_SIO.COM. If your controller is: Bus 00 Slot 07: Intel SIO 82378 You cannot bootstrap from any ATA/ATAPI devices, and DQDRIVER will not configure automatically. If you wish to use DQDRIVER with ATA/ATAPI devices connected via the Intel SIO, you will need LOAD_DQ_INTEL_SIO.COM. ++++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_1:[DSRPLUS]FREEWARE_README.TXT;1 ++++++++++++++++++++++++++++++++++++++++++++++++ DSRplus, Utilities, DIGITAL Standard Runoff Plus This is a text-processing package for OpenVMS VAX that builds on the DSR package. DSR has been left latent within OpenVMS VAX for some time, and is unsupported. ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_1:[DVDARCHIVERESTORE]FREEWARE_README.TXT;5 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ DVDARCHREST, Utilities, Multi-Volume CD and DVD Archives and Restores The name of this package is "DVDarchive/restore". This consists of two small programs, readdisk.exe and writedisk.exe, and a command-procedure that manages the images. "DVDarchive/restore" solves the following problem: If you have more data than will fit on your target CD or DVD media, this tool allows you to save and restore the data across volumes. ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_1:[DVDRTOOLS-0_1_5]FREEWARE_README.TXT;2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ DVDRTOOLS, UTILITIES, DVD-R/RW Recording Tools for OpenVMS This is an early port of DVDRTOOLS-0_1_5. The core CDRECORD engine is known to function with local CD-R drives, but a (local) lack of DVD-R and DVD-RW drives and a lack of support within this DVDRTOOLS-0_1_5 for the available local DVD+R and DVD+RW drives has meant that none of the DVD code has been tested. Again, CD-R operations have been tried and do function with Plextor PlexWriter SCSI drives and do with CD-R media loaded in HP DVD200 series DVD drives. This version of MKISOFS is known not to function. (Problems within the assumptions made around the readdir and related calls being one reported area of incompatibility.) Other components of DVDRTOOLS here have not been tested. ++++++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_1:[DWREMTERM]FREEWARE_README.TXT;1 ++++++++++++++++++++++++++++++++++++++++++++++++++ DWREMTERM, SYSTEM_MGMT, Start X-Window displays on remote machines This command procedure is designed to allow users flexability in using DECwindows across a large number of machines connected together by a Local Area Network. It allows users to create LAT, DECnet, Telnet and LDT windows locally and connect to remote nodes or to create remote DECwindow sessions using the RDT, RFV, RDW, DWRT and RSH commands. The remote commands are actually network process's and therefore do not count as an interactive login. DWremterm can be run in two modes: MENU MODE: commands are entered from a Small Menu Window. COMMAND MODE: commands are entered from the DCL command line. Valid command are:- HELP, DWHELP, LAT, DECNET, TELNET, LDR, RDT, RFV, RDW, RSH, DWRT and $. Parameters listed are [] brackets is optional. HELP: Gives details on how to receive Brief or Expanded Help DWHELP: Provide detailed Help on DWremterm LAT: Creates a Local DECterm Window using a SET HOST/LAT command. LAT nodename DECNET: Creates a Local DECterm Window using a SET HOST command. DECNET nodename TELNET: Creates a Local DECterm Window using a TELNET command. TELNET nodename LDT: Creates a local decterm and then does an rlogin LDT nodename [init_state] [title] RDT: Creates a Remote Decterm Window. RDT nodename [init_state] [title] [dcl_command] [display] [transport] [x:y] RFV: Creates a Remote Fileview Window. RFV nodename [init_state] [display] [transport] RDW: Runs a Remote Remote Decwindows Application. RDW nodename command [display] [transport] RSH: Runs RSH commands on a remote node. RSH nodename command DWRT: Starts a second DWremterm Window. DWRT nodename [init_state] [display] [transport] $: Executes a local DCL command For further details refer to sys$library:dwremterm.hlb. A unique window title and icon name is chosen by referencing the user's process name. If the login sequence changes the process name then duplicate window and icon names may occur. Refer to SYS$HELP:DWREMTERM.HLP for further help by typing:- @VUE$LIBRARY:DWREMTERM DWHELP. DWremterm consists of two files: SYS$COMMON:[VUE$LIBRARY.USER]DWREMTERM.COM SYS$COMMON:[SYSHLP]DWREMTERM.HLB The RDT, RDW, DWRT and RFV commands require DWREMTERM.COM to exist on the both the local and remote node and requires the user to either specify node access control or for the remote account to be set up for proxy access. DWremterm can simply reside in sys$login on the remote node, which requires each user to have their own copy -or- DWremterm can be defined as a DECnet object, requiring each system to have only one copy. DECNET: To install DWremterm as a network object the system manager should enter the following commands: DECnet/IV: $ MCR NCP NCP> DEFINE OBJECT DWREMTERM NUMBER 0 FILE - SYS$COMMON:[VUE$LIBRARY.USER]DWREMTERM.COM PROXY BOTH NCP> SET OBJECT DWREMTERM ALL NCP> EXIT $ DECnet/OSI: $@sys$startup:net$configure application_add dwremterm "" - "{name=dwremterm}||vue$library:dwremterm.com|true|true|true|true|true||||1" If DWremterm is not installed as a network object then by default no other setups are required. However if the DECnet object task has been modified to disable proxy access then DWremterm will fail. In this case the system manager should enter the following commands: $ MCR NCP NCP> DEFINE OBJECT TASK PROXY BOTH NCP> SET OBJECT TASK ALL NCP> EXIT $ PROXY accounts allow one user direct access to another users account without having to specify username and password. The system manager can set up proxy account access from within AUTHORIZE. Example: $ MCR AUTHORIZE> UAF> ADD/PROXY MVAX::KINGSMILL KINGSMILL/DEFAULT UAF> ADD/PROXY MVAX::KINGSMILL OLSENK UAF> EXIT $ This examples allows user KINGSMILL on node MVAX into the local KINGSMILL and OLSENK account. The default switch enables you to specify just the nodename when addressing this node:- eg. $ DIRECTORY TVAX:: If Default access is not specified then you need to specify the nodename and username when addressing this node:- eg. $ DIRECTORY TVAX"OLSENK":: If you do not have proxy access then you need to specify the nodename, username and password when addressing a remote node:- eg. $ DIRECTORY TVAX"SYSTEM password":: LAT: VMS V5.5-2 is required for outgoing LAT. This is enabled as follows:- MCR LATCP> SET NODE/CONNECTION=BOTH. TCPIP: To prevent the need to use passwords on the RSH command proxies can be set up to authorize remote user access. To set up remote user access on a UNIX machine, or TCPWARE/MULTINET under VMS you specify the remote node and username in the .rhosts file which resides in the users home directory. With UCX you use the "UCX> ADD PROXY command" In addition, if you don't want to specify a password on RSH and RLOGIN you may need to add the following:- UCX> set service rsh /flag=(proxy,case) UCX> set service rlogin /flag=(proxy,case) DISPLAY SECURITY: The Factory Defaults prohibit a remote users from displaying their output to your workstation. To authorize other users or remote nodes to use your workstation display you should: 1. Choose Security... from Session Manager's Options menu. 2. Type the nodename, the username, and the method of transport, of the user you want to authorize. Entering * * * will allow any user on any node with any transport to display output on your workstaton. 3. Click on the Add button and the Clock OK. Refer to the DECwindows user guide for further information. CONFIGURATION SETUPS: The following logicals can be used to alter default DWremterm behaviour. DWREMTERM_ENABLE_COPY gives the user the option of copying the latest version of DWREMTERM should there be a mismatch in versions between the local and remote node. The WINDOW POSITION and INITIAL STATE can be altered from the default by editing the resource file. Details on how to do this is given within the following resource files. Default DWremterm window: - decw$user_defaults:dwremterm$default_v*.dat DWRT DWremterm window: - decw$user_defaults:dwremterm$dwrt_default_v*.dat This is on the remote node/users account. You can also override the DWRT resource file window position by defining the logical names DWREMTERM_DWRT_X and DWREMTERM_DWRT_Y under your local user account. These values are then passed to the remote node/users account. LAT$DISCONNECT_CHARACTER defines the character that you can use to disconnect from a remote session. Default character is Ctrl+\. SYS$SCRATCH - temporary files are written to sys$scratch. If you don't want the temporary files written to sys$login then define sys$scratch. TROUBLESHOOTING HINTS: o Ensure that Security has been set up to enable a remote node to display output on your workstation. See installation section above for further details. o The following logicals can be used to aid in troubleshooting These can be defined before starting DWremterm or during a DWremterm Session by using the $ command. DWREMTERM_VERBOSE to display the progress of both local and remote events. If verbose is enabled then a full sized menu window will be displayed. This can also be enabled by prefixing the version with an "X". DWREMTERM_VERIFY to turn on verify and verbose. o NETSERVER.LOG on the remote node may also aid in troubleshooting. o DWREMTERM_'pid'*.COM temporary file on the remote node shows the created command file. o DWREMTERM_'pid'_*.LOG temporary file on on the remote node showing the output from dwremterm_'pid'_*.TMP o If you have problems creating DECterms then get the latest DECterm patch from your CSC. TIPS: o By default you cannot shutdown VMS from an RDT window when running DECnet/OSI or DECnet/Plus because the shutdown procedure stops DECnet, which aborts the DWremterm session and the shutdown procedure itself. You can workaround this by doing the following:- $ DEFINE NET$STARTUP_STATUS SHUTDOWN $ @SYS$SYSTEM:SHUTDOWN +++++++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_1:[EMACS-21_2]FREEWARE_README.TXT;1 +++++++++++++++++++++++++++++++++++++++++++++++++++ Emacs, Utilities, The Emacs 21.2 Text Editor This is an OpenVMS port of the emacs text editor. ++++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_1:[FIND015]FREEWARE_README.TXT;2 ++++++++++++++++++++++++++++++++++++++++++++++++ FIND, UTILITIES, SEARCH with Replacement Capabilities FIND/REPLACE is a close relative of the UnI*x tool grep, with the option to replace the targets found, and with the command line syntax of the OpenVMS SEARCH tool. With the exception of the absence of /MATCH=AND and /MATCH=OR, the interface is compatible with SEARCH. The tool supports both LSEDIT and POSIX regular expressions. ++++++++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_1:[FIXUP_IMAGE]FREEWARE_README.TXT;2 ++++++++++++++++++++++++++++++++++++++++++++++++++++ FIXUP_IMAGE, UTILITIES, Fix an image's shareable image information Copyright ©2001, Applied Synergy, Inc. All rights reserved. FIXUP_IMAGE can edit the shareable image information in an executable image file. This can be used to avoid the dreaded: %DCL-W-ACTIMAGE, error activating image VAXCRTL -CLI-E-IMGNAME, image file DKA0:[SYS0.SYSCOMMON.][SYSLIB]VAXCRTL.EXE -SYSTEM-F-SHRIDMISMAT, ident mismatch with shareable image In some cases, it can also remove extraneous references to shareables that do not exist on the current system. For example, it can remove this message which can occur when you try to run an image linked under VMS V6 or later on a VMS V5 system: %DCL-W-ACTIMAGE, error activating image CMA$TIS_SHR -CLI-E-IMAGEFNF, image file not found DKA0:[SYS0.SYSCOMMON.][SYSLIB]CMA$TIS_SHR.EXE; FIXUP_IMAGE V2.0 only supports VAX executables. -------------------------------------------------------------------------------- FEEDBACK Comments, suggestions, and questions about this software can be directed to eMail address: fixup_image@applied-synergy.com Applied Synergy, Inc. may or may not respond to these messages. -------------------------------------------------------------------------------- COPYRIGHT NOTICE This software is COPYRIGHT ©2001, Applied Synergy, Inc. ALL RIGHTS RESERVED. Permission is granted for not-for-profit redistribution, provided all source and object code remain unchanged from the original distribution, and that all copyright notices remain intact. DISCLAIMER This software is provided "AS IS". The author and Applied Synergy, Inc. make no representations or warranties with respect to the software and specifically disclaim any implied warranties of merchantability or fitness for any particular purpose. +++++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_1:[FREEWARE]FREEWARE_README.TXT;1 +++++++++++++++++++++++++++++++++++++++++++++++++ FREEWARE, FREEWARE, The Master OpenVMS Freeware README File OpenVMS Freeware CD-ROM ReadMe ------------------------------ Welcome to the HP OpenVMS Freeware V6.0 CD-ROM. All the software included on this CD-ROM is also available for (free) download at the OpenVMS web site: http://www.hp.com/go/openvms/freeware/ This document contains a general introduction to the OpenVMS Freeware as well as notes specific to the Freeware V6.0 distribution. General Introduction -------------------- The OpenVMS Freeware CD-ROM contains free software tools and utilities to aid software developers, partners and OpenVMS Hobbyists in creating applications, and in managing and using OpenVMS systems, as well as packages that can serve as programming source code examples. Contained on this CD-ROM are of packages for OpenVMS VAX, OpenVMS Alpha, and OpenVMS I64, divided into general categories including the following: AFFINITY Interoperation with Microsoft Windows systems BUILD_TOOLS Build tools WEB_TOOLS CGI and HTML tools GAMES Games (also see Motif Toys) GRAPHICS Graphics tools LANGUAGES Compilers, assemblers, and language-related MISCELLANEOUS Or ask for the creation of a new category MOTIF_TOYS X Windows, CDE, and Motif toys (see Games) NETWORKING Networking and network-related tools PROGRAMMING Source Code Examples, APIs, etc SYSTEM_MANAGEMENT Tools related to system management, security STORAGE_MANAGEMENT Tools related to storage management UTILITIES Random Utilities unrelated to other categories FREEWARE Reserved for use by Freeware CD-ROM constructs Many of these tools are popular packages already widely known and in use, while others are internally developed HP OpenVMS tools our engineers are making available to you, our OpenVMS customers. For example, the OpenVMS Freeware CD-ROM includes Bliss compilers for various OpenVMS platforms. The Freeware CD-ROM includes the following features: o Includes an easy-to-use 4GL-based menu system for examining the contents of the CD-ROM. o Is in Files-11 format to make it readable on OpenVMS systems. o Contains binaries, source code (except for the Bliss compilers and specific other HP-provided packages), and documentation. o Represents some of the most popular, most often requested free packages, plus new items never before made public. Disclaimer on Testing, Quality, and Licensing The OpenVMS Freeware CD-ROM set is provided "AS IS" without warranty. HP adds no Freeware-specific restrictions on the distribution or redistribution of the contents of these disks, nor adds any specific restrictions onto the redistribution of any packages on it. Be aware, however, that various of the individual packages on the CD-ROM may carry restrictions on their use or on their redistribution, as imposed by the original author(s) or owner(s) of the package(s). Therefore, you should carefully read the documentation accompanying any products of interest. HP is providing this software free of charge and without warranty -- copies of packages (and various package updates that might become available) can usually be downloaded from http://www.hp.com/go/openvms/freeware, and (additional) copies of this CD-ROM set can be ordered from HP for a small media replication, handling, and distribution charge. Included in the [FREEWARE] directory on this CD are various GNU software licenses. HP makes no claims concerning this software, and provides this CD-ROM distribution to the OpenVMS community and to HP customers as a free service. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Remember, all packages contained herein are supplied AS IS. All packages are without any warranty, expressed or implied. HP has performed no verification, no code reviews, and no testing. You are solely responsible for support, debug, test and remediation. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ General Freeware V6.0 release notes ----------------------------------- o There were the usual problems building the distributions due to errors found in various FREEWARE_README.TXT files, and due to submissions that were missing the (required0 FREEWARE_README.TXT file. The Keeper of the Freeware (KoF) apologizes for these changes, and for the last-minute changes. o Several BACKUP saveset submissions were unpacked only with difficulty, due to problems with the ZIP archive files. Various file attributes were reset to match OpenVMS expectations, but there may well be additional files that do not have the expected file attributes. One tool that may be useful for this [000TOOLS]RESET_BACKUP_SAVESET_ATTRIBUTES.COM. o Most of the submissions in this kit were zipped solely to try to fit the total volume of Freeware submissions -- and thank you for your response to the Freeware collection effort! -- onto the available CD-ROM storage. Kits providing PCSI or VMSINSTAL installation kits were zipped in multiple parts, and the installation kits were left available outside the main zip archive for the submission. For the unzip tool, please see [000TOOLS] and (if you cannot use the pre-built version here for some reason) please see the various sites offering pre-built Zip images referenced in the OpenVMS Frequently Asked Questions (FAQ). o Kits that were submitted as zip archives were unzipped first, and then re-zipped into a consistent format and settings. This means various of the submissions will appear different than what was originally submitted. For the unzip tool, please see [000TOOLS] and also please consider the unzip download pointers in the OpenVMS Frequently Asked Questions (FAQ). o The menu system is deliberately not requiring all CD-ROMs in the Freeware set to be mounted at the same time -- this avoids the requirement to have multiple CD-ROM drives. This also unfortunately makes it somewhat more difficult to rummage around on the various disks. o Please take the time to examine the following files and directories: [000000]AAAREADME.* [000000]OPENVMS_FREQUENTLY_ASKED_QUESTIONS_FAQ.TXT [000000]00FREEWARE_ABSTRACT.TXT [000TOOLS]*.* [FREEWARE]*.* [VMSFAQ]*.* These files are replicated on all Freeware CD-ROM disks. o Current copies of the OpenVMS Frequently Asked Questions (FAQ) document are available at: http://www.hp.com/go/openvms/faq/ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Thank you, Stephen Hoffman Keeper of the Freeware HP OpenVMS Engineering October, 2003 ++++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_1:[FSHELP]FREEWARE_README.TXT;18 ++++++++++++++++++++++++++++++++++++++++++++++++ FSHELP, utilities, A full screen help utility with lots of extra's FSHELP is a screen-oriented help utility. It makes use of SMG routines to display help on video terminals. It has the following features - Full screen display of normal .HLB files (scrolling in both directions). Fshelp can also display data from .TLB, .OLB and .MLB files including an analyze/object of a module in an .OLB file. - Selecting subtopics by just typing the name of the subtopic or enter. - Allows cross-referencing of help modules via extra info in help file. - Allows header lines to remain on screen when scrolling. - Allows you to look back at the last 20 topics. - Allows you to mark some help topics for easy return to this topic - Allows you to toggle 132/80 columns - On all screens help can be displayed via the HELP or PF2 key - FSHELP checks for all libraries via the hlp$library* logicals and lets you select one of them via the TAB key. - FSHELP also interfaces to the HELP/MESSAGE databases so you can define FSHELP as your normal help utility (HELP:=$'directory'FSHELP) - There is a sharable image that can be called from any other application to display help (lib$find_image_symbol), so you can display help in FSHELP format from any image. - FSHELP messages are in English, Nederlands(Dutch) or Frysk (A language spoken in the north of Holland). You can easily add you own language (see the .MSG file for help). FSHELP does not translate text in helpfiles, only the FSHELP messages are in the selected language. - You can search text within a help page ((PF1-)PF3), or on this page and all deeper levels ((PF1-)FIND). If you are on the top page of the help library, you can search through the whole library, or even in all loaded libraries. Help files and libraries are in the same format as normal VMS help files. The format is described in the VMS LIBRARIAN UTILITY MANUAL, chapter 5 : HELP Libraries with the following additions. All these commands start with an ! so VMSHELP will ignore them. a. !# Signal the end of header lines in a help text. Th(is)(ese) lines (upto 4) will remain on screen, even when the rest of the text is scrolled. b. ![text on screen]@library topic topic ... FSHELP will save this information, and when you type the F12 key, a list of topics will be displayed, from which you can select one. @library is optional. This gives a possibility to make see-also entries. c. !@[text on screen]DCL command|dcl command... FSHELP will save this information, and when you type the PF1-E (execute) command, FSHELP will let you select one of the execute-scripts. FSHELP will generate a batch-job in the queue FSHELP_QUEUE (default SYS$BATCH) containing the above lines (separated by |). In these commands you can specify symbols to be asked from you. These symbols are separated by '. FSHELP will check if there is a symbol with that name. If this symbol exists FSHELP will substitute the value of that symbol, otherwise FSHELP will ask you for a substitution. Example !@[header]$compute 'test'/out=q.q|$print/delete q.q will try to find the symbol test, and if not found will ask you to specify a new value for 'test'. Then a batchjob will be submitted in the queue in the symbol FSHELP_QUEUE (default SYS$BATCH) containing the lines: $compute new_value/out=q.q $print/delete q.q where new_value is the value found in the symbol TEST or the value given by you. VMS HELP will ignore all lines starting with ! (as will FSHELP), so these lines can be included without interfering with VMS HELP. You can enter help topics on the command line, just as VMS HELP. The format is fshelp [@libraryname] [topic [topic...]] FSHELP does not only display help files, it can also display data from .TLB, .OLB (object and shareable image files) and .MLB files via the qualifier(s) /text, /object, /image and /macro For further help look at the FSHELP help file, you can do that by typing fshelp=$'directory'fshelp_alpha (or _vax) fshelp/ownhelp Where 'directory' is the directory where fshelp (and its help file ) can be found When looking at a help page, you can display the deeper topics by typing a Return, a /, or a letter. This will display a menu containing the deeper topics. The / or letter will jump to the first topic containing that letter (or starting with that letter if you specified /NOSEARCHWILD). Typing FIND will jump to the next topic that matches. By typing more letters you can make your search more exact. PF4 or F10 returns to the previous screen. For more help type PF2 or HELP. Usage: Define fshelp as a foreign command $FSHE*LP:=$'diretory'FSHELP_ALPHA or FSHELP_VAX Start it as normal help $FSHELP [topic [subtopic...]]] !give normal help $FSHELP/OWNHELP !give help info about FSHELP $FSHELP/TEXT [module] !Display [the module in] FORSYSDEF.TLB $FSHELP/IMAGE [module] !display [the module in] IMAGELIB.OLB library $FSHELP/OBJECT [module] !Display [the module in] STARLET.OLB library ! in the deeper help you can get analyze/object info $FSHELP/MACRO [module] !display [the module in] LIB.MLB $FSHELP/LIBR=*.HLB !Display help about all .HLB files in SYS$HELP $FSHELP/LIBR=*.HLB/LOAD !Read all info from all .HLB files to memory for ! fast access (this takes a while, but if you do ! not leave FSHELP, access is fast). ! select libraries via the TAB key. $FSHELP/MESSAGE Accvio !give help/mess about the ACCVIO item The libraries chosen for the /text, /objext, /macro ,/image can be changed. See the .MSG file for more info There are a lot more qualifiers, see the FSHELP/OWNHELP for more info. Note: Of course you can also define FSHELP as HELP. Also included is a shareable image that can be called from any application See the FSHELP_OUTPUT_HELP_EXAMPLE.FOR for more info. Contents: This package contains the following files In the home directory README.FIRST This file CREATE_FSHELP.COM The command file to compile/link FSHELP and the sharable image FSHELP_ALPHA.EXE The main executable FSHELP_SHR_ALPHA.EXE The sharable image FSHELP_VAX.EXE The main executable FSHELP_SHR_VAX.EXE The sharable image FSHELP.HLB The help library in the [.src] directory a. The fortran sources FSHELP.FOR The main program FSHELP_MAIN.FOR The body for the sharable image FSHELP_DISP_INFO.FOR Display info about open libraries/modules FSHELP_MSGHELP.FOR The help/message routines FSHELP_UTIL.FOR Utility routines FSHELP_SCR.FOR SMG routines FSHELP_FILES.FOR FIle handling (lbr) FSHELP_OBJECT.FOR The module for analyze/object FSHELP_OBJECT_VAX.FOR The module for analyze/object of vax object FSHELP_OBJECT_ALPHA.FOR The module for analyze/object of alpha object FSHELP_OUTPUT_HELP_EXAMPLE.FOR Example how to call the sharable image VM_LIBRARY.FOR Interface to LIB$GET_VM b. the include files FSHELP_DEF.FOR The definitions for the interface to FSHELP_SHR FSHELP.INC Internal definitions to fshelp VM_RECORD.INC Definitions for VM_LIBRARY c. The .cld file FSHELP_CLD.CLD d. The message file (includes all screen messages in all languages) FSHELP_MSG.MSG e. The help file FSHELP.HLP f. The jump vector (for VAX) for the sharable image FSHELP_SHR.MAR in the [.vax] subdirectory All the vax-objects of the sources in the [.alpha] subdirectory All the alpha objects of the sources Instructions: unpack the .BCK file The executables are included in the kit, but if you want to rebuild FSHELP, do the following: If you have a fortran compiler you can compile and link $@create_fshelp Otherwise, just link $@create_fshelp LINK This will create the FSHELP_'architecture' and the FSHELP_SHR_'architecture' images and the FSHELP.HLB help file. I included the objects so you can adapt messsage files even if you do not have a fortran compiler. Author : Fekko Stubbe If you have suggestions or questions, plaese mail to te address below Email : fshelpdev (at) oooovms.dyndns.org or : fekko.stubbe (at) xs4all.nl +++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_1:[GD]FREEWARE_README.TXT;2 +++++++++++++++++++++++++++++++++++++++++++ GD, Graphics, Library to create graphs from programs Installation Just execute @make to build the library. This checks for available compilers as well as MMS/MMK and uses them for the build if available. Upon first invocation make will generate a template vmslib.dat, which needs to be tailored to reflect your local installation. Minimum requirement for using the current version of the GDlib is to have installed Libpng and Zlib. Additional features of the library can be used if the following libraries are available too: Jpeglib, Freetype 2, and XPMlib. All information on these libraries needed by the build procedure is collected in the file vmslib.dat. The format of this is documented here. If not available make.com will create a template vmslib.dat upon first invocation which needs to be tailored to match the local installation. Build options Make.com currently accepts the following options in arbitrary order: DEBUG Build the library with debug information and without optimization. lopts= Options to pass to the link command e.g. lopts=/tracback ccopt= Options to pass to the C compiler e.g. ccopt=/float=ieee LINK Do not compile, just link GD example programs CC= Force usage of the given C compiler over the intrinsic selection (which is DEC C, VAX C, and finally GNU C). Package contents The main result of the compilation ist he object library libgd.olb, which other applications need to link against. Additionally a number of small executable programs are created: ANNOTATE Add text to a JPEG graphics files FONTSIZETEST Creates four test images with fonts of varying sizes FONTWHEELTEST Creates four test images of spoke wheels GD2COPYPAL Converts the color palette of a file in GD2 format to a specified palette. GD2TIME Timing program for GD2 reads. GD2TOPNG Read file in GD2 format and create file in PNG format. GDDEMO GD demonstration GDPARTTOPNG Convert rectangular section of gd image to PNG format GDTEST Test suite for GD GDTESTFT Create test image using true type font GDTOPNG Convert file from GD format to PNG format. PNGTOGD Convert a PNG file into a GD file PNGTOGD2 Convert a PNG file into a GD2 file TESTAC Create various test images from PNG image with alpha channel WEBPNG Report/change characteristics of a PNG image Programs using the GD library Fly Simple frontend to GD GDchart Library for on-the-fly chart generation (based on GD). GD.pm Perl module with bindings to the GD library Installation The latest version of the OpenVMS port of the GD library should always be accessible via http://www.decus.de:8080/www/vms/sw/gd.htmlx ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_1:[GHOSTSCRIPT-V0811]FREEWARE_README.TXT;1 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ GHOSTSCRIPT,UTILITIES,Postscript and PDF interpreter for OpenVMS An interpreter for the PostScript language and the Adobe Portable Document Format (PDF -- sometimes confused with Acrobat, Adobe's PDF browser and editor product); Input modules (utilities) for reading a variety of raster formats, including CMYK, GIF, JFIF (JPEG), MIFF, PBM/PGM/PPM, and PCX; Output modules (drivers) for a wide variety of window systems (including X Windows and Microsoft Windows), raster file formats, and printers, as well as a PDF output module that implements functions similar to Adobe's Acrobat Distiller product; and The Ghostscript library, a set of procedures to implement the graphics and filtering capabilities that are primitive operations in the PostScript language and in PDF. In simple terms, this means that Ghostscript can read a PostScript or PDF file and display the results on the screen or convert them into a form you can print on a non-PostScript printer. Especially together with several popular previewers, with Ghostscript you can view or print an entire document or even isolated pages, even if your computer doesn't have Display PostScript and your printer doesn't handle PostScript itself. ++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_1:[GNM]FREEWARE_README.TXT;4 ++++++++++++++++++++++++++++++++++++++++++++ GNM, LANGUAGES, Common-sources tool for messages and documentation This is GNM V2.0. The GNM compiler allow you to have a common source file for both an OpenVMS message file (.MSG) and for DOCUMENT (.SDML) documentation. GNM V2.0 is an overhaul of previous GNM versions, with improvements in the tool and its operations. The command operations also differ from previous versions, and particularly with better diagnostics and with a single executable image now used for both .MSG and .SDML output. Here is the basic foreign-command sequence: $ gnm :== $ddcu:[dir]gnm.exe $ gnm gnm-in-file.gnm msg-out-file.msg sdml-out-file.sdml GNM converts a .GNM file into a standard OpenVMS message file, which can then be processed by the MESSAGE compiler and then (optionally) with MESSAGE/SDL and the SDL tool to create language-specific include files. GNM also converts the .GNM file into an .SDML file for use with DOCUMENT. The .GNM file can be thought of as a series of directives: .NAME - The message symbol without the VDE$_ .MESSAGE - The message text, it may be wrapped .EXPLANATION - The description that appears in the document .USER_ACTION - The recovery section that appears in the document. .BREAK - May be used to start a new paragraph in the .explanation or .user_action .DESTINATION - Which file the following appears in, parameters are both, message .SEVERITY - informational, success, warning, error, or fatal The first 4 directives: .name, .message, .explanation, .user_action, occur as a group in that order for each message. .explanation and .user_action are optional. The FAO arguments within the .message are contained within <>. Within the <> there are 2 arguments, the first is a word which will be emphasized in that position in the document, the second is the FAO argument which will appear in the message file in that position. The .destination directive must appear between message groups and is in effect until another .destination directive occurs. Thus, when one message is to goto the message file only a .destination message will precede the message group and a .destination both will follow the group. .FACILITY and .END frame the contents of the GNM file. The arguments on the .FACILITY directive indicate the facility name and the facility number, and the directive also accepts qualifiers to pass through to the MESSAGE file .FACILITY directive. Use spaces for the indentation of the message text and explanations. The following is an example of a GNM file: .facility facnam,facnum /PREFIX=prefix$_ ! ! Success messages go here. DO NOT REORDER. ! .severity success .destination message .name SUCCESS1 .message successful .explanation This message indicates success .user_action None required ! ! Informational messages go here. DO NOT REORDER. ! .base 500 .severity informational .destination both .name INFO1 .message information is displayed .explanation This message informs you of something, and shows how to include some text in the message using a standard FAO directive. .user_action None required ! ! Warning messages go here. DO NOT REORDER. ! .base 1000 .severity warning .destination both .name WARNING1 .message ambiguous '' .explanation Cannot complete the command because '(text)' is ambiguous in the context of this command. .user_action None required ! ! Error messages go here. DO NOT REORDER. ! .base 1500 .severity error .destination both .name ERROR1 .message whoops, something unusual this way walked .explanation a part of the magical unknown mystery tour, with seats still available. .user_action Wave a rubber chicken over the application. If that fails, upgrade to Rubber Chicken V2.0. ! ! Fatal messages go here. DO NOT REORDER. Very few messages should ! be of fatal severity. ! .base 2000 .severity fatal .destination both .name FATAL1 .message a fatal crash has occured, film at 11 .explanation unknown fatal mystery error .user_action Dance for the computer. It might help. .end ++++++++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_1:[GZIP-1-4-2B]FREEWARE_README.TXT;1 ++++++++++++++++++++++++++++++++++++++++++++++++++++ GZIP, UTILITIES, GNU Zip - compress and decompress files This is the GNU Zip application. It takes a file of the form FOO.BAR-GZ and converts it into FOO.BAR or converts a FOO.BAR file into FOO.BAR-GZ. Note that you give the filename without the "-GZ" suffix, and GZIP will add or remove it - depending on if you are compressing or decompressing. GNU Zip is written by the Free Software Foundation, more information as well as all of the sources are available in the ZIP file (use UNZIP to unzip). This version, 1.4.2b, includes modifications from Paul Repacholi that make GUNZIP as much as 10 times faster than the previous release of GZIP for VMS. This .ZIP file includes binaries for both VAX and Alpha, supplied by Hunter Goatley . ++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_1:[HTDIG]FREEWARE_README.TXT;2 ++++++++++++++++++++++++++++++++++++++++++++++ HTDIG, WEB_TOOLS, WWW indexing and searching system The ht://Dig system is a complete world wide web indexing and searching system for a small domain or intranet. This system is *not* meant to replace the need for powerful internet-wide search systems like Lycos, Infoseek, Webcrawler and AltaVista. Instead it is meant to cover the search needs for a single company, campus, or even a particular sub section of a web site. As opposed to some WAIS or web server based search engines, ht://Dig can span several web servers at a site. The type of these different web servers doesn't matter as long as they understand the HTTP 1.0 protocol. This software is distributed under the GNU General Public License (GPL) v2. This OpenVMS port of ht://Dig 3.1.6 will install and run under OpenVMS Alpha V7.2 or later. The most recent version can be found at http://www.pdv-systeme.de/users/martinv/htdig/ and by anonymous FTP to ftp.pdv-systeme.de in the directory vms/ . To set up the software: - Unpack the archive: $ RUN CDROM:[HTDIG]GNU-AXPVMS-HTDIG-V0301-6R2-1.PCSI-ZIP_AXPEXE where CDROM is the drive that contains the OpenVMS Freeware CD-ROM. - Install the software: $ PRODUCT INSTALL HTDIG Please see the PRODUCT command's help for available qualifiers. The Installation Verification Procedure (IVP) isn't yet perfect, so you may try and continue with the installation even if it fails. - Complete the base installation by executing $ @SYS$STARTUP:HTDIG_STARTUP CONFIG This will create SYS$MANAGER:HTDIG_CONFIG.DAT . - Set up the software by executing $ @SYS$STARTUP:HTDIG_STARTUP START The "START" parameter is optional, if SYS$MANAGER:HTDIG_CONFIG.DAT exists. This command should also be included in the system startup. - Make HTDIG_ROOT:[CGI-BIN]HTSEARCH.EXE accesible to the web server as a CGI program. The procedure depends on your web server software; e.g. for CSWS: $ SET SECURITY /OWNER=APACHE$WWW HTDIG_ROOT:[CGI-BIN]HTSEARCH.EXE - Make sure that the directories HTDIG_ROOT:[COMMON], [CONF], and [DB], all files in these directories, and the shareable image HTDIG_ROOT:[BIN]LIBDB_SHR.EXE are accessible to HTSEARCH.EXE when run by the account the web server runs under. The procedure depends on your web server software; e.g. for CSWS: $ SET FILE /OWNER=APACHE$WWW - _$ HTDIG_ROOT:[000000]COMMON.DIR, CONF.DIR, DB.DIR, - _$ [COMMON]*.*;*, [CONF]*.*;*, [DB]*.*;*, - _$ [BIN]LIBDB_SHR.EXE - Edit HTDIG_ROOT:[CONF]HTDIG.CONF to suit your needs. Complete documentation of the product including a description of all configuration attributes is installed by default, and can be found in HTDIG_ROOT:[DOCUMENTATION]. Especially modify the line containing the "start_url" attribute. Without being changed, the online ht://Dig documentation at http://www.htdig.org/ will be indexed! Path and file specification attributes (e.g. common_dir, url_list) can be written in either VMS or Unix syntax, i.e. DEVICE:[DIR1.DIR2] can also be written as /device/dir1/dir2. When using variables in file specifications, a directory variable must be separated from the filename by a slash, e.g. ${database_dir}/db, regardless of the notation of the directory. This syntax is consistent with the ht://Dig documentation. As the dollar sign is used as a variable designator in attribute values, all dollar characters in device and directory names must be escaped (i.e. prepended with a backslash). That is, USER$DISK:[DIR] must be written as USER\$DISK:[DIR] or /user\$disk/dir. In the "external_parsers" and "pdf_parser" attributes' values, the external converter or parser programs must be valid DCL commands. The default values for attributes that are defined at compile time (refered to in the configuration file documentation) are: BIN_DIR /htdig_root/bin COMMON_DIR /htdig_root/common CONFIG_DIR /htdig_root/conf DATABASE_DIR /htdig_root/db IMAGE_URL_PREFIX /htdig_image PDF_PARSER pdftops VERSION 3.1.6-2/VMS The file specification of the default configuration file is found by the logical name HTDIG_DEFAULT_CONFIG_FILE. - Before you can start searching, you have to create a search database. A sample command procedure to do this is provided in HTDIG_ROOT:[BIN]RUNDIG.COM. - HTDIG_ROOT:[SEARCH]SEARCH.HTML contains a sample search form. The
attribute value must be changed to point to HTSEARCH.EXE. Also pay attention to the fields. The provided SEARCH.HTML uses image files from HTDIG_ROOT:[IMAGE], which must then too be accessible to the web server, of course. - Tools to index PDF, Microsoft Word, Excel, and Powerpoint files are available for download at the URL mentioned above. Enjoy, Martin Vorlaender 01-Sep-2003 +++++++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_1:[HTTPD_WASD]FREEWARE_README.TXT;2 +++++++++++++++++++++++++++++++++++++++++++++++++++ HTTPD_WASD, UTILITIES, VMS HTTP Server and CGI applications The "WASD VMS Hypertext Services" package is a collection of World Wide Web software for supporting hypertext within a VMS environment. Provides a multi-threaded HTTP server, for VMS 6.n, 7.n Alpha and VAX platforms, and the TCP/IP BG: driver (i.e. supported for UCX v3/4.n, OpenVMS TCP/IP Services v5.n, MultiNet, TCPware, and anything else supporting the BG: QIO API). It features integrated pre-processed HTML (Server Side Includes) and image-mapping, and a versatile VMS directory listing capability. Includes CGI applications providing extensive access to VMS oriented information, including HELP and TEXT libraries, and Bookreader documentation. Supports high efficiency and throughput, *persistant* scripts, including scripting environments such as Perl, PHP, FastCGI and Java. Access the HTML documentation using a browser on the local system. First ensure the freeware CD is mounted /SYSTEM, then enter file:///cd-device/httpd_wasd/index.html into the "Location:" field of the browser. Alternatively, print a copy of the Technical Overview. $ PRINT /QUEUE=postscript-queue cd-device:[HTTPD_WASD.DOC.HTD]HTD.PS This is a large document, so if you have a printer providing two pages per sheet and/or double-sided it is recommended to submit the job with the appropriate parameters! Mark.Daniel@wasd.vsm.com.au (Mark.Daniel@dsto.defence.gov.au) July 2003 ++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_1:[IDEZR]FREEWARE_README.TXT;1 ++++++++++++++++++++++++++++++++++++++++++++++ IDEZR, Utilities, Remote Virtual Disk ++++++++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_1:[IMAGEMAGICK]FREEWARE_README.TXT;1 ++++++++++++++++++++++++++++++++++++++++++++++++++++ IMAGEMAGICK, GRAPHICS, Package for display/manipulation of images ImageMagick is an X11 package for display and interactive manipulation of images. The package includes tools for image conversion, annotation, compositing, animation, and creating montages. ImageMagick can read and write many of the more popular image formats (e.g. JPEG, TIFF, PNM, XPM, etc.). ++++++++++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_1:[INDENT_2-2-6A]FREEWARE_README.TXT;1 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ INDENT, Utilities, Indent C Source Code This is an OpenVMS port of GNU `indent' 2.2.6, a program which allows you to reorganize the appearance and indentation of C source code. For details on this tool, please see README. and README.VMS. +++++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_1:[INFO-ZIP]FREEWARE_README.TXT;4 +++++++++++++++++++++++++++++++++++++++++++++++++ INFO-ZIP, UTILITIES, Zip V2.3 and UnZip V5.5 for OpenVMS ZIP V2.3 - Info-ZIP's portable Zip, version 2.3 UnZip V5.5 - Info-ZIP's portable UnZip, version 5.5. Zip is a utility to compress multiple files into a single .ZIP archive. UnZip decompresses the files stored in a .ZIP archive, restoring them to their original state. Use the appropriate UNZIP executable to unzip the source archives. $ unzip :== disk$freeware60_1:[info-zip]unzip.alpha_exe $ unzip disk$freeware60_1:[info-zip]unz550xv.zip These distributions include OpenVMS binaries for VAX and Alpha under the [.VMS-BINARIES] directories. To (re)produce the executable images from the supplied object code (for use on other and particularly older OpenVMS versions), simply set default to [.VMS-BINARIES] and issue the command @LINK Packaged by Hunter Goatly. ++++++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_1:[JEDIT_VMS]FREEWARE_README.TXT;1 ++++++++++++++++++++++++++++++++++++++++++++++++++ JEDIT, UTILITIES, XML Modes for Macro32 and Bliss +++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_1:[JPEG]FREEWARE_README.TXT;2 +++++++++++++++++++++++++++++++++++++++++++++ JPEG, Graphics, Library supporting the JPEG format Installation The best way to build the Jpeg library is currently to execute the modified DCL procedure make_vms.com from this server. This procedure will examine the system environment, create a suitable jconfig.h file and use the available tools (MMS/MMK, C compiler) to rebuild the sources. Make_vms.com currently accepts the following options in arbitrary order: DEBUG Build the library with debug information and without optimization. lopts= Options to pass to the link command e.g. lopts=/tracback ccopt= Options to pass to the C compiler e.g. ccopt=/float=ieee LINK Do not compile, just link Jpeg example programs and shareable image CC= Force usage of the given C compiler over the intrinsic selection (which is DEC C, VAX C, and finally GNU C). An object library of the Jpeg code will be generated in any case, on OpenVMS Alpha additionally a shareable image will be created. It also ensures a working copy of testimgp.jpg is available for testing. Test problems with progressive Jpeg file In case you do experience problems with the check for the progressive Jpeg test image (i.e. Backup /Compare/Log testimgp.jpg. testoutp.jpg.) you most probably packed the original file testimgp.jpg directly with Zip. This causes an extra byte to turn up at the end of the file after unpacking. I suspect this is a bug and have reported this to the Zip/UnZip developers. To circumvent this the archive from this server contains a backup saveset with this specific image. Package contents The main result of the compilation is the object library libjpeg.olb (OpenVMS Alpha: jpegshr.exe), which other applications need to link against. Additionally five small executable programs are created: CJPEG Compress an image file to a JPEG file. Supported input formats: PPM (PBMPLUS color format), PGM (PBMPLUS gray-scale format), BMP, Targa DJPEG Decompress a JPEG file to an image file. Supported output formats: PBMPLUS (PPM/PGM), BMP, GIF, Targa JPEGTRAN Jpegtran translates JPEG files from one variant of JPEG to another, for example from baseline JPEG to progressive JPEG. RDJPGCOM Display text comments from a JPEG file WRJPGCOM Insert text comments into a JPEG file The latest version of the OpenVMS port of the JPEG library should always be accessible via http://www.decus.de:8080/www/vms/sw/jpeg.htmlx +++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_1:[JUMP]FREEWARE_README.TXT;3 +++++++++++++++++++++++++++++++++++++++++++++ JUMP, SYSTEM_MGMT, JUMP 4.2 Login as a different user without a password JUMP allows a user to login exactly as another user without a password. It also allows a more restricted (non-exact) impersonation of another user. Use of JUMP is restricted to specific categories of users: Systems Programmers, Operators and any specifically authorised users. All users are validated against an access file to determine any specific access to be granted or denied in addition to any default access (e.g. for Operators). The access file also may contain options relating to security monitoring of sessions. Exact jumps can be monitored with secure log files. For non-exact jumps, items which are changed to those of the target user are: UIC, Default Directory, Default Disk, LNM$GROUP. Username (Systems Programmers only, using the SETUSER or ALL qualifier) Privileges and process rights are NOT changed. ---- The author and maintainer of JUMP is Jonathan Ridler. JUMP is maintained on behalf of ITS, The University of Melbourne, AUSTRALIA. Email: jump-enquiries@unimelb.edu.au The current version of JUMP is V4.2 2002-08-14 (14-Aug-2002). ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_1:[KP_CLUSTERTOOLS]FREEWARE_README.TXT;9 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ KP_CLUSTERTOOLS, UTILITIES, VMS & Cluster system management tools * indicates a new tool for the V6 release BAD_CHARS.COM * Take file with odd characters added by Windows and replace odd characters with equivalents. CONTIG.COM Creates or extends a system file in as contiguous a manner as possible. COMBINE_FEEDBACK.COM Logically combines feedback data from multiple files. DECNET_LATENCY.COM Measure round-trip network latency over DECnet EDIT_LAVC.COM, * Automatically build working LAVC$FAILURE_ANALYSIS.MAR program customized for a given cluster FIXQUE.COM, Creates DCL code to re-create queues, jobs, forms, and characteristics, based on output from $SHOW QUEUE. LAVC$FAILURE_OFF.MAR * Macro program to turn LAVC$FAILURE_ANALYSIS off when desired NODE$TRACK.COM Track cluster membership and notify someone of changes SIFT_LAVC.COM Creates time-sorted, cluster-wide list of OPCOM messages from SYS$EXAMPLES:LAVC$FAILURE_ANALYSIS.MAR program. SHADOW$CONFIG.COM Gathers shadow-set state info into DCL symbols or logical names, for use by other procedures, like these: SHADOW$DISPLAY.COM Uses ASCII art to display color-coded diagrams showing shadowset state in multi-site clusters. SHAD$DISP.COM Version with abbreviated, more-compact output, and optional support for disaster-tolerant clusters. SHADOW$TRACK.COM Track shadowset membership and notify someone of changes SHOW_PATHS.COM * Display LAN cluster interconnect configuration in the form of a matrix SHOW_PATHS_ECS.COM * As above, but include PEDRIVER Equivalent Channel Set information on 7.3 and above SHOW_SEGMENTS.COM * Show LAN cluster interconnects as a line drawing More-detailed descriptions: BAD_CHARS.COM Take file with odd characters added by Windows and replace odd characters with equivalents. For example, Windows uses for apostrophe, and left and right double-quote marks. This DCL fixes these up by replacing them with an apostrophe and regular quotation marks, respectively. Pass the procedure the name of the file, and it creates a new version of the file with the characters fixed. CONTIG.COM Creates or extends a system file in as contiguous a manner as possible. System files can only have one file header (no extension headers) because they are accessed by primitive code. In a Contiguous Best Try file extension, VMS will find the three largest extents on the disk, but then gives up and proceeds to allocates space arbitrarily for the rest of the file. This means the file header for a system file may fill up prematurely, sometimes before the desired file size is reached, and a backup/restore of the entire disk is then required to repack the file before it can be extended to the desired size. This DCL procedure finds the largest free extent and enlarges the file by only that amount each cycle, repeating this until the desired size is reached, thus minimizing the degree of fragmentation for the resulting file, and minimizing the number of extents used up in the file header. COMBINE_FEEDBACK.COM Logically combines feedback data from multiple files. Some systems (especially government systems) are not allowed to run continuously for the 24 hours or more that AUTOGEN wants for valid feedback data. These systems may run 8 hours per day, then be shut down and have their disks removed and locked in a safe overnight. This DCL procedure logically combines the data from multiple AUTOGEN feedback files, so that if feedback data is saved at the end of each uptime session, these periods of data can effectively be combined together and used as input to AUTOGEN as if they were contiguous. The procedure basically works by adding the values from cumulative counters together, finding the highest value for peak values, and using the most recent data for any data items which represent "current" data, and adding the elapsed times together. DECNET_LATENCY.COM Sends 100 loopback packets using NCP, and measures the average round-trip network latency. Since it uses the NCP> LOOP NODE command, it needs DECnet Phase IV. EDIT_LAVC.COM LAVC$FAILURE_ANALYSIS is a facility included in VMS that produces OPCOM messages on LAN cluster interconect failures. It is documented in an appendix of the OpenVMS Cluster Systems Manual, but was fairly troublesome to set up. This DCL procedure gathers all the information necessary and even creates a customized version of the LAVC$FAILURE_ANALYSIS.MAR program for a given cluster, taking all the pain out of getting LAVC$FAILURE_ANALYSIS up and running. More info may be found in the file EDIT_LAVC_README.TXT. FIXQUE.COM Creates DCL code to re-create queues, jobs, forms, and characteristics, based on output listing from $SHOW QUEUE. Was developed to solve queue file corruption; still useful to help in moving queues and jobs between systems or setting up one cluster to have the same queue environment as another. Is also supplied in a "squeezed" version (FIXQUE_SQZ.COM) for faster execution. LAVC$FAILURE_OFF.MAR Short Macro program to turn off LAVC$FAILURE_ANALYSIS if desired. NODE$TRACK.COM Track cluster membership and notify someone by e-mail when things change, like when a node leaves the cluster or joins the cluster. SIFT_LAVC.COM Sifts through OPERATOR.LOG files on all nodes in a cluster and creates a time-sorted, consolidated list of all the %LAVC console messages from SYS$EXAMPLES:LAVC$FAILURE_ANALYSIS.MAR in the format of: dd-mmm-yyyy hh:mm:ss.cc nodexx %LAVC-s-ident, text This allows one to more easily determine the sequence of events and timing in a failure of a cluster interconnect. SHADOW$CONFIG.COM Determine the existence, membership, and status of all shadowsets on the system, and their member devices. Stores results in either DCL symbols or in logical names. The following information is returned by the procedure: SHADOW$CONFIG_set_count Number of shadowsets SHADOW$CONFIG_SET_n_LABEL Volume label for each shadowset SHADOW$CONFIG_SET_n_DEVICE_NAME DSAn: device name for shadowset SHADOW$CONFIG_SET_n_MEMBER_COUNT shadowset size (# of members) SHADOW$CONFIG_SET_n_MEMBER_m_DEVICE_NAME Member device names SHADOW$CONFIG_SET_n_MEMBER_m_STATE Member state: "ShadowMember", "FullCopying", or "MergeCopying" There is also a timestamp logical name defined if the results are placed into logical names: SHADOW$CONFIG_TIMESTAMP Time of data-gathering SHADOW$DISPLAY.COM Display, in semi-graphical format, all the host-based volume shadowing shadow sets, highlighting any anomalies (such as lack of redundancy or full copies in progress) with the judicious use of color. SHAD$DISPLAY.COM Abbreviated version of SHADOW$DISPLAY.COM, taking less on-screen real estate. This version optionally supports a multi-site disaster-tolerant cluster configuration (it does assume that disk allocation classes are $1$ at one site and $2$ at the other site so it can tell which site a given disk is located at). Shadowsets without cross-site shadowing protection are then flagged as unprotected, even if they have two or more members, if all are within a single site. SHADOW$TRACK.COM Track shadowset membership and notify someone by e-mail when a member is added or lost, when a new shadowset is created, or when a shadowset goes away. SHOW_PATHS.COM DCL procedure to display LAN cluster interconnect details in the form of a connectivity matrix. Nodes and their LAN adapters are shown along the top and left of the matrix, with connectivity indicated by a "+" at the conjunction of any two adapters which can communicate with each other using the NISCA protocol. SHOW_PATHS_ECS.COM DCL procedure to display LAN cluster interconnect details in the form of a connectivity matrix, but with the added detail of indicating Preferred Paths in VMS versions prior to 7.3, and Equivalent Channel Set information for VMS versions 7.3 and above. SHOW_SEGMENTS.COM Shows the LAN cluster interconect configuration in the form of an ASCII line drawing. ------------------------------------------------------------------------------ Author: Keith Parris parris@encompasserve.org or keithparris@yahoo.com or keith.parris@hp.com I welcome questions, comments, corrections, suggestions, etc. via e-mail. Because the VMS Freeware CD is updated only periodically, it is advisable to check for later versions of any tools included here. Look for latest updated versions or fixes at: http://encompasserve.org/~parris/ DECUS presentations describing some of these tools may be found at: http://www2.openvms.org/parris/ or http://www.geocities.com/keithparris/ +++++++++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_1:[KP_LOCKTOOLS]FREEWARE_README.TXT;9 +++++++++++++++++++++++++++++++++++++++++++++++++++++ KP_LOCKTOOLS, UTILITIES, Tools for monitoring and controlling the VMS Lock Manager (For DECUS presentations describing the theory behind these tools and how they operate, see the websites http://www2.openvms.org/kparris/ and http://www.geocities.com/keithparris/, looking for the latest incarnation of the presentation which has been entitled at various times things like 'Monitoring and Controlling the VMS Lock Manager or or 'OpenVMS Distributed Lock Manager Performance'. As of this writing, the latest version is at: www.geocities.com/keithparris/decus_presentations/s2002_dist_lock_mgr_perf.ppt) * indicates a new tool for the V6 release. Most of the existing tools have been significantly improved for the V6 Freeware CD. Determine which lock trees are the busiest, cluster-wide: LOCK_ACTV.COM - DCL to collect and display lock-rate data immediately LOCK_ACTV_DC.COM - DCL to collect lock-rate data only (no analysis) for lower system overhead at time of data collection LOCK_ACTV_RG.COM - DCL to generate a report on lock rates later from data collected earlier by LOCK_ACTV_DC.COM LCKACT_RUN.COM - DCL to run proper version of LCKACT based on VMS version LCKACT.MAR - Macro-32 source code BUILD_LCKACT.COM - DCL to compile/link LCKACT.MAR Note: SYSGEN parameter PE1 must be either left at its default value of 0 or set to a positive value for the counters that LCKACT uses to be updated by VMS. If you have set PE1 to -1 to disable lock remastering entirely and wish to use this tool, I suggest using a value of positive 1 instead. PE1 is a dynamic SYSGEN parameter, so no reboot is needed to change it. Detect and display lock queues: LCKQUE.COM - Display lock queues. Now incorporates source code for LCKACT.MAR. Call with "BUILD" as P1 parameter to compile/ link the Macro program. This replaces the formerly- separate files LCKQUE.COM, LCKQUE.MAR, LCKQUE_RUN.COM, and BUILD_LCKQUE.COM. Information on the updates to LCKACT and LCKQUE may be found in the file LCKACT_LCKQUE_README.TXT Measure lock-request latencies across all nodes in a cluster: * LOCKTIME.COM - DCL to measure lock-request round-trip latencies in a cluster. Call with BUILD as P1 parameter to compile/link. Uses Roy Davis's LOCKTIME_* program pair. Generates .CSV file with matrix of lock latencies for all node-to-node combinations in the cluster, suitable for importing into a Microsoft Excel spreadsheet. More information is in the file LOCKTIME_README.TXT. DCL procedures to help determine if lock remastering activity is taking place. RBLD.COM - Display remastering-message counts using SDA WATCH_RBLD.COM - Using RBLD.COM, monitor counts and note activity (Note that with VMS 7.2 or later, this info is available from SDA> SHOW LOCK/SUMMARY under the "Lock Remaster Counters:" heading, and from 7.3 or later with $MONITOR RLOCK) Determine which node is the lock master for the RMS global buffer lock tree for a file: FINDMASTER_FILE.COM - DCL: given filespec for an RMS file, determine lock master node FINDMASTER.MAR - Macro-32 source code BUILD_FINDMASTER.COM - Compile/link FINDMASTER.MAR Generate lots of locks to convince VMS to remaster an RMS global buffer lock tree: LOTSALOX.MAR - Macro to generate lots of lock requests MOVE_MASTER.COM, FORCE_MASTER_FILE.COM - DCL to use LOTSALOX.MAR to try to move lock tree to this node Map from File Number and device name to file specification: * FILE_ID_TO_NAME.COM - DCL to look up file spec. from file number/disk The following programs are available upon request, but are not on this CD -- see below for where to request them. REMASTER.MAR, a program to trigger lock tree remastering by modifying contents of VMS data structures LCMRM.MAR, a program to report cases where there is pent-up remastering demand, that is, VMS would like to remaster a lock tree, but is prevented from doing so by a non-zero setting for the SYSGEN parameter PE1. ------------------------------------------------------------------------------ Author: Keith Parris parris@encompasserve.org or keithparris@yahoo.com or keith.parris@hp.com I welcome questions, comments, corrections, suggestions, etc. via e-mail. Because the VMS Freeware CD is updated only periodically, it is advisable to check for later versions of any tools included here. Look for latest updated versions or fixes at: http://encompasserve.org/~parris/ DECUS presentations describing some of these tools may be found at: http://www2.openvms.org/parris/ or http://www.geocities.com/keithparris/ ++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_1:[LD731]FREEWARE_README.TXT;1 ++++++++++++++++++++++++++++++++++++++++++++++ LD731, SYSTEM_MGMT, OpenVMS VAX and Alpha Virtual Disk Driver This is a variation of the LDDRIVER kit found on previous Freeware releases (including the LD063 kit on Freeware V5.0) and allows more direct access to the integrated LDDRIVER present within OpenVMS Alpha V7.3-1. This kit does not contain the driver, it allows more direct and easier access to the LDDRIVER latent within OpenVMS Alpha V7.3-1. This kit may or may not operate on releases newer than OpenVMS Alpha V7.3-1, and will not operate on releases older than OpenVMS Alpha V7.3-1. Releases LD063 and prior have a hard upper volume size limit of four gigabytes (4 GB), and larger volumes should not be configured. +++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_1:[LIBBZ2]FREEWARE_README.TXT;2 +++++++++++++++++++++++++++++++++++++++++++++++ LIBBZ2, Utilities, Data Compression Library © Tous droits réservés 2003 Jean-François PIÉRONNE LibBZ2 V1.0.2 LibBZ2 is a block-sorting compression/decompression library used by several software packages, including Python. By default, the installation procedure installs this library package in the SYS$COMMON:[LIBBZ2] directory. To install it in another directory, dev:[dir], use the /DESTINATION parameter of the PRODUCT command. In this case, the library package will be installed in the dev:[dir.LIBBZ2] directory. Installation 1. Make the directory which holds the ZIP file your default directory 2. Extract the PCSI kit from the ZIP archive. $ UNZIP "-V" LIBBZ2-V0100-2-1 3. Install the library package to your chosen destination. $ PRODUCT INSTALL libbz2 (default) or ... $ PRODUCT INSTALL libbz2 /DESTINATION=dev:[dir] 4. Finally, run the DCL procedure STARTUP.COM to define the necessary logicals. (You might want to add the relevant line to your SYSTARTUP_VMS.COM file.) $ @SYS$COMMON:[LIBBZ2]STARTUP (default) or ... $ @dev:[dir.LIBBZ2]:STARTUP ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_1:[LYNX2-8-5DEV-16]FREEWARE_README.TXT;1 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ LYNX, UTILITIES, Text Web Browser This is Lynx version 2.8.5dev.16, snapshot June 1, 2003. WHAT IS LYNX? Lynx is a fully-featured World Wide Web (WWW) client for users running cursor-addressable, character-cell display devices such as vt100 terminals, vt100 emulators running on PCs or Macs, or any other character-cell display. It will display Hypertext Markup Language (HTML) documents containing links to files on the local system, as well as files on remote systems running http, gopher, ftp, wais, nntp, finger, or cso/ph/qi servers, and services accessible via logins to telnet, tn3270 or rlogin accounts. Current versions of Lynx run on Unix, VMS, Windows95/NT, 386DOS and OS/2 EMX. Lynx can be used to access information on the WWW, or to establish information systems intended primarily for local access. Lynx has been used to build several Campus Wide Information Systems (CWIS). Lynx can also be used to build systems isolated within a single LAN. Links to the current sources and support materials for Lynx are maintained at: "Lynx links" and at the Lynx homepage: "Lynx Information" . View these pages for information about Lynx, including new updates. Lynx is distributed under the GNU General Public License (GPL) without restrictions on usage or redistribution. The Lynx copyright statement, "COPYHEADER", and GNU GPL, "COPYING", are included in the top-level directory of the distribution. Lynx is supported by the Lynx user community, an entirely volunteer (and unofficial) organization. Certain portions of the Lynx source distribution were originally created by CERN and have been modified during the development of Lynx. See WWW/Copyright.txt for copyright info regarding CERN products used in Lynx. YEAR 2000 COMPLIANCE We believe Lynx works properly for the Year 2000 issues, since it does not store dates in 2-digit form. Since it must communicate with a wide range of web servers, it interprets dates in a variety of formats. In particular, if Lynx receives a date with a 2-digit year, it assumes that values less than 70 are in the range 2000-2069. DOCUMENTATION A users guide is included in this distribution along with a man page for Unix systems and a help file for VMS systems. All documentation is contained in the top directory and the docs, samples and lynx_help subdirectories. While running Lynx, type 'h', 'H', or '?' to invoke the help menu system. From the help menu you may access several useful documents pertaining to Lynx and the World Wide Web. The most important of these is the Lynx Users Guide. By default, Lynx will use the Lynx Enhanced Pages, which includes http links for help and FAQs concerning Lynx. It is recommended that you install your own help menu system at your site in order to lessen the load on http servers. This also will allow you to customize the help menu system for your site and greatly speed up access for those using Lynx over a slow connection. For Unix and related systems which support the autoconf configure script, the help menu system is installed by the "make install-help" command. For other systems (such as VMS), copy COPYHEADER and COPYING into the lynx_help/ subdirectory. Then copy the lynx_help subdirectory to a public place on your system, or into your $HOME directory if you are a single user. Finally, edit the lynx.cfg file so that the HELPFILE line is defined as follows: HELPFILE:file://localhost/[public_path]/lynx_help/lynx_help_main.html where [public_path] is the absolute path to the lynx_help directory. Customizing the help menu system is just a matter of editing a set of HTML files. Additional information about installing and customizing the help file set is available at . INSTALLING LYNX To install Lynx, follow the steps in the INSTALLATION file, which is located in the top directory of the source distribution. PROBLEMS If you experience problems configuring, compiling or installing Lynx, please read Section VI. "General installation instructions" in the INSTALLATION file. Instructions are given there for reporting your problem to the "lynx-dev" mailing list, which is frequented by experienced Lynx users. LYNX-DEV MAILING LIST To subscribe to lynx-dev, send email to majordomo@sig.net with only the following message in the body: SUBSCRIBE LYNX-DEV address where inclusion of your email address is optional if it can be obtained, correctly, from the mail headers of your subscription request. If you wish to unsubscribe from lynx-dev, send email to majordomo@sig.net with only the following message in the body: UNSUBSCRIBE LYNX-DEV address where inclusion of your email address is optional if it can be obtained, correctly, from the mail headers of your request. Also, to get a list of useful majordomo commands, send email to majordomo@sig.net with the following command: ^^^^^^^^^ HELP PLEASE!!! do not send commands to the lynx-dev mailing list itself. Any messages you wish to post should be sent to lynx-dev@sig.net. PLEASE use the lynx-dev list, NOT private email to the developers, for questions or discussion about Lynx, or contributions of patches. Patches should use the context diff format (diff -c). You need not be subscribed to the lynx-dev list in order to post. If you post without subscribing, though, you should read replies to your questions or comments in the archive since more often than not nobody will send a carbon copy to you. View the archives at: "lynx-dev Mailing list archives" ++++++++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_1:[TTI_INTOUCH]FREEWARE_README.TXT;1 ++++++++++++++++++++++++++++++++++++++++++++++++++++ INTOUCH, LANGUAGES, High-performance 4GL for OpenVMS VAX/AXP systems INTOUCH 4GL is the high-performance 4GL for OpenVMS VAX and AXP systems. INTOUCH 4GL runs on all versions of OpenVMS -- VAX/VMS V4.5 to 6.x, AXP/VMS V1.5 and 6.x. INTOUCH 4GL interfaces to RMS, Rdb, DEC DBMS, ORACLE, dBASE, and other database engines. However, this {freeware} version only includes the RMS interface. INTOUCH 4GL comes complete with a "Guided Query Language" (GQL) and a "GQL On-line Tutorial". However, this {freeware} GQL version only supports ten (10) columns of reporting information. The fully-featured GQL supports reports of unlimited complexity! INTOUCH 4GL Documentation The complete INTOUCH 4GL documentation (in Postscript form) is located on this CD-ROM in [TTI_INTOUCH.DOC]. For the complete hard-copy set of INTOUCH 4GL documentation ($95.00 US), contact us at: INTOUCH 4GL Touch Technologies, Inc. 9988 Hibert #310 San Diego, CA 92131 Voice: 800-525-2527 or 619-566-3603 FAX# : 619-566-3663 Internet: intouch@ttisms.com Installing INTOUCH 4GL to your Hard Disk To install INTOUCH 4GL from this CD-ROM: to your hard disk (called {mydisk:} in this example): $ create/dir/prot=w:re {mydisk:[intouch]} $ copy freeware$cd:[tti_intouch]*.*; {mydisk:[intouch]} $ set default {mydisk:[intouch]} $ @intouch_build Then, add this line to your system-wide LOGIN.COM file: {$ @mydisk:[intouch]intouch.com} The INTOUCH 4GL installation will take less than 10 minutes. INTOUCH 4GL Full-Feature Upgrade For information on how to upgrade this {freeware} copy of INTOUCH 4GL to the fully-featured, 7/24 supported version, or for the full set of hardcopy INTOUCH 4GL documentation, contact us at: INTOUCH 4GL Touch Technologies, Inc. 9988 Hibert #310 San Diego, CA 92131 Voice: 800-525-2527 or 619-566-3603 FAX# : 619-566-3663 Internet: intouch@ttisms.com ...Interested in a FREE "Born to Code" Polo shirt? Yes? Please see the file [TTI_INTOUCH]SURVEY.TXT. (Offer limited to the first 1,000 respondents!) +++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_1:[VMSFAQ]FREEWARE_README.TXT;1 +++++++++++++++++++++++++++++++++++++++++++++++ VMSFAQ, FREEWARE, The OpenVMS Frequently Asked Questions (FAQ) This directory contains an edition of the OpenVMS FAQ, and in various document formats. The FAQ contains answers to many of the more commonly-asked questions associated with OpenVMS and with its various related hardware platforms, and pointers to many of the available OpenVMS resources, to tutorials and training materials, and to many other supporting materials. The text-format version of the FAQ is very likely the easiest to serve, download and search. The OpenVMS FAQ is updated several times per year, and sometimes more or less often. Please check for the latest version of the OpenVMS FAQ, as available in the comp.os.vms, news.answers and comp.answers newsgroups, and is served from, or is linked from, various websites including the following: http://www.hp.com/go/openvms/faq/ http://www.openvmshobbyist.org/ http://www.openvms.org/ http://www.faqs.org/ +++++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_2:[000TOOLS]FREEWARE_README.TXT;1 +++++++++++++++++++++++++++++++++++++++++++++++++ 000TOOLS, FREEWARE, Various Useful Tools This directory contains a DEFINE_TOOLS.COM procedure used to establish DCL foreign commands for a collection of useful DCL command procedures and executable images, and this particularly contains the Unzip tools necessary to unpack the Zip archives. This directory tree is duplicated on all OpenVMS Freeware disks. +++++++++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_2:[DECWRITE_RTF]FREEWARE_README.TXT;1 +++++++++++++++++++++++++++++++++++++++++++++++++++++ DECWRITE_RTF, Utilities, Read and write RTF with DECwrite These converters allow DECWRITE to import and export documents in RTF. They also allow the CONVERT/DOCUMENT command line interface to convert RTF documents. The converters DDIF$READ_RTF.EXE DDIF$WRITE_RTF.EXE should be placed in the SYS$COMMON:[SYSLIB] directory. When converting from RTF format warnings about unknown RTF control words may be generated. The supported RTF format is based on Microsoft WORD 2 format so later enhancements are not available however, the resultant document should still be usable. An example of the errors generated by the CONVERT/DOCUMENT command is as follows: $ convert/document TEST.rtf/form=rtf TEST.DDIF/form=ddif %CONVERT-W-UNKCNTL, unknown RTF-control-word "\ansicpg" encountered. %CONVERT-W-UNKCNTL, unknown RTF-control-word "\fromtext" encountered. %CONVERT-W-UNKCNTL, unknown RTF-control-word "\uc" encountered. When converting to RTF format you may encounter the errors: %CONVERT-W-STYNOTREADABLE, Can't open style guide file: defstyle or %CONVERT-W-STYNOTREADABLE, Can't open style guide file: dx_times these can be resolved by defining the following logicals: $ define/sys defstyle cda$library:defstyle.ddif $ define/sys dx_times cda$library:dx_times.doc_style The converters are not capable of using rooted logicals in the paths to files: "USER_ROOT" = "DISK1:[ROOT.]" USER_ROOT:[USER]FILE.DOC - will fail DISK1:[ROOT.USER]FILE.DOC - will work before entering DECWRITE the user is advised to $SET DEFAULT to a non-roooted path. +++++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_2:[FREEWARE]FREEWARE_README.TXT;1 +++++++++++++++++++++++++++++++++++++++++++++++++ FREEWARE, FREEWARE, The Master OpenVMS Freeware README File OpenVMS Freeware CD-ROM ReadMe ------------------------------ Welcome to the HP OpenVMS Freeware V6.0 CD-ROM. All the software included on this CD-ROM is also available for (free) download at the OpenVMS web site: http://www.hp.com/go/openvms/freeware/ This document contains a general introduction to the OpenVMS Freeware as well as notes specific to the Freeware V6.0 distribution. General Introduction -------------------- The OpenVMS Freeware CD-ROM contains free software tools and utilities to aid software developers, partners and OpenVMS Hobbyists in creating applications, and in managing and using OpenVMS systems, as well as packages that can serve as programming source code examples. Contained on this CD-ROM are of packages for OpenVMS VAX, OpenVMS Alpha, and OpenVMS I64, divided into general categories including the following: AFFINITY Interoperation with Microsoft Windows systems BUILD_TOOLS Build tools WEB_TOOLS CGI and HTML tools GAMES Games (also see Motif Toys) GRAPHICS Graphics tools LANGUAGES Compilers, assemblers, and language-related MISCELLANEOUS Or ask for the creation of a new category MOTIF_TOYS X Windows, CDE, and Motif toys (see Games) NETWORKING Networking and network-related tools PROGRAMMING Source Code Examples, APIs, etc SYSTEM_MANAGEMENT Tools related to system management, security STORAGE_MANAGEMENT Tools related to storage management UTILITIES Random Utilities unrelated to other categories FREEWARE Reserved for use by Freeware CD-ROM constructs Many of these tools are popular packages already widely known and in use, while others are internally developed HP OpenVMS tools our engineers are making available to you, our OpenVMS customers. For example, the OpenVMS Freeware CD-ROM includes Bliss compilers for various OpenVMS platforms. The Freeware CD-ROM includes the following features: o Includes an easy-to-use 4GL-based menu system for examining the contents of the CD-ROM. o Is in Files-11 format to make it readable on OpenVMS systems. o Contains binaries, source code (except for the Bliss compilers and specific other HP-provided packages), and documentation. o Represents some of the most popular, most often requested free packages, plus new items never before made public. Disclaimer on Testing, Quality, and Licensing The OpenVMS Freeware CD-ROM set is provided "AS IS" without warranty. HP adds no Freeware-specific restrictions on the distribution or redistribution of the contents of these disks, nor adds any specific restrictions onto the redistribution of any packages on it. Be aware, however, that various of the individual packages on the CD-ROM may carry restrictions on their use or on their redistribution, as imposed by the original author(s) or owner(s) of the package(s). Therefore, you should carefully read the documentation accompanying any products of interest. HP is providing this software free of charge and without warranty -- copies of packages (and various package updates that might become available) can usually be downloaded from http://www.hp.com/go/openvms/freeware, and (additional) copies of this CD-ROM set can be ordered from HP for a small media replication, handling, and distribution charge. Included in the [FREEWARE] directory on this CD are various GNU software licenses. HP makes no claims concerning this software, and provides this CD-ROM distribution to the OpenVMS community and to HP customers as a free service. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Remember, all packages contained herein are supplied AS IS. All packages are without any warranty, expressed or implied. HP has performed no verification, no code reviews, and no testing. You are solely responsible for support, debug, test and remediation. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ General Freeware V6.0 release notes ----------------------------------- o There were the usual problems building the distributions due to errors found in various FREEWARE_README.TXT files, and due to submissions that were missing the (required0 FREEWARE_README.TXT file. The Keeper of the Freeware (KoF) apologizes for these changes, and for the last-minute changes. o Several BACKUP saveset submissions were unpacked only with difficulty, due to problems with the ZIP archive files. Various file attributes were reset to match OpenVMS expectations, but there may well be additional files that do not have the expected file attributes. One tool that may be useful for this [000TOOLS]RESET_BACKUP_SAVESET_ATTRIBUTES.COM. o Most of the submissions in this kit were zipped solely to try to fit the total volume of Freeware submissions -- and thank you for your response to the Freeware collection effort! -- onto the available CD-ROM storage. Kits providing PCSI or VMSINSTAL installation kits were zipped in multiple parts, and the installation kits were left available outside the main zip archive for the submission. For the unzip tool, please see [000TOOLS] and (if you cannot use the pre-built version here for some reason) please see the various sites offering pre-built Zip images referenced in the OpenVMS Frequently Asked Questions (FAQ). o Kits that were submitted as zip archives were unzipped first, and then re-zipped into a consistent format and settings. This means various of the submissions will appear different than what was originally submitted. For the unzip tool, please see [000TOOLS] and also please consider the unzip download pointers in the OpenVMS Frequently Asked Questions (FAQ). o The menu system is deliberately not requiring all CD-ROMs in the Freeware set to be mounted at the same time -- this avoids the requirement to have multiple CD-ROM drives. This also unfortunately makes it somewhat more difficult to rummage around on the various disks. o Please take the time to examine the following files and directories: [000000]AAAREADME.* [000000]OPENVMS_FREQUENTLY_ASKED_QUESTIONS_FAQ.TXT [000000]00FREEWARE_ABSTRACT.TXT [000TOOLS]*.* [FREEWARE]*.* [VMSFAQ]*.* These files are replicated on all Freeware CD-ROM disks. o Current copies of the OpenVMS Frequently Asked Questions (FAQ) document are available at: http://www.hp.com/go/openvms/faq/ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Thank you, Stephen Hoffman Keeper of the Freeware HP OpenVMS Engineering October, 2003 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_2:[MIME_NETSCAPE]FREEWARE_README.TXT;2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ MIME_NETSCAPE, Utilities, Translate MAIL Extractions into MIME Transfers OpenVMS mail text files produced by the EXTRACT/NOHEADER command -- particularly with the RFC 822 headers at the bottom -- and hand it to Netscape in a MIME-compatible format. Please review the comments in the DCL for further details. +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_2:[MOZPLUGGER-1_3_0]FREEWARE_README.TXT;1 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ MOZPLUGGER,UTILITIES,plugin handler for Mozilla on VMS This is a port of mozplugger V1.3.0 for use with Mozilla on OpenVMS. It enables one to use standalone programs as if they were plugins for Mozilla. For example, one can use XPDF to display PDF files and mozplugger will cause XPDF to be embedded in the browser window. You can also use MPG123 to play streaming MP3 files and Timidity to play background midi files. Tools needed: UNZIP (you must use the -V switch when unzipping) DEC C compiler Mozilla web browser (or CSWB) OpenVMS Porting Library (VMS_JACKETS.EXE) minimum version A8. After unzipping the mozplugger.zip file, set default to the mozplugger-1_3_0 directory and read README.VMS for build and installation instructions. MOZPLUGGER.TXT documents the keywords in the mozpluggerrc. file. Mark Berryman +++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_2:[MPG123]FREEWARE_README.TXT;1 +++++++++++++++++++++++++++++++++++++++++++++++ MPG123,UTILITIES,Plays MP3 files from local files or URLs This is a modifed version of mpg123 v0.59s. This program was last modified by the author in October, 2000 to revision mh4. I have made the following changes: o fixed the http code so that the ability to read an MP3 file directly from a URL now works on VMS. You can now issue the command mpg123 http://somewhere/something.mp3 and it will read the file directly from the web for you. o Rewrote the VMS sound support. The file included with the kit from the author's web site (AUDIO_DEC.C) works by constantly allocating and freeing buffers from shared memory space. There appears to be an error in the MMOV libraries that handle this work since, if you play a playlist of several songs length, this program will eventually start getting memory allocation failures. I have changed the code to only allocate a buffer once and then reuse it over and over. Also, the supplied code did not return all of the sound formats supported by the various audio cards. This has also been corrected. My version of the driver is called AUDIO_VMS.C. You are free to use whichever you prefer. Tools needed: UNZIP (You must use the -V switch when unzipping) DEC C compiler Multimedia Services for OpenVMS Alpha V2.2 (Development kit) Build Instructions: $ unzip mpg123-0_59s-mh4.zip $ set default [.mpg123-0_59s-mh4] $ @build I have included an executable in this distribution. It should work on any recent version of VMS. Since it is built against a patched version of MMOV.OLB that has not yet been released to the public, I recommend using it, rather than rebuilding, if you can. Mark Berryman +++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_2:[MXRN]FREEWARE_README.TXT;1 +++++++++++++++++++++++++++++++++++++++++++++ MXRN, Utilities, DECwindows Motif News Reader This contains an updated NNTPD news client for OpenVMS, using DECwindows Motif. This version includes support for the numbers of newsgroups commonly available, as well as other minor updates. +++++++++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_2:[MYSQL-4_0_15]FREEWARE_README.TXT;2 +++++++++++++++++++++++++++++++++++++++++++++++++++++ MySQL, Utilities, MySQL Database © Tous droits réservés 2003 Jean-François PIÉRONNE MySQL V4.0.15 Software Requirements 1. CPQ SSL V1.0-B or V1.1 (available as a free download from HP) 2. JFP ZLIB 1.1-4 New SYSUAF Account This installation procedure creates the unprivileged SYSUAF account MYSQL_SERVER to run the server. After installation is complete, you will want to review the security settings on all volumes, directories, and files this account will access during operation and adjust them according to your needs. By default, the installation procedure installs MySQL in the SYS$COMMON:[MYSQL] directory. To install it in another directory, dev:[dir], use the /DESTINATION parameter of the PRODUCT command. In this case, MySQL will be installed in the dev:[dir.MYSQL] directory. Installation 1. Make the directory which holds the ZIP file your default directory 2. Extract the PCSI kit from the ZIP archive. $ UNZIP "-V" MYSQL-V0400-15-1 3. Install MySQL to your chosen destination directory. $ PRODUCT INSTALL mysql (default) or ... $ PRODUCT INSTALL mysql /DESTINATION=dev:[dir] 4. Change the default directory to the VMS-specific directory and run the two DCL procedure files, LOGICALS.COM and SYMBOLS.COM, to define the necessary logicals and symbols for MySQL. $ SET DEFAULT SYS$COMMON:[MYSQL.VMS] (default) or ... $ SET DEFAULT dev:[dir.MYSQL.VMS] then ... $ @LOGICALS "/SYSTEM/EXEC" $ @SYMBOLS 5. (Optional) Configure the MySQL package to suit your environment by editing the file MYSQL_ROOT:[VMS]MY.CNF. 6. Run the special DCL procedure FIRST_START_MYSQLD.COM to start the MySQL server for the first time. $ @[.MYSQL]FIRST_START_MYSQLD . . .and wait here a few moments for the database to be created. 7. Run the special DCL procedure MYSQL_PRIVILEGES.COM to create the system tables. $ @[.MYSQL]MYSQL_PRIVILEGES 8. Start the MySQL monitor (client). $ mysql Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 1 to server version: 4.0.15-log Type 'help;' or '\h' for help. Type '\c' to clear the buffer. 9. Connect to the master system table and display the existing password for ROOT (should be "" at this point). mysql> use mysql Database changed mysql> select Host, User, Password from user; +-----------+------+----------+ | Host | User | Password | +-----------+------+----------+ | localhost | root | | +-----------+------+----------+ 1 row in set (0.00 sec) 10. IMPORTANT! Define a password for the ROOT MySQL account. mysql> update user set Password=PASSWORD('myrootpassword') where User='root'; Query OK, 0 rows affected (0.00 sec) Rows matched: 1 Changed: 1 Warnings: 0 mysql> select Host, User, Password from user; +-----------+------+------------------+ | Host | User | Password | +-----------+------+------------------+ | localhost | root | 6b6403a743ef6b56 | +-----------+------+------------------+ 1 row in set (0.00 sec) mysql> flush privileges; Query OK, 0 rows affected (0.16 sec) $ 11. (Optional): You must also change the HOST field contents if you want to access MySQL from another host using the ROOT account. For example, setting HOST to '%' allows access from anywhere. 12. (Optional): Verify your password and/or host changes took effect. $ MYSQLADMIN -u ROOT -p STATUS Enter password: Uptime: 25 Threads: 1 Questions: 1 Slow queries: 0 Opens: 6 Flush tables: 1 Open tables: 0 Queries per second avg: 0.040 $ 13. Shut down the MySQL server process. mysql> exit Bye $ MYSQLADMIN -u ROOT -p SHUTDOWN $ MYSQLADMIN -u ROOT -p SHUTDOWN That's right, quit twice :-) 14. Finally, run the DCL procedure MYSQL_STARTUP.COM. (You might want to add this line to your SYSTARTUP_VMS.COM file.) $ @MYSQL_ROOT:[VMS]MYSQL_STARTUP You should now have a running MySQL server! ++++++++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_2:[MYSQL-4_1_1]FREEWARE_README.TXT;2 ++++++++++++++++++++++++++++++++++++++++++++++++++++ MySQL_4_1_1, UTILITIES, MySQL 4.1.1 for OpenVMS This is a port of MySQL 4.1.1 to OpenVMS. The source was cloned from bitkeeper on 13-Sep-2003. The code was ported on OpenVMS Alpha V7.3-1 and the PCSI kit included can be installed on OpenVMS Alpha 7.3-1 or later. The kit also includes a port of the MySQL DBI driver for perl. Once the PCSI kit is installed, the MySQL server can be started as follows: $ @sys$common:[mysql_4_1_1]mysql_setup $ @mysql_root:[mysql.bin]start_mysqld The sources can be found in MYSQL_4_1_1-SRC.ZIP. ++++++++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_2:[NCS_CONVERT]FREEWARE_README.TXT;1 ++++++++++++++++++++++++++++++++++++++++++++++++++++ NCS_convert, Utilities, charset conversion using NCS + conversion library ++++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_2:[NETPERF]FREEWARE_README.TXT;2 ++++++++++++++++++++++++++++++++++++++++++++++++ NETPERF, UTILITIES, Network Performance Benchmark BE SURE TO READ THE MANUAL. This is a brief readme file for the netperf TCP/UDP/sockets/etc performance benchmark. This is here mostly as a boot-strap. The real information is in the manual, which can be found in netperf.ps and online from http://www.cup.hp.com/netperf/NetperfPage.html. The sources, and a limited number of binaries, can be found from ftp://ftp.cup.hp.com/dist/networking/benchmarks/netperf/ . BE SURE TO READ THE MANUAL. There is a COPYRIGHT file included. It is based on what the HP Legal Eagles gave me. I am not sure if the legalese is clear, but the intent is to say "Here is a benchmark. Use it in good health. Pass it along, port it, enhance it. You didn't pay for this tool, so don't expect it to be perfect ;-)" The rest of it is there to keep the layers happy... Feel free to report results in public forums, but please be excruciatingly complete in your description of the test envorinment. Better still, report results to the netperf database at http://www.cup.hp.com/netperf/NetperfPage.html. There is an Internet mailing list devoted to netperf. It is called netperf-talk and it is hosted on netperf.cup.hp.com (hpisrdq.cup.hp.com). Subscription requests should go to netperf-talk-request@netperf.cup.hp.com. Please DO NOT SEND subscription requests to netperf-talk! If you run into severe difficulties, or are just feeling chatty, please feel free to drop some email to me - Rick Jones . Be sure to include a meaningful subject lines. happy benchmarking, rick jones BE SURE TO READ THE MANUAL. ++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_2:[NOTES]FREEWARE_README.TXT;1 ++++++++++++++++++++++++++++++++++++++++++++++ NOTES, Utilities, Notes Conferencing Software Notes conferences allow discussions among engineering teams, and can also be used for publication, tracking, and other related tasks. This Freeware directory contains installation kits for the OpenVMS VAX and OpenVMS Alpha Notes Conferencing Client and Server Kits, and copies of the client kits for systems using the Microsoft Windows NT, Windows 2000 and other NT-compatible platforms. The Windows kits access a Notes Server running on an OpenVMS system using IP networking. Application Programming Interface (API) documentation is also provided. Due to slightly differing behaviours, both the most current Notes ECO kits (full kits) and the most recent Notes production installation kits are provided within the directory. +++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_2:[NOTIFY]FREEWARE_README.TXT;1 +++++++++++++++++++++++++++++++++++++++++++++++ NOTIFY, UTILITIES, Notifies you when an already-submitted batch job is done. NOTIFY.COM V2.1-1 This utility notifies you when an already-submitted batch job completes and gives the completion status of the job. This is useful if you are waiting for a job that is running under another username or for a job for which you did not specify the /NOTIFY qualifier. NOTIFY.COM also tells you the completion status of the job. You can also have NOTIFY.COM redirect the notification message to another user or to a user on remote node. +++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_2:[NPCDCL]FREEWARE_README.TXT;3 +++++++++++++++++++++++++++++++++++++++++++++++ NPCDCL, MISCELLANEOUS, DCL routines for clock calendar VT keyboards etc. ++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_2:[OMI]FREEWARE_README.TXT;2 ++++++++++++++++++++++++++++++++++++++++++++ OMI, Utilities, A feature rich menu development tool OMI v2.2 - ©1997-2002, Oscar van Eijk, Oveas Functionality Provider =================================================================== OMI proves *everything* can be written with 'just' DCL :-) Oscar's Menu Interpreter is a menu environment that reads menu files and represents the menu structure on a ChUI based window. OMI does not perform any actions on its own. Additional procedures are required to handle upon the users input. It comes with a toolbox loaded with functions that can be used to create these procedures. OMI is written to create a standard user interface for all kinds of actions, with a clear structure, support for different security levels and password protection. The documentation should provide with all information to build your own menu structures, OMI modules and enhancements. Documentation and support ------------------------- Full documentation for OMI can be found at the OMI site: http://freeware.oveas.com/omi. An online HELP is also provided, but since v2.0 the printable documentation is completely reviewed. This has not (yet?) been done with the online HELP, except for the interactive OMI command section. This site also offers a forum (http://freeware.oveas.com/omi/forum.html) where you can get support. Please note OMI comes without any warranty, but I'll try to give as much support as possible via this forum. Installation instructions ------------------------- To install OMI, download one of the distributions: either the ZIP file (download in BINary format) or the COM file (download in ASCII format). Also, download OMI$INSTALL.COM in ASCII format. Next, set default to the directory where the installation script is located, and issue the command: $ @OMI$INSTALL Follow the instruction to install OMI. The procedure extracts the distribution and moves all files to the desired location (that you will be prompted for). Site specific files will not be overwritten. If the file OMI$TOOLBOX.INI exists, it will be patched. The installation procedure also creates the HELP library, and repairs message datafiles, which have been corrupted by the distribution. If this is a new installtion, let all the users who will be using OMI execute the procedure OMI$USER_INSTALL once. This is not required for upgrades of existing OMI installations. Installation is now complete. All users can optionally change the behaviour of OMI by modifying the file OMI$MENU.CFG, located in their SYS$LOGIN:. To test OMI, you can use the example menu file OMI$EXAMPLE.MNU which comes with this distribution. Start this menu with the command OMI OMI$EXAMPLE. This menu performs no other action than displaying information. The 'Protected menu' is protected with the password "test123456789". (Note: passwords are case sensitive!) More information can be obtained from the online HELP and the documentation. +++++++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_2:[PERL-5_8_1]FREEWARE_README.TXT;1 +++++++++++++++++++++++++++++++++++++++++++++++++++ Perl, Languages, Powerful scripting language Disclaimer ========== While this Perl distribution for the hp OpenVMS freeware CD was packaged by Martin P.J. Zinser (zinser@decus.de) and I am certainly willing to help with questions and problems concerning its usage, I am a dwarf standing on the shoulders of giants here. A number of very talented individuals are working hard to make sure OpenVMS support is well integrated into the Perl language. This specifically includes Craig Berry, Peter Prymmer, Dan Sugalski, and Charles Bailey although this list is not exhaustive. If you are interested in Perl on VMS consider joining the VMS Perl mailing list as described below and you will soon find out that there are many good people contributing to this effort. Versions on the freeware CD Perl 5.8.1 Modules CGI 2.98 Chart::Plot 0.11 Compress::Zlib 1.22 Date::Manip 5.43 DBI 1.38 GD 2.06 Mail::Sender 0.8.06 Math::SigFigs 1.01 Math::VecStat 1.08 MIME::Base64 2.20 Parse::RecDescent 1.80 Spreadscheet-WriteExcel 0.41 Time::Modules 2003.0211 VMS::Device 0.08 VMS::FileFind 0.91 VMS::FileUtils 0.14 VMS::IndexedFile 0.02 VMS::Misc 1.01 VMS::Monitor 0.06 VMS::System 1.04 VMS::User 0.01 The version on this CD does contain a pre-build binary distribution for OpenVMS Alpha in the [.perl-bin] directory. This should work on 7.2-1H1 and later. For regular use backup this directory from the CD to disk and change perl_setup.com to point to the new location. If you want to re-build from sources backup the [.perl-src] and [.mod] directories from CD to disk. As a convenience there is a make.com provided with this distribution which does build the perl interpreter as well as the additional/updated Modules. This procedure does accept the following parameters in arbitrary order: MAKE= Enforce usage of MMS or MMK to build Perl over the build-in detection by the procedure. IDIR= Installation directory where the Perl binaries and libraries are to be moved after compilation TARGET= If invoked without this parameter bothe the perl interpreter and the add-on moudles will be build. If set to PERL only the perl interpreter will be build and when given a value of MODULE only all the addon moudles will be build. To build a specific module use one of the following as the target: CGI, CPLOT, czlib, dbi, datemanip, gdpm, mailsender, mimebase64, recdescent, sigfigs, timemod, vecstat, vmsdevice, vmsfileutils, vmsfindfile, vmsindexedfile, vmsmisc, vmsmonitor, vmsqueue, vmssystem, vmsuser, writeexcel Below you can find a general discussion about building Perl with the procedures that are part of the "standard" distribution. If you either want to change particular settings to influence a particular aspect of Perl or want to build a new Perl version not on the CD it is highly recommended you get familiar with this Note for users with experience on Perl prior to 5.8.0: The default type of floating point numbers has changed from D-Float to IEEE float as of 5.8.0. If you do need D-Float support you need to recompile Perl and change the appropriate setting during execution of @configure. ================================================================================ Building The installation of Perl has vastly improved during the past years. Nowadays it is almost as simple to install Perl on OpenVMS than it is on Unix ;-) The build consists of two steps. First configure.com is used to determine the local configuration and then a "make" program is used to perform the actual compilation. configure.com configure.com can be invoked with a number of different options. These include: "-d" Use defaults for all answers. Handy if you have a normal installation and don't want to be bothered with lots of questions by install. As far as I can tell the defaults used are pretty reasonable. "-e" Go on without questioning past the production of config.sh Together with the -d and -s options this suppresses many informational messages during the build. This can be usefull for automated production builds. "-f" Specify an alternate default configuration file Configure.com by default looks for config.sh and [.vms]config.vms for configuration information from previous invocations. If you want to override settings in these files you can add your own configuration file with this switch. "-h" Prints a short help message and exits (with an informational status). "-m" Skip the MANIFEST check to see that all files are present "-r" Reuse C symbols value if possible (skips costly nm extraction) Seems not to be implemented on OpenVMS as of 5.8.0. "-s" Silent mode, only echoes questions and essential information, the rest will be sent to the Null-Device NLA0 ;-) -"D" Define symbol to have some value -"Dsymbol" symbol gets the value 'define' -"Dsymbol=value" symbol gets the value 'value' -E Stop at the end of questions, after having produced config.sh. Doesn't do much yet, but prevents configure.com from going into silent mode after the creation of config.sh. -K Do not use unless you know what you are doing. Currently you might think you knowitall, but configure.com knows it better ;-). Setting this doesn't change the execution yet. -O Let -D and -U override definitions from loaded configuration file. Seems not to be implemented on OpenVMS as of 5.8.0 -S Perform variable substitutions on all .SH files (can mix with -f) Seems not to be implemented on OpenVMS as of 5.8.0. -"U" Undefine symbol: -"Usymbol" symbol gets the value 'undef' -"Usymbol=" symbol gets completely empty -V Print version number and exit (with a zero status) My personal strategy is to perform one run with configure going through all the questions and options to get some idea about the new version and afterwards to use @configure "-des" to do the production build. One of the essential things checked by configure.com is which "make"-tool is available on your system. It currently checks for the following: Imake, Gnumake, MGmake, Gmake, Make, MMS, and MMK. I personally always use MMK. MMS should work fine too, since it is pretty similar to MMK ;-) Gnumake might or might not work, at least it is the only of the other tools that I've seen a current version of. At the end of the execution of configure.com a line will be printed showing how you should invoke your "make"-tool to actually build Perl. Once you've typed in this command (with no changes compared to the example provided by configure.com) no further user intervention should be required. Setup During the installation of Perl the DCL-procedure [.vms]perl_setup.com is created, which can be used as a starting point for the definiton of logicals and symbols. The procedure already defines everything which is undispensable for working seriously with Perl, but still you might wish to add some of the following: DEFINE/TRANS=(CONC,TERM) PERL_ROOT The path to the place where Perl is located on your system. Necessary to get access to library functions and documentation. PERL :== $PERL.EXE The symbol used to invoke Perl. PERLSHR :== PERLSHR.EXE Symbol pointing to the shareable image containing most of the routines belonging to Perl. PERLDOC :== "$PERL PERL_ROOT:[LIB.POD]PERLDOC.COM -T" Read documentation concerning perl available in POD format. DEFINE/NOLOG PERLDOC_PAGER The file viewer used to display the documentation files. I personally prefer Look, but you're certainly entitled to have an own opinion about this ;-> (Yes, I'm really sick and tired to all the My xxx is better than your yyy flame wars). PERLBUG :== "$PERL PERL_ROOT:[LIB]PERLBUG.COM" Generates a template for a bug report providing all necessary details on your local perl installation. DEFINE/NOLOG POD2MAN PERL_ROOT:[LIB.POD]POD2MAN.COM POD2MAN :== "$PERL POD2MAN" Translates files in POD format to nroff. Some build procedures for perlmodules might complain if this symbol is not defined. DEFINE/NOLOG POD2TEXT PERL_ROOT:[LIB.POD]POD2TEXT.COM POD2TEXT :== "$PERL POD2TEXT" Translates files in POD format to plain text. This is also required for perldoc -f to work properly. Basics introduction I've once prepard a talk for our DECUS LUG covering the basics of Perl and awk. If you don't have an idea about Perl yet you might want to check this out starting with [.talk]ap_toc.html. (P.S.Yes, all of the stuff done there can be accomplished much easier with the VMS::User and Mail::Sender modules, but this particular presenataton is already a few years old and I still think it gives a very basic idea about the things one can do with Perl.) Tips and Tricks To retrieve the translations of a multi valued logical name use code like the following: $ define myname martin, zinser $ show log myname "MYNAME" = "MARTIN" (LNM$PROCESS_TABLE) = "ZINSER" $ perl -e "print $ENV{'myname;'.0}" MARTIN $ perl -e "print $ENV{'myname;'.1}" ZINSER This may not work as expected on the Compaq supplied version of Perl 5.6.1. Mailing list To stay informed about the latest developments concerning new versions of Perl and problems discovered with the current version you can subscribe to the VMSPerl mailing-list by sending a message to vmsperl-subscribe@perl.org . Further notes on Perl Modules Building Every module should contain a script named Makefile.PL. Executing this perl script should create a makefile (descrip.mms) which then can be used with make (MMS/MMK) to actually perform the installation. The normal procedure for installing a perl module therefore looks like this: perl Makefile.PL mmk mmk test mmk install Note: According to my experience this only works if you place the sources for the modules not inside the source tree of the normal Perl installation. Examples Online Example The following example shows a number of the mentioned packages in use. CGI is used to create an HTML document on the fly, which contains an input field, where one can enter some value. If this value can be interpreted as a date by datemanip it is echoed back and converted to a julian date using one of the Time-Modules. Vecstat is used to calculate the sum of year, month, and date (silly, I know ;-). In a second field you can enter your age, which will be echoed back rounded to one significant digit (usually decades ;-) using the SigFigs module. Finally some information about the VMS environment is shown. VMS::Queue is used to determine the batchjob running the webserver and the submission time of the job is printed on the page. VMS::User determines the last non-interactive login for the server account (which most of the time will correspond to the last script invocation on the server). VMS::System is used to retrive information on the hardware the server is executing on. VMS::Monitor then is used to determine how many processes currently execute on the system at all and VMS::Device gives space information for the disk housing the webserver. Which disk this is, is detemined using VMS::FileUtils::Root to translate the appropriate rooted logical name. GD is used to create a graphic showing free vs. used disk space on the device. In the next step your age is used to determine the starting letter for software to be pulled in from a list kept in an indexed file via VMS::IndexedFile. Subsequently VMS::FindFile generates a list of the currently stored disk usages graphics in the temp area of the webserver. Finally the Spreadsheet::WriteExcel module (which relies on Parse::RecDescent) is used to put some of the data into an Excel Spreadsheet, which you may download if you are inclined to do so. # # Define the Modules to be used # use CGI::Pretty qw(:all -no_xhtml); use Date::Manip; use GD; use Math::SigFigs; use Math::VecStat qw(max min maxabs minabs sum average); use Spreadsheet::WriteExcel; use Time::JulianDay; use VMS::Device qw(device_list device_info); use VMS::FileUtils::Root; use VMS::FindFile; use VMS::IndexedFile; use VMS::Monitor; use VMS::Queue qw(entry_list entry_info); use VMS::System qw(get_one_sys_info_item); use VMS::User; # # Base Perl modules # use File::Temp qw/tempfile/; use File::Basename; # # Setup CGI object and print HTML form # $myform = new CGI(); print $myform->header(); print $myform->start_html("A Simple Example"), $myform->h1("A Simple Example"), $myform->start_form, $myform->p, "Please enter a date:", $myform->textfield(-name=>"date",-size=>"11"), $myform->p, "Please enter your age:", $myform->textfield(-name=>"age",-size=>"3"), $myform->p, $myform->submit, $myform->end_form, $myform->hr; # # Second invocation of the form - Analyze parameters # if ($myform->param()) { $formdate = $myform->param("date"); # # Decode date input (Datemanip) # $pdate = &ParseDate($formdate); print $myform->p; if ($pdate eq ""){ print "Date $formdate can not be parsed"; } else{ $datecomp[0] = &UnixDate($pdate, "%Y"); $datecomp[1] = &UnixDate($pdate, "%m"); $datecomp[2] = &UnixDate($pdate, "%d"); # # Transform to Julian date (Time modules) # $jd = &julian_day($datecomp[0], $datecomp[1], $datecomp[2]); # # Calculate sum Year + Month + Date (Vecstat) # $sum = &sum(@datecomp); print $myform->p, "The (gregorian) Date is ", &UnixDate($pdate, "%A, %Y%m%d"), " which translates to a julian Date of ", $jd, ".", $myform->br, "The sum Year+Month+Day is ", $sum; } $myage = $myform->param("age"); $sage = &FormatSigFigs($myage, 1); print $myform->p, "Your significant age is ", $sage; # # Information about the currently executing Web-server job # %entry_cond = {jobname=>"BATSER"}; @entries = entry_list(\%entry_cond); $entryprop = entry_info($entries[0]); print $myform->hr, $myform->p, "Webserver process active since ", $$entryprop{"SUBMISSION_TIME"}, $myform->br, "\n"; # # Information about the last noninteractive login of the server account # $UserName = getlogin(); $uairef = VMS::User::user_info($UserName); print $myform->br, "Last non-interactive login at ", $uairef->{"LASTLOGIN_N"}, $myform->br, "\n"; # # ... on the Webserver system # # $hwtyp = get_one_sys_info_item("HW_NAME"); print $myform->br, "Websever running on a ", $hwtyp, "\n"; # # ... accomodating x processes # $procs = VMS::Monitor::one_monitor_piece("PROCS"); print $myform->br, "with currently $procs active processes", "\n"; # ... and on the disk used for the Web-server # $r = new VMS::FileUtils::Root; $path = $r->unrooted('www_root:[000000]'); @words = split(/\//,$path); $pubdev = uc("_" . (($ENV{qq($words[1])} ne "") ? $ENV{qq($words[1])} : $words[1] . ":")); foreach my $devname (device_list($pubdev, "DISK")) { $DevHash = device_info($devname); $FreeBlocks = $DevHash->{FREEBLOCKS}; $MaxBlocks = $DevHash->{MAXBLOCK}; print $myform->p, "Disk-Status: Free/Max $FreeBlocks / $MaxBlocks"; } # # ... create a small graph showing disk utilization using GD # $split = ($FreeBlocks/$MaxBlocks)*200; $im = new GD::Image(200,25); $red = $im->colorAllocate(255,0,0); $green = $im->colorAllocate(0,255,51); $white = $im->colorAllocate(255,255,255); $im->transparent($white); $im->interlaced('true'); $im->filledRectangle(0,0,$split,25,$green); $im->filledRectangle($split,0,200,25,$red); system ("delete/before=yesterday public\$root:[www.tmp]DISK*.png;*"); $path = File::Temp::tempnam("public\$root:[www.tmp]","DISK") . ".png"; ($name,$dum1,$dum2) = fileparse($path); $wname = "/www/tmp/" . $name; open(MYIMG,">$path"); binmode MYIMG; print MYIMG $im->png; close(MYIMG); print $myform->p, img({-src=>$wname}); # # Silly use of IndexedFile # $letter = chr(65 + ($myage % 26)); tie(%sw,VMS::IndexedFile,'public$root:[mgr]sw.dat',0); @rows = $myform->th("Program") . $myform->th("Version"); foreach (keys(%sw)){ if (/^$letter/){ @words = split(/\s+/,$sw{$_}); push(@rows, $myform->td($words[0]) . $myform->td($words[1])); } } print $myform->table({-border=>"3"}, $myform->caption("Programs recommended for your age"), $myform->Tr(\@rows) ); # # Show earlier versions of Disk usage graphic using VMS::FindFile # print $myform->h2("Old diskgraphs as per VMS::FindFile"); print "
    \n"; my $ff = VMS::FindFile->new("public\$root:[www.tmp]DISK*.png"); while (my $filename = $ff->search()){ ($name,$dum1,$dum2) = fileparse($filename,';.*'); print $myform->li($myform->a({-href=>"/www/tmp/$name"},$name)); } print "
\n"; # # Finally turn some of the stuff into an Excel-Sheet for optional downloading # system ("delete/before=yesterday public\$root:[www.tmp]PM*.xls;*"); $path = File::Temp::tempnam("public\$root:[www.tmp]","PM") . ".xls"; ($name,$dum1,$dum2) = fileparse($path); my $workbook = Spreadsheet::WriteExcel->new($path); my $sheet = $workbook->addworksheet("From Perl"); my $psheet = $workbook->addworksheet("Programs"); $sheet->set_column(0,0,20); $sheet->set_column(0,1,25); $sheet->write(0,0, "Date entered"); $sheet->write(0,1, $formdate); $sheet->write(1,0, "Weekday"); $sheet->write(1,1, &UnixDate($pdate, "%A")); $sheet->write(3,0, "Up since"); $sheet->write(3,1, $$entryprop{"SUBMISSION_TIME"}); $sheet->write(4,0, "Last script exec"); $sheet->write(4,1, $uairef->{"LASTLOGIN_N"}); $sheet->write(5,0, "System type"); $sheet->write(5,1, $hwtyp); $sheet->write(6,0, "# of procs"); $sheet->write(6,1, $procs); $sheet->write(7,0, "Space used"); $sheet->write(7,1, $MaxBlocks - $FreeBlocks); $psheet->set_column(0,0,20); $psheet->set_column(0,1,15); $i = 0; foreach (keys(%sw)){ if (/^$letter/){ @words = split(/\s+/,$sw{$_}); $psheet->write($i,0, $words[0]); $psheet->write($i,1, $words[1]); $i++; } } print $myform->p, $myform->a({-href=>"/www/tmp/$name"},"Excel sheet"), " with output data (will be removed periodically)"; } print $myform->end_html; For the curious, this example can be seen in action at http://zinser.no-ip.info:8080/htbin/perl_mod.pl. Mail Example As might be expected in the days of SPAM I do not provide the following example on-line. It uses Mail::Sender (and implicitly MIME::Base64) to distribute a mail to a number of addreses read from a file. Obviously any number of improvements can be made to this sketch, but it does show how to use the module(s). use Mail::Sender; use Getopt::Std; getopts('s:f:'); if (not $opt_s){ die "-s \"Subject\" Missing ... exiting\n"; } &build_add_list; &check_body; ref ($sender = new Mail::Sender({from => 'foo@bar.de', smtp => 'mail.foobar.net'}) ) ; printf "with Subject %s ...\n", $opt_s; for($i=0;$i<@add;$i++){ &send_body; } exit; sub build_add_list { open(ADD,"email.txt"); my $i = 0; while(){ chop(); s/\s+//g; if ($_ ne ""){ $add[$i++]=$_; } } close(ADD); } sub check_body { die "-f file with Mail contents missing ... exiting\n" if (not $opt_f); die "File $opt_f can not be read ... exiting\n" if (not -r $opt_f); if (-T $opt_f) { printf "Text message found in $opt_f will be sent\n"; open(IN, $opt_f); @text = ; close(IN); } else { printf "Binary contents in $opt_f will be sent as attachment\n"; } } sub send_body { if (-t $opt_f) { (ref ($sender->Open({to => $add[$i], subject => $opt_s})) and print "Start Mail to $add[$i] ok\n" ) or die "$Mail::Sender::Error\n"; $sender->SendEx(@text); $sender->Close(); } else { (ref ($sender->MailFile({to => $add[$i], subject => $opt_s, msg => "Please check attachment\n Me\n", file => $opt_f})) and print "Mail to $add[$i] sent ok\n" ) or die "$Mail::Sender::Error\n"; } } Perl reference guide Since the Perl reference guide is not really a module the installation process is a bit different than described above. You'll need MMS/MMK to build the file. The process is described in detail in the readme file of the package. In short mmk testpage.ps Print the page, find the horizontal offset by folding the resulting page and change makefile accordingly. Repeat this step until the printout is centered on the page. mmk refguide.ps Printing the resulting file refguide.ps should give you a copy of the reference guide which can be cut and stapeled to a readily useable paper version of the reference guide. The version from this server contains an adapted copy of makefile (makefile.lps17_vms) for use with an DEC LPS17 printserver, using A4 paper and duplex printing. As you can see from this the changes needed are really easy. +++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_2:[PMFD]FREEWARE_README.TXT;5 +++++++++++++++++++++++++++++++++++++++++++++ PMFD, UTILITIES, Poor Man's File Defragger (IO$_MOVE on one file) +++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_2:[PSPLOT]FREEWARE_README.TXT;2 +++++++++++++++++++++++++++++++++++++++++++++++ PSPLOT, GRAPHICS, Fortran library for creating PostScript files PSPLOT is a Fortran-callable library of subroutines used for creating publication-quality graphics in the form of PostScript files. It is written in Fortran 77 and supports the standard 35 PostScript fonts and color. +++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_2:[PYTHON]FREEWARE_README.TXT;3 +++++++++++++++++++++++++++++++++++++++++++++++ Python, Languages, Python V2.3 Programming Language © Tous droits réservés 2003 Jean-François PIÉRONNE Python V2.3 Full documentation and some useful links are available from the Python for VMS site: http://vmspython.dyndns.org/ Software Requirements 1. CPQ SSL V1.0-B or V1.1(available as a free download from HP) 2. JFP ZLIB 1.1-4 3. JFP LibBZ2 1.0-2 I strongly recommend you install Python on an ODS-5 volume. By default, the installation procedure installs Python in the SYS$COMMON:[PYTHON] directory. To install it in another directory, dev:[dir], use the /DESTINATION parameter of the PRODUCT command. In this case, Python will be installed in the dev:[dir.PYTHON] directory. Installation 1. Make the directory which holds the ZIP file your default directory 2. Extract the PCSI kit from the ZIP archive. $ UNZIP "-V" PYTHON-V0203--1 3. Install Python to your chosen destination. $ PRODUCT INSTALL python (default) or ... $ PRODUCT INSTALL python /DESTINATION=dev:[dir] 4. Finally, run the DCL procedure STARTUP.COM. (You might want to add this line to your SYSTARTUP_VMS.COM file.) $ @PYTHON_ROOT:[VMS]STARTUP 4. Shared Images The STARTUP.COM procedure runs two other DCL procedures: LOGICALS.COM, to set up the correct Python logicals; and INSTALL_DYNAMICS_MODULES.COM which uses the VMS INTALL command to load Python modules as shared images (requires CMKRNL privileges). By default, no modules are INSTALL'ed as shared images. 5. (Optional): Post-Installation Module Compilation $ SET DEFAULT PYTHON_VMS $ @SETUP $ PYTHON COMPILE_PYTHON_MODULES.PY $ PYTHON -"OO" COMPILE_PYTHON_MODULES.PY 6. (Optional): Post-Installation Module Testing $ SET DEFAULT PYTHON_VMS $ @SETUP $ @ALLTESTS Module Testing Results Currently, 6 tests should fail: test_codecs, test_queue, test_re, test_socket, test_unicode, and test_zipimport +++++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_2:[REGEDIT]FREEWARE_README.TXT;15 +++++++++++++++++++++++++++++++++++++++++++++++++ REGEDIT, Utilities, A program to look at or modify the registry database Regedit is a program to look at or modify the registryserver database. It is a full screen (SMG) program and looks like the (MS-)Windows regedit. If you use the DecWindows environment, you can use mouse-clicks, otherwise you must use keyboard-keys. Because the registry-server exists only on alpha, there is not VAX version. Usage: Run regedit Once in the program you can use PF2/HELP for help info F10 or ^z will return you to DCL. If you have a Decwindows/VXT display, use can use the mouse, otherwise you must use the keyboard. Building The Alpha executable is in the kit, but if you want to rebuild REGEDIT, go to the regedit directory and use @create_regedit Contents: Ths package contains the following files In the home directory REGEDIT.EXE The executable CREATE_REGEDIT.COM The command file to compile/link FREEWARE_README.TXT This file In the [.SRC] directory REGEDIT.FOR The Fortran source REGEDIT.INC The include file In the [.ALPHA] directory REGEDIT.OBJ The object There is no VAX equivalent, since the registry server only runs on Alpha. Instructions: Unpack the save set. If you want to rebuild: If you have a fortran compiler @CREATE_REGEDIT Else to link only @CREATE_REGEDIT LINK Author : Fekko Stubbe ++++++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_2:[RMS_LOCKS]FREEWARE_README.TXT;2 ++++++++++++++++++++++++++++++++++++++++++++++++++ RMS_LOCKS, Miscellaneous, Shows all and/or blocked locks for RMS files and records VMS version: VAX: 7.2 Alpha: 7.2-1 Language : VAX/DEC Basic This program will scan the DLM database capturing all locks for RMS files and records. It will then traverse the data displaying ALL locks, or only BLOCKed locks. NOTE: The program requires CMEXEC privs! Maybe others. Development of the program derived from another utility, and identification of RMS file and record locks was done purely on a 'discovery' basis, not referencing the VMS documentation. Lock values could change in future versions of VMS and the program would be rendered unusable. The Alpha version of the program has one 'hack' (means I don't really understand why there is a difference) to address differences in device naming on Alpha. I'm pretty sure neither version would work in a cluster environment, I don't have a cluster to perform any testing. Some selections to limit the volumn of data displayed would be useful enhancements. I don't plan any since I don't have much use for the utility. Also included is DLM_LOCKS.BAS, a tool used in the research for implementing RMS_LOCKS. +++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_2:[SD]FREEWARE_README.TXT;2 +++++++++++++++++++++++++++++++++++++++++++ SD, UTILITIES, Another SD SET DEFAULT tool: rich-featured powerful and robust SD is a powerful and flexible alternative to the DCL command "SET DEFAULT". It has the capability to . quickly set default to the default login directory (SYS$LOGIN); . quickly set default to any user's default login directory (privileged use); . set default to logical directory names, wildcarded directory names and complex directory specifications; . store a history of "visited" directories in a "Last In First Out" (LIFO) directory stack; . set default to any given directory in the directory stack; . display the contents of the directory stack; . allow different styles of stack display; . manipulate the contents of the directory stack; . set the maximum size of the directory stack; . re-initialize the directory stack; . write the directory stack to a disk file for later re-loading of the stack; . read a previously dumped directory stack from a disk file to re-load the stack; . change the session prompt to reflect the current default directory; . allow flexible specification of the format of the new session prompt; . provide direct access to help information from the command line; The author of SD is Jonathan Ridler. SD is maintained on behalf of: Information Technology Services, The University of Melbourne, Parkville, Victoria, AUSTRALIA, 3052. Email enquiries: i.robinson@its.unimelb.edu.au SD is written entirely in Compaq Pascal and has been built and tested on OpenVMS VAX v7.1 (Compaq Pascal v5.6) and OpenVMS Alpha v7.3 (Compaq Pascal v5.8). ++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_2:[SDL]FREEWARE_README.TXT;5 ++++++++++++++++++++++++++++++++++++++++++++ SDL, LANGUAGES, Data Structure/Interface Definition Language EV1-65/EV1-66 This tool is a data definition language and is used to convert a language-independent definition file (an SDL input file) into a language-dependent definition file. Alone or in conjunction with mechanisms such as the OpenVMS MESSAGE/SDL command (a latent and undocumented qualifier which converts the .MSG file into an SDL file) and the Freeware GNM tool, the SDL tool can be used to maintain common sources for a wide variety of language files. This version of SDL includes images for use on OpenVMS VAX systems (in [.VAX_IMAGES]) and on OpenVMS Alpha (in [.ALPHA_IMAGES]) systems. These images were built with/for/on OpenVMS V7.3-1. The provided SDL.COM procedure will create logical names for the correct set of images for the local system architecture, and will also load the SDL.CLD command definition into the current process. To invoke SDL: $ @SDL ! needed once then $ SDL/ALPHA/LANGUAGE=CC filedef.SDL or $ SDL/VAX/LANGUAGE=CC filedef.SDL Also available is SDL/NOPARSE, which converts the intermediate files (.SDI files) found in STARLETSD.TLB into language-specific definition files. +++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_2:[SDLXSD]FREEWARE_README.TXT;1 +++++++++++++++++++++++++++++++++++++++++++++++ SDLXSD, LANGUAGES, XSD generator for SDL VAX/Alpha. +++++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_2:[SHUTDOWN]FREEWARE_README.TXT;4 +++++++++++++++++++++++++++++++++++++++++++++++++ SHUTDOWN, UTILITIES, Hobbyist cluster shutdown for non-privilged users ++++++++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_2:[SIMH302-VMS]FREEWARE_README.TXT;3 ++++++++++++++++++++++++++++++++++++++++++++++++++++ SIMH302-VMS, UTILITIES, simh with ethernet support for OpenVMS This is a simh with ethernet support for OpenVMS Alpha. It contains executables (for 7.3-1 or later) of the VAX and pdp-11 simulator with (and without) ethernet support. To use the ethernet support CMKRNL is needed and the PCAPVCM.EXE execlet needs to be copied to SYS$LOADABLE_DEVICES. To build simh from sourcesw, unpack the ZIP file and start by building the pcap support in [.PCAP-VMS] by invoking the BUILD_ALL.COM procedure. To build simh with ethernet support, use: $ MMS/MACRO=("__ALPHA__=1", "__PACP__=1") [vax | pdp11] NOTE: Only the VAX and pdp-11 supports ethernet. +++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_2:[SMILEY]FREEWARE_README.TXT;2 +++++++++++++++++++++++++++++++++++++++++++++++ Smiley, Miscellaneous, Print and explain smileys :-) Installation To build the Smiley program just execute make_vms.com. Since the program only consists of very few source files no attempt at any sophistication has been made. If you do feel there is a need for options to the build procedure sent me a note and I shall look into it. Environment variables If the logical name "SMILEY" is defined a call to smiley with option -e (like explain) will try to find the definition of this Smiley. The latest version of the OpenVMS port of the Smiley server should always be accessible via http://www.decus.de:8080/www/vms/sw/smiley.htmlx ++++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_2:[SYLTREM]FREEWARE_README.TXT;1 ++++++++++++++++++++++++++++++++++++++++++++++++ Syltrem, UTILITIES, Determine Global Pages and Sections Requirements I have written a DCL procedure to know how much free global pages/sections are required for installing a program in shared memory. It supports both Alpha and VAX. I believe it can be useful to others as it is to me from time to time. Maybe it could be included in the next release of the freeware CD. Regards, Syltrem http://pages.infinit.net/syltrem (OpenVMS related web site) Sample execution on VAX $ @[.mis6]gbl prod_exe:pfcp0100inf %ANALYZE-I-ERRORS, IVA$EXE:[IMAGES]PFCP0100INF.EXE;72 0 errors Section 1: 41 pages Section 2: 305 pages IVA$EXE:[IMAGES]PFCP0100INF.EXE; requires 346 global pages in 2 = sections to be installed/open/share/header Verified by: $ install list/glo prod_exe:pfcp0100inf DISK$DISQUE35:.EXE PFCP0100INF;72 Open Hdr Shar System Global Sections DSA4:PFCP0100INF.EXE INS$873B2E10_002(6AA6F911) PRM SYS Pagcnt/Refcnt=3D305/0 INS$873B2E10_001(6AA6F911) PRM SYS Pagcnt/Refcnt=3D41/0 Sample execution on Alpha $ @gbl prod_exe:pfcp0100inf %ANALYZE-I-ERRORS, IVA$EXE_ALPHA:[IMAGES_ALPHA]PFCP0100INF.EXE;73 0 errors Section 1: 706 pages IVA$EXE_ALPHA:[IMAGES_ALPHA]PFCP0100INF.EXE; requires 706 global pages in 1 section to be installed/open/share/header Result verified with: $ install list/glo prod_exe:PFCP0100INF.EXE DISK$DISQUE35:.EXE PFCP0100INF;73 Open Hdr Shared System Global Sections DSA4:PFCP0100INF.EXE INS$ACB6C9B0_003(6AA84EFE) PRM SYS Pgltcnt/Refcnt=3D706/ 405 ++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_2:[TBO]FREEWARE_README.TXT;3 ++++++++++++++++++++++++++++++++++++++++++++ TBO, UTILITIES, Tool to drift system time This tool provides an interface to slowly adjust (drift) the current OpenVMS System time forward or backward, such as drifting the current system time between standard time and daylight savings time. Please see the DCL CLD, the Macro32 code, and the HLP module for details. ++++++++++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_2:[TCPDUMP-3_7_2]FREEWARE_README.TXT;2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ TCPDUMP-3_7_2, NETWORKING, TCPDUMP and PCAP for OpenVMS This a port of the tcpdump and the pcap library to OpenVMS. There are two versions of the pcap library for OpenVMS, one which uses the $QIO interface to the OpenVMS LAN driver, and one which uses the VCI interface to the LAN driver. To build everything, just invoke the build_all.com procedure. Notice that the tcpdump port uses MMS (MMK should work as well) for the build. The subdirecotries contains: [.pcap-lan] A port of the pcap library using the $QIO interface to the LAN driver. This version of the library can only capture packets. [.pcap-vci] A port of pcap using the VCI interface to the LAN driver. This version of pcap uses the PCAPVCM execlet and is faster than the QIO implementation of pcap. This version also allows you to send packets as well as receiving packets. [.pcapvcm] The VMS execlet which uses the VCI interface to the LAN driver. Once built it must be placed in SYS$LOADABLE_IMAGES. [.tcpdump-3_7_2] A quick and dirty port of tcpdump. When built, two versions of tcpdump are produced. One using the $QIO version of pcap and one using the VCI version of pcap. These are the only executables created by the build. [.vci_10_spec] A html version of the VCI version 1.0 specification. [.exe] Executables for tcpdump +++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_2:[TELL]FREEWARE_README.TXT;1 +++++++++++++++++++++++++++++++++++++++++++++ TELL, NETWORKING, Executes DCL Commands on Remote Nodes via DECnet This command procedure will execute commands on a remote node. The command syntax for tell is :- @TELL[/output=filename] NODENAME[,...] DCL-COMMAND [&] [|...] P1 - NODENAME: More than one nodename can be specified, each being seperated by a comma. Nodename can be a symbol Nodename can be a file containing a list of nodes (one node per line) specified by an @ prefix (@file). The default extension is .dat. Comments should start with a ! or #. A double colon (::) after the nodename is optional and specifies decnet transport. A single colon (:) after the nodename specifies tcpip transport. "0" can be used to specify the local nodename. If you do not have proxy access then you can specify access control information as part of the nodename specification (node"user password") You can force a routing path by specifiy nodename of the from nodename::nodename:: If in command mode and two or more nodenames are specified then on completion TELL displays a summary listing of unreachable nodes. This feature can be disabled by defining the logical name as follows:- $ DEFINE/PROCESS/NOLOG TELL_INHIBIT_SUMMARY TRUE If node not specified then the symbol tell_default_nodes is used if defined. P2 to P8 - DCL COMMAND: INTERACTIVE MODE: If no DCL command is specified then you will be in interactive mode. At that point you will have a DCL session in the context of the remote node. The standard EXIT command will return you to your local node. If a decnet nodename is specified then the tell decnet object will be used to process the command on the remote node. If a tcpip nodename is specified then an rlogin command is used used to process the command on the remote node. A password can be specified but will not be used. COMMAND MODE: Here the DCL commands are specified in P2 to P8 and are separated by a vertical bar "|". Quotes are optional and are only required to reduce the number of P parameters. If a decnet nodename is specified then the tell decnet object will be used to process the command on the remote node. If a tcpip nodename is specified then an rsh command is used used to process the command on the remote node. DETACHED MODE: Jobs can be run in the background as a detached process by suffixing the & (unix background command) to any command. This can be done from either Interactive or Command Mode. Note that you cannot issue commands that require terminal input such as EDIT etc. This is a restriction of the DECnet task-task software and not of TELL itself. Some of these restrictions can be overcome by defining the verb as a foreign command. This allows many commands to be entered on a single line. eg. $ AUTHORIZE :== $AUTHORIZE $ AUTHORIZE SHOW KINGSMILL QUALIFIERS: /Output can be used to direct the output to a filename. EXAMPLES: $ TELL :== @SYS$MANAGER:TELL.COM All the following examples assume that the tell symbol is defined. Place this in your login.com. $ TELL MVAX,UNIXA"geoffk": This command will allow you to interactively enter commands on both MVAX and UVAX. Default proxy access is used to MVAX and the geoffk account will be used on UNIXA (unix machine). $ TELL MVAX SHOW ERROR This command relies on proxy access to MVAX. It does a remote $show error on node MVAX. $ TELL UNIXA: "date" This command relies on proxy access to UNIXA. It does an "$RSH UNIXA date" command. $ TELL_DEFAULT_NODES == "MVAX" $ TELL "" SHOW ERROR This command uses the symbol tell_default_nodes to obtain the nodename and relies on proxy access to node MVAX. It does a remote $show error on node MVAX. $ TELL/OUTPUT=SYS$LOGIN:TELL.OUT MVAX SHOW ERROR This command relies on proxy access to MVAX. It does a remote $show error on node MVAX with the output directed to the file sys$login:tell.out $ TELL MVAX"KINGSMILL PASSWORD":: SHOW ERROR this command supplies access control to accounts that do not have proxy access $ TELL MVAX"KINGSMILL":: SHOW ERROR Under VMS V5.x you can have a number of different proxy users pointed to one account. This example show how to gain access to a non-default proxy account. Note that only the username needs to be specified. $ TELL MVAX,TVAX,SVAX SHOW ERROR this command will do a show error on MVAX, TVAX and SVAX. $ DECA_CLUSTER :== MVAX,TVAX,SVAX $ TELL 'DECA_CLUSTER' SHOW ERROR this command will do a show error on MVAX, TVAX and SVAX. $ TYPE DECA_CLUSTER.DAT MVAX TVAX SVAX $ TELL @DECA_CLUSTER SHOW ERROR this command will do a show error on MVAX, TVAX and SVAX. $ TELL MVAX,UVAX: "SHOW ERROR"|"SHOW NET" this command will do both a show error and a show net on MVAX (using DECnet) and UVAX (using TCPIP [RSH]). $ TELL MVAX,TVAX "SET DISPLAY/CREATE/NODE=MAXPS1" | "CREATE/TERM &" this command will create a detached decterm on both MVAX and TVAX $ TELL MVAX MVAX_KINGSMILL>> SHOW ERROR MVAX_KINGSMILL>> SET PROC/PRIV=OPER MVAX_KINGSMILL>> MCR NCP SHOW EXEC MVAX_KINGSMILL>> EXIT $ This is an example of an interactive session. The prompt indicates the remote nodename and username, whilst the ">>" is used to distinguish between a local and remote session. $ TELL MVAX TELL TVAX SHOW ERROR $ TELL MVAX::TVAX:: SHOW ERROR Both of these commands perform the same function. The first performs a nested TELL, ie. TELL node MVAX to TELL node TVAX to do a $ show error. Only command mode is valid with this syntax and you must specify the command as TELL not @tell. The second example show how to do the same thing using Poor Mans Routing (PMR). This is far more efficent than the first examples and it supports both command and interactive modes. CONFIGURATION SETUPS: This file needs to exist on the local node and the remote node if a decnet nodename is specified. It requires the user to either specify node access control or for the remote account to be set up for proxy access. TELL can simply reside in sys$login on the remote node, which requires each user to have their own copy -or- TELL can be defined as a DECnet object, requiring each system to have only one copy. To install TELL as a network object the system manager should enter the following commands: DECnet/IV $ MCR NCP NCP> DEFINE OBJECT TELL NUMBER 0 FILE SYS$MANAGER:TELL.COM PROXY BOTH NCP> SET OBJECT TELL ALL NCP> EXIT $ DECnet/OSI $@sys$startup:net$configure application_add tell "" - "{name=tell}||sys$manager:tell.com|true|true|true|true|true||||1" If TELL is not installed as a network object then by default no other setups are required. However if the DECnet object task has been modified to disable proxy access then tell will fail. In this case the system manager should enter the following ncp command or equivalent ncl command. $ MCR NCP NCP> DEFINE OBJECT TASK PROXY BOTH NCP> SET OBJECT TASK ALL NCP> EXIT $ PROXY accounts allow one user direct access to another users account without having to specify username and password. DECNET The system manager can set up proxy account access from within AUTHORIZE. Example: $ MCR AUTHORIZE> UAF> ADD/PROXY MVAX::KINGSMILL KINGSMILL/DEFAULT UAF> ADD/PROXY MVAX::OLSENK KINGSMILL UAF> EXIT TCPIP: To prevent the need to use passwords on the RSH command proxies can be set up to authorize remote user access. To set up remote user access on a UNIX machine, or TCPWARE/MULTINET under VMS you specify the remote node and username in the .rhosts file which resides in the users home directory. With UCX you use the "UCX> ADD PROXY command" Example: [TCPWARE/MULTINET] $type sys$login:.rhosts mvax kingsmill mvax olsenk $ [UNIX] #more .rhosts mvax kingsmill mvax olsenk [UCX] UCX> ADD PROXY KINGSMILL/HOST=MVAX/REMOTE_USER=KINGSMILL UCX> ADD PROXY KINGSMILL/HOST=MVAX/REMOTE_USER=OLSENK This examples allows remote user KINGSMILL and OLSENK on node MVAX into the local KINGSMILL account. The default switch enables you to specify just the nodename when addressing this node:- eg. $ DIRECTORY TVAX:: If Default access is not specified then you need to specify the nodename and username when addressing this node:- eg. $ DIRECTORY TVAX"KINGSMILL":: If you do not have proxy access then you need to specify the nodename, username and password when addressing a remote node:- eg. $ DIRECTORY TVAX"KINGSMILL password":: The following logicals can be used to alter the default TELL behaviour. TELL_INHIBIT_SUMMARY to disable the statistics printout. SYS$SCRATCH - temporary files are written to sys$scratch. If you don't want the temporary files written to sys$login then define sys$scratch. TROUBLESHOOTING: The following logicals can be used to aid in troubleshooting. TELL_VERBOSE to display the progress of both local and remote events. This can also be enabled by setting the version prefix from "V" to "X" TELL_VERIFY to turn on verify and verbose. Netserver.log on the remote node may also aid in troubleshooting. TELL_'pid'_*.TMP temporary file on the remote node shows the created command file if detached qualifier was specified. TELL_'pid'_*.LOG temporary file on on the remote node showing the output from tell_'pid'_*.tmp +++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_2:[TIDY]FREEWARE_README.TXT;1 +++++++++++++++++++++++++++++++++++++++++++++ TIDY, UTILITIES, Tidy Fortran Source Code TIDY 7.2 is a highly configurable FORTRAN program to indent and renumber statements, selectively change case of keywords or non-keywords, and do various other clean-up tasks on FORTRAN-77 source programs. Please see READ1ST.TID for further details of Tidy. ++++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_2:[TO-V431]FREEWARE_README.TXT;1 ++++++++++++++++++++++++++++++++++++++++++++++++ TO, UTILITIES, SET DEFAULT program - saves typing TO.COM is a set-default program that works on Files-11 ODS-2 disks. I haven't tried it on an ODS-5 disk so I don't know how well it would work with ODS-5. Features: o Correct processing of nested logical names. o Smart Logical-Name Recall Stack... - holds last 9 defaults plus the current default (the stack size is adjustable) - assigns convenient logical names to stack entries - uses numbers to reference stack entries in TO.COM - avoids duplicate entries o New default is checked for validity and existence. o Filename stripping: If P1 is a logical name pointing to a file, TO.COM looks for the file and sets default to the directory in which that file resides. If no file is found, the device and directory are extracted from P1 and TO.COM sets default to the result. o Has logic to handle situations in which the default was changed by another program. o Directory brackets are optional (logical names must still be defined properly). o Shortcuts for MFD, top level of current tree, up n levels o Two-step default function (saves typing) o Superfluous 000000's are removed from new defaults. o 23-line quick-help page function See README.TXT or the beginning of MANUAL.TXT for easy installation and Quick Start instructions. ++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_2:[TSM]FREEWARE_README.TXT;2 ++++++++++++++++++++++++++++++++++++++++++++ TSM, Utilities, Terminal Server Manager Terminal Server Manager (TSM) V2.1 (with ECOs) This file is loosely based on the TSM Web Distribution Kit README.TXT, and on materials and changes for Freeware V6.0. The files in this directory are as follows: TSM.ZIP, containing: TSMECO07021.A TSMECO08021.A TSMECO09021.A TSM_PAK.COM FREEWARE_README.TXT The TSM_PAK.COM file will register and load a License Management Facility (LMF) Product Authorzation Key (PAK) for TSM. If you already have a PAK for TSM, you do not need this PAK. $ @tsm_pak.com Once you have unzipped the kit, execute the OpenVMS VMSINSTAL installation procedure (for the target ECO installation kit) in the normal fashion: $ @sys$update:vmsinstal The location of the kit directory should be the fully specified path to the subdirectory containing the unzipped kits. Additional materials and TSM-related documentation is available on the OpenVMS Freeware V5.0 TSM kit. ++++++++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_2:[TTI_INTOUCH]FREEWARE_README.TXT;1 ++++++++++++++++++++++++++++++++++++++++++++++++++++ INTOUCH, LANGUAGES, High-performance 4GL for OpenVMS VAX/AXP systems INTOUCH 4GL is the high-performance 4GL for OpenVMS VAX and AXP systems. INTOUCH 4GL runs on all versions of OpenVMS -- VAX/VMS V4.5 to 6.x, AXP/VMS V1.5 and 6.x. INTOUCH 4GL interfaces to RMS, Rdb, DEC DBMS, ORACLE, dBASE, and other database engines. However, this {freeware} version only includes the RMS interface. INTOUCH 4GL comes complete with a "Guided Query Language" (GQL) and a "GQL On-line Tutorial". However, this {freeware} GQL version only supports ten (10) columns of reporting information. The fully-featured GQL supports reports of unlimited complexity! INTOUCH 4GL Documentation The complete INTOUCH 4GL documentation (in Postscript form) is located on this CD-ROM in [TTI_INTOUCH.DOC]. For the complete hard-copy set of INTOUCH 4GL documentation ($95.00 US), contact us at: INTOUCH 4GL Touch Technologies, Inc. 9988 Hibert #310 San Diego, CA 92131 Voice: 800-525-2527 or 619-566-3603 FAX# : 619-566-3663 Internet: intouch@ttisms.com Installing INTOUCH 4GL to your Hard Disk To install INTOUCH 4GL from this CD-ROM: to your hard disk (called {mydisk:} in this example): $ create/dir/prot=w:re {mydisk:[intouch]} $ copy freeware$cd:[tti_intouch]*.*; {mydisk:[intouch]} $ set default {mydisk:[intouch]} $ @intouch_build Then, add this line to your system-wide LOGIN.COM file: {$ @mydisk:[intouch]intouch.com} The INTOUCH 4GL installation will take less than 10 minutes. INTOUCH 4GL Full-Feature Upgrade For information on how to upgrade this {freeware} copy of INTOUCH 4GL to the fully-featured, 7/24 supported version, or for the full set of hardcopy INTOUCH 4GL documentation, contact us at: INTOUCH 4GL Touch Technologies, Inc. 9988 Hibert #310 San Diego, CA 92131 Voice: 800-525-2527 or 619-566-3603 FAX# : 619-566-3663 Internet: intouch@ttisms.com ...Interested in a FREE "Born to Code" Polo shirt? Yes? Please see the file [TTI_INTOUCH]SURVEY.TXT. (Offer limited to the first 1,000 respondents!) +++++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_2:[VILE093T]FREEWARE_README.TXT;2 +++++++++++++++++++++++++++++++++++++++++++++++++ VILE, UTILITIES, VI-LIKE-EMACS text editor vile is a text editor which is extremely compatible with vi in terms of "finger feel". In addition, it has extended capabilities in many areas, notably multi-file editing and viewing, key rebinding, and real X window system support. Version 5.4 appeared on the second OpenVms Freeware CDROM. Version 6.1, which appeared on the third Freeware CDROM upgraded the source to ANSI C (from extended C). Version 8.2 (on the 4th CDROM) added support for user-definable modes and makes procedures executable just like the builtin commands. The minibuffer (aka the ex command line) is editable with vi-style commands. Version 9.2 (on the 5th CDROM) focused on syntax highlighting (not yet ported to VMS). However, as usual, there are lots of bug fixes. This is a pre-release version of vile 9.4 The authors of vile are Tom Dickey (current maintainer), Paul Fox, Kevin Buettner and Rick Sladkey. Send bugs to "dickey@herndon4.his.com". ++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_2:[VIM]FREEWARE_README.TXT;2 ++++++++++++++++++++++++++++++++++++++++++++ VIM, UTILITIES, (Vi IMproved) Vi compatible text editor. VIM version 6.1-18 ============================================================================== 1. Getting started *vms-started* Vim (Vi IMproved) is an almost 100% compatible version of the UNIX editor Vi. Vim runs on nearly every operating system known to humanity (almost any Unix flavor, MS-DOS, MS-Windows 3.1, MS-Windows 95/98/NT/2000, OS/2, Atari MiNT, BeOS, RISC OS, Macintosh, Amiga). Now use Vim on OpenVMS too, in character or X/Motif environment. It is fully featured and absolutely compatible with Vim on other operating systems with multi level undo, syntax highlighting, command line history, filename completion, block operations, etc. Vim is especially recommended for editing programers who use to change development palatforms quite often. For more information, see http://www.vim.org and OS_VMS.TXT in this archive. You can download up to date executables from http://www.polarfox.com/vim/ ============================================================================== 2. This archive *vms-archive* Vim archive contains all OpenVMS related files of Vim version 6.1 VIM |- RUNTIME runtime files, documentation, extra fonts etc. |- SRC complete source code |- ALPHA OpenVMS Alpha executables for gui and terminal |- VAX OpenVMS VAX executables for gui and terminal |- GNU Useful GNU tools that Vim might use OS_VMS.TXT OpenVMS users manual Files description: TEST.LOG Output of <.src.testdir>make_vms.mms test file INSTALL.LOG Output main build VERSION Output of VIM --version ============================================================================== 3. Deploy *vms-deploy* Copy all Vim runtime directory structure to the deployment position. Copy over all choosen executables to the VIM directory (GUI compiled can run in simple teminal mode as well, if you have MOTIF shared libraries installed) vim |-- doc |-- syntax |-- tools |-- ... vimrc (system rc files) gvimrc VIM.EXE XXD.EXE CTAGS.EXE Add the following lines to your LOGIN.COM (in SYS$LOGIN directory). Set up logical $VIM to point to the VIM deployment directory as: > $ define/nolog VIM device: Set up some symbols: > $ ! vi starts Vim in chr. mode. > $ vi*m :== mcr VIM:VIM.EXE > $ !gvi starts Vim in GUI mode. > $ gv*im :== spawn/nowait mcr VIM:VIM.EXE -g Create .vimrc and .gvimrc files (or _vimrc, _gvimrc) in your home directory (SYS$LOGIN). (optional) For more information about deployment, build from source code etc, please, check the OS_VMS.TXT file. ============================================================================== Archive created by Zoltan Arpadffy +++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_2:[VMSFAQ]FREEWARE_README.TXT;1 +++++++++++++++++++++++++++++++++++++++++++++++ VMSFAQ, FREEWARE, The OpenVMS Frequently Asked Questions (FAQ) This directory contains an edition of the OpenVMS FAQ, and in various document formats. The FAQ contains answers to many of the more commonly-asked questions associated with OpenVMS and with its various related hardware platforms, and pointers to many of the available OpenVMS resources, to tutorials and training materials, and to many other supporting materials. The text-format version of the FAQ is very likely the easiest to serve, download and search. The OpenVMS FAQ is updated several times per year, and sometimes more or less often. Please check for the latest version of the OpenVMS FAQ, as available in the comp.os.vms, news.answers and comp.answers newsgroups, and is served from, or is linked from, various websites including the following: http://www.hp.com/go/openvms/faq/ http://www.openvmshobbyist.org/ http://www.openvms.org/ http://www.faqs.org/ +++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_2:[VMSTAR]FREEWARE_README.TXT;2 +++++++++++++++++++++++++++++++++++++++++++++++ VMSTAR, Utilities, Tape Archiving Package for OpenVMS This package contains a version of the tar utility for use on OpenVMS, and can read and write tar archive files. Un*x platforms and users quite commonly use tar files for storing and for transfering files as a single omnibus file commonly known as a tarfile. See the aaareadme.txt file for additional details. ++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_2:[WINFX]FREEWARE_README.TXT;5 ++++++++++++++++++++++++++++++++++++++++++++++ WINFX, UTILITIES, Windows File Exchange Utility The WINFX utility provides the capability to exchange disk-resident files between OpenVMS and Windows operating systems. It supports the FAT12, FAT16, and FAT32 file systems on floppy disks and partitioned hard disks, including ZIP disks. It can also construct and access these file systems within container files. The WINFX utility works on both OpenVMS VAX and OpenVMS Alpha. On VAX systems, version 7.1 or higher is recommended, and on Alpha systems, version 7.1-2 or higher is recommended. It may work on older versions, but it will depend on the level of SCSI support in the base operating system and applied ECOs (some work, some don't). WINFX was compiled using DEC C version 6.2 on Alpha and version 6.0 on VAX. It was tested under OpenVMS versions 6.2, 7.1-2, 7.2-2, 7.3 and 7.3-1 on Alpha, and version 7.2 on VAX. The WINFX utility is a command-driven program. Please see the help within WINFX for detailed information. Following is a brief summary of the commands it supports. USE Associates a drive letter (A-Z) with a file system. DISUSE Releases a drive letter file system association. FORMAT Creates a new empty file system. PARTITION Partitions a hard disk. IMPORT (WRITE) Copies files into a file system from OpenVMS. Binary and text modes are supported. Can create and import an associated FDL file. EXPORT (READ) Copies files from a file system to OpenVMS. Binary and text modes are supported. Can use an FDL file when creating exported files. DIRECTORY Lists the contents of a directory. Several attributes of the files can be displayed, and a MSDOS-like display is supported. CREATE/FILE_SYSTEM Creates an empty container file in which one or more file systems can be constructed. CREATE/DIRECTORY (MKDIR) Creates a new empty directory. DELETE Deletes a set of files. DELETE/DIRECTORY (RMDIR) Deletes a directory. HELP Get help about a command or function. SET PATH (CD) Sets the default directory path. SET STYLE Sets long or short file name style. SHOW PATH (PWD) Shows the current default directory path. SHOW DRIVE Shows information about a drive and its associated file system. SHOW PARTITION Shows partition information for a hard disk. EXIT Terminate the program. +++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_2:[WIZARD]FREEWARE_README.TXT;2 +++++++++++++++++++++++++++++++++++++++++++++++ WIZARD, Miscellaneous, OpenVMS Info from Ask The Wizard This area contains a zip-format archive of the Ask The Wizard questions and answers; of a series of questions and answers centering on the HP OpenVMS operating system and associated HP Layered Products. For the latest information and answers and the most recent copy of the archive, please visit the following URL: http://www.hp.com/go/openvms/wizard/ Also please acquire the current version of the OpenVMS Frequently Asked Questions (FAQ) document, available at various websites including the URL: http://www.hp.com/go/openvms/faq/ Information provided here is subject to change without notice, and includes both new and older questions and answers. Various other miscellaneous tools and documents are also provided here, including a tool (zdec) to reset the system device error counts on OpenVMS systems. +++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_2:[WOLF3D]FREEWARE_README.TXT;1 +++++++++++++++++++++++++++++++++++++++++++++++ WOLF3D, GAMES, Wolfenstein 3D for OpenVMS This is a port of the classic shoot-em-up Wolfenstein 3D. The code this port was derived from was collected from: http://www.icculus.org/wolf3d/wolf3d-20011028.tar.gz Running: In order to run Wolf3D the WOLF3D_DATA logical needs to be defined. It must point to the location of the Wolf3D data files, eg: $ DEFINE WOLF3D_DATA DUA0:[WOLF3D.DATA] The files for shareware Wolf3D are provided in the [.DATA] directory. If you have Spear of Destiny or the full version of Wolf3D then read the linking instruction. If you intend to load/save games you need to define the logical WOLF3D_SAVE, eg: $ DEFINE WOLF3D_SAVE DUA0:[WOLF3D.SAVE] Read FREEWARE_DEMO.TXT for more information. Linking: Linking is simple. Change to the directory [.SRC] and execute BUILD_WOLF3D.COM. If there are objects in the directory it will pick them up and use them instead of compiling from source. Because the different versions of Wolfenstein require different executables I have included the objects for all four versions in ZIP files: For Alpha: WOLF3D_WL1_AXP.ZIP => Wolfenstein 3D Shareware WOLF3D_WL6_AXP.ZIP => Wolfenstein 3D WOLF3D_SDM_AXP.ZIP => Spear of Destiny Demo WOLF3D_SOD_AXP.ZIP => Spear of Destiny For VAX: WOLF3D_WL1_VAX.ZIP => Wolfenstein 3D Shareware WOLF3D_WL6_VAX.ZIP => Wolfenstein 3D WOLF3D_SDM_VAX.ZIP => Spear of Destiny Demo WOLF3D_SOD_VAX.ZIP => Spear of Destiny Simply unzip the contents of the relevant file into [.SRC] and execute the build procedure: $ UNZIP WOLF3D_xxx_yyy.ZIP -d [.SRC] $ SET DEFAULT [.SRC} $ @BUILD_WOLF3D Building: To build Wolf3D from source you will need to delete all the objects in [.SRC], set the correct version number and execute the build procedure: $ SET DEFAULT [.SRC] $ DELETE *.AXP_*;* ! For Alpha users $ DELETE *.VAX_*;* ! For VAX users To set the version edit VERSION.H and modify the value of WMODE. From the source: From VERSION.H: #define WMODE 0 /* Change WMODE to point to the executable you would like to build: */ /* WL1 = 0 Wolfenstein 3D Shareware */ /* WL6 = 1 Wolfenstein 3D */ /* SDM = 2 Spear of Destiny Demo */ /* SOD = 3 Spear of Destiny */ Then build Wolf3D: $ @BUILD_WOLF3D Documentation: The [.DOC] directory contains the documentation from the original package. There is also a Wolfenstein 3D FAQ which contains cheats, etc. Help: From "-help": -debugmode -demotest -help prints this message -nojoy disables joystick input -nomouse disables mouse input -noshm disables X MIT-SHM support -nowait skip intro screen -version prints software version -x2 increase window size x2, 640x480(default is 320x200) -x3 increase window size x3, 960x600 I pulled the following out of some of the source: Escape Main Menu F1/Help Help F2 Save game F3 Load game F4 Configure sound F5 Change view F6 Configure controls F7 End game F8 Quick save F9 Quick load F10 Quit Do Pause Build system: The Alpha objects were built on: Alpha Evaluation Board 166 5/333 128Mb RAM OpenVMS Alpha V7.3-1 DECwindows 1.3 Compaq C V6.5-001 2x Powerstorm 3D30 The Alpha executable was built on: Alpha XP1000 6/500 OpeVMS Alpha V7.3-1 DECwindows 1.2-6 2x 3DLabs Oxygen VX1 The VAX objects and executable were built on: VAXstation 4000-90 OpenVMS VAX V7.3 DECwindows 1.2-6 Compaq C V6.4-005 LCSPX 8-plane graphics module Changes: I have made some changes to the code as listed below: o. Added -x2 and -x3 support to the X driver. o. Implemented WOLF3D_DATA logical. Everything used to have to be in the same directory. o. Implemented WOLF3D_SAVE logical. Somewhere to put your save files. o. Added -help o. Added support for all Fx keys, Help, Do and LK escape key. o. Wrote some macro to handle quadword arithmetic need for FixedByFrac() on the VAX, uses EMUL. o. Added XBell PC speaker emulation, a little bit slow, but still fun. I would like to add sound support and the ability to change versions without having to re-compile/re-link. Maybe one day :) Problems: There is an issue with the VAX version where keypresses seem to disappear. I haven't had a chance to really look into this because it's so close to the Freeware submission date (other things have come up). There is no sound other than PC Speaker emulation using XBell(). If some one wants to write a VAX or MMOV driver (or both) that would be good. I haven't got any sound on any of my Alphas. I did try to get the Multia going, but the MMOV server crashes with an access violation everytime I try to access the device. The virtual address is 4 (from memory), this might mean something to someone. If you are one such someone contact me, I wouldn't mind knowing what is going on. As far as I know this still doesn't work with the Oxygen card. If someone wants to either fix this or let me know what is going on, so I can fix it, it would be much appreciated. Misc: The glob() and globfree() come from the GNV source for the make utility. They have been modified slightly so they can exist on their own and run on VAX. Support: This was/is a lunchtime/Friday afternoon project. I don't know how quickly I will be able to respond to problems, etc. but I will try to answer any queries (provided I'm not repeating what's in this document). Just remember that I have work, a life and my own projects to work on also. Supported graphics: The following graphics cards have been tested and are known to work with Wolfenstein 3D: ATI Mach64 (PB2GA-FA/FB)............not tested, but should work (I did DOOM with this card) Powerstorm 3D30 (PBXGB-AA)..........use with -noshm 9FX Motion 331 (PB2GA-JC/JD)........use with -noshm (JA/JB should work) 21030 (Multia/UBD TGA adapter)......works completely LCSPX 8-plane (54-21795-01).........work no problems ELSA GLoria Synergy (PBXGK-BB)......use with -noshm The above list should be correct, if there is one you would like to add, or something is incorrect then contact me at the address below. Comments, problems, etc: Tim Sneddon tesneddon (at) bigpond.com +++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_2:[X10MON]FREEWARE_README.TXT;1 +++++++++++++++++++++++++++++++++++++++++++++++ X10_MONITOR, SOFTWARE, Monitor and Control X-10 and Serial Interface Devices X10_MONITOR and companion application X10_TIMER comprise a powerful, flexible system for monitoring and controlling X-10 and other types of real-time control devices employing a serial port interface from your OpenVMS system. Functional diagram: User Interface | +------------+ V +-------------+ | |-> Input mailbox --> | | <---> Terminal | X10_TIMER | | X10_MONITOR | Serial | Process | | Process | Port | (optional) |<- Output mailbox <-- | | (Built-in +------------+ +-------------+ or LAT) ^ | +----------+ | | [Rdb] | +---------->| X10MONDB |<-----> User Interface | Database | |(optional)| +----------+ Major components: - X10_MONITOR is a "message switch" application run in the context of a detached process. It handles the routing of commands and messages between two mailbox devices and a user-defined terminal port (built-in or LAT). The monitor can operate without the timer component and is easily customized for multiple applications. - Optional component X10_TIMER also runs in the context of a detached process. At a user-defined interval it queries an Oracle Rdb rela- tional database for scheduled events. Selected events are sent to X10_MONITOR's input mailbox for routing. The Timer's secondary func- tion is to log timestamped message activity to a database table for user interface querying and reporting. Current status for each module is maintained based on controller message activity. - Supplemental programs for interacting with the monitor, defining the database, populating database tables, generating scheduled events, testing, startup and shutdown, etc., are included in this package. Modules are written in C, COBOL, DCL and SQL. They are a good example of employing many OpenVMS Run-Time Library and System Service routines, ASTs, etc. to handle intermittent real-time monitoring and control. A cross- reference list can be found in the README.TXT file. Refer also to the documentation file and program source code for additional information. The author of all modules in the X10_MONITOR package is: Jason Brady Lynnwood, Washington USA jr_brady@earthlink.net Programs were written and tested on an Alphaserver 300 4/266 running OpenVMS AXP 7.2, Compaq C 6.0-001, Compaq COBOL 5.5 and Oracle Rdb 7.0-4. ++++++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_2:[XPDF-2_02]FREEWARE_README.TXT;1 ++++++++++++++++++++++++++++++++++++++++++++++++++ Xpdf202, Graphics, Display/process Adobe PDF files Package contents The Xpdf distribution actually contains seven programs: Xpdf This is the actual Xwindows viewer program and therefore the most visible part of the distribution. pdffonts Pdffonts lists the fonts used in a Portable Document Format (PDF) file along with various information for each font. pdfimages Pdfimages saves images from a Portable Document Format (PDF) file as Portable Pixmap (PPM), Portable Bitmap (PBM), or JPEG files. pdfinfo Pdfinfo prints the contents of the "Info" dictionary (plus some other useful information) from a Portable Document Format (PDF) file. pdftopbm Pdftopbm converts Portable Document Format (PDF) files to black-and-white image files in Portable Bitmap (PBM) format. pdftops As the name implies, this filter converts a PDF document to a PS file suitable for printing. Graphics elements are preserved by this filter. pdftotext This program extracts the text portions of a PDF document and saves them to a plain ASCII file. Useful when working via slow lines. Building vms_make.com makes some effort to check the compiler installation. If it complains about a missing C++ compiler chances are very good, that actually you don't have one installed. Note that C++ is an entirely seperate product from C, so having a C compiler installed on your system (which is also neccessary) does in no way imply that you also have C++. If you're not sure contact your system manager or drop me a note and we'll try to sort out things together. Parameters vms_make.com takes up to three parameters: 1.Configuration settings a4 Use european A4 as the default paper size. no_text_select Disable text selections in Xpdf opi_support Compile Xpdf with support for the Open Prepress Interface (OPI) 2.Compiler detection In case you want to override the automatic compiler detection specify either DECC or GCC as the second parameter, e.g. @vms_make "" GCC 3.Global configuration file Since version 0.93 Xpdf supports a global configuration file, which can be used to provide meaningfull default settings for all users. This is by default decw$system_defaults:xpdfrc.dat on OpenVMS, but may be overriden during compile time using the third parameter to the build procedure, e.g @vms_make "" "" sys$manager:xpdfrc.dat Sample invocation of the script @vms_make a4,opi_support "" External libraries Xpdf uses external libraries for some of its functions. These are supported via the driver file VMSLIB.DAT. The libraries currently used by Xpdf are: T1lib Font rasterizer library used to display rotated texts (e.g. in tables). The main reason why one actually needs t1lib support for Xpdf on OpenVMS is to correctly render rotated strings. While this is supported by some Xservers (e.g. XFree on Linux), it is not supported natively on OpenVMS (at least up to Motif 1.2.5), so one has to resort to using t1lib to add this capability. As a bon t1lib also should improve the quality of the display by using antialiasing. xpm Enable Xpm support for Xpdf in icons. For this to work properly you have to make sure that the Xpm includes are found in your X11 path. Freetype2 Library to process embeded fonts in PDF documents. Libpaper This library adds support for various paper formats to Xpdf. Decryption?! Many documents use compressed PDF, which need the decryption routines to be rendered. Since version 0.91 these are part of the base distribution, so no further patches are required as it was the case with earlier versions. National Language Support Xpdf may be extended with files describing character mappings for various different encodings (like e.g the ISO series, BIG-5 etc.). These can be downloaded separatly and the location of the files needs to be added to your .xpdfrc file. To facilitate this for OpenVMS users I did write a short DCL procedure, which will turn the files provided for the purpose on Unix systems into one which can be used on OpenVMS. The procedure can be found as mk-xpdfrc.com. Xresources Xpdf doesn't use an own Xresource file but relies on the Xresource information it gets from the Xserver. To set values for this process you can change decw$xdefaults.dat in your Xresource directory. Changes in this file only take effect after the next restart of the server. For experimenting with different settings one is better off using Xrdb, which allows to load new values for a running Xserver. If you do use t1lib with Xpdf you need to set one Xresource for each of the 14 well-known PDF fonts. An example for these settings can be found in xpdf-font.txt. In case you don't have the needed fonts already on your system (they are e.g. part of Grace), you can get a copy of my t1lib font collection in file t1fonts.zip. Example Just in case you don't have a PDF document handy to check how Xpdf is working, you can fetch a copy of the VMS book from this server, which contains a short history of the OpenVMS operating system issued by Digital. In case you did build a version with Freetype support you might want to use this PDF file which does contain numerous TrueType Fonts. If it does display correctly your copy of Xpdf is working fine. Currently open issues The following issues were reported by OpenVMS users of Xpdf. They are acknowledged by the author of Xpdf and should be resolved during the next couple of maintenance releases During startup of Xpdf the message Warning: Cannot convert string "-*-times-medium-r-normal--16-*-*-*-*-*-iso8859-1" to type FontStruct is displayed This message can be safely ignored. This particular font is used only inside of the "About" window of Xpdf. It will be replaced in there by a default font. The display of PDF documents is not affected at all by this. The solution will make the font settable via an Xresource. The same behaviour can be observed on Linux systems. Slow rendering of of extremely fine patterned areas If a document contains extremely fine patterned areas (which most probably will look like solid color areas in the result), Xpdf might appear to loop, i.e. using an inordinate amount of time to render the document. If you are patient enough it will be shown in the end though. Documents known to be affected by this are recent editons of Shannon knows HPC. Most probably the solution will involve cacheing the pattern in memory instead of calculating it over and over again. The same behaviour can be observed on Linux systems. Only print to file supported Currently Xpdf only can be used to save a PDF file as postscript, which subsequently can be printed via DCL. There is no support for direct printing. Adding this is not entirely trivial, since the print setup under Unix relies on a pipe to whatever print filter is used, which does not lend itself easily to an equivalent under OpenVMS. Still the print system is supposed to be redesigned and there might be an opportunity to get better support there. The latest version of the OpenVMS port of Xpdf should always be accessible via http://www.decus.de:8080/www/vms/sw/xpdf.htmlx +++++++++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_2:[XPDF-2_02PL1]FREEWARE_README.TXT;1 +++++++++++++++++++++++++++++++++++++++++++++++++++++ XPDF202PL1, UTILITIES, X-Windows based viewer for PDF files This is XPDF V2.02pl1. This packages contains the source code necessary to build the following programs: XPDF - displays Portable Document Files (PDF) (sometimes called Adobe Acrobat files) on an X-Windows display. Can also print PDF files by converting them to postscript and sending them to a postscript printer. PDFFONTS - displays information about the fonts referenced in a PDF file. PDFIMAGES - saves images from a PDF file as Portable Pixmap (PPM), Portable Bitmap (PBM), or JPEG files. PDFINFO - prints the contents of the 'Info' dictionary (plus some other useful information) from a PDF file. PDFTOPBM - converts PDF files to black-and-white image files in Portable Bitmap (PBM) format. PDFTOPS - converts PDF files to PostScript so they can be printed. PDFTOTXT - converts PDF files to plain text. You will need the following tools in order to unpack and build this package: UNZIP (you must use the -V switch when unzipping) DEC C compiler DEC C++ compiler Either MMS or MMK. If you do not have all of these tools you will need to get and install them before you can build XPDF. This package includes all the other packages necessary to build XPDF. You must build the other packages first and then build XPDF. Instructions are as follows (note that all directory references are relative to the directory where you unpack the kit): First, unpack the distribution kit: $ unzip XPDF-2_02PL1.ZIP Then, build as follows: FREETYPE $ Set Default to [.FREETYPE-2_1_3] $ MMS (or MMK if you have that, instead). T1LIB $ Set Default to [.T1LIB-1_3] $ @CONFIGURE $ @MAKE $! $! N.B. T1LIB includes a standalone executable, called XGLYPH, that $! is used to view the glyphs from a font file. This program $! requires XAW3D, which I have not included here. You will get a $! note indicating that XGLYPH will not be built. You may ignore $! this. XGLYPH is not used by XPDF. LIBXPM $ Set Default to [.XPM-3_4K.LIB] $ @MAKE (will invoke either MMK or MMS) XPDF $ Set Default to [.XPDF-2_02PL1] $ @VMS_MAKE OPI_SUPPORT (see VMS_MAKE.COM for other options) $! $! After this build procedure completes, all of the executables will $! be found in [.XPDF-2_02PL1.XPDF]. I have included all of the object files, object libraries, and executables that resulted when I built this on my system. These executables were linked on an Alpha running OpenVMS V7.3-1 and DECWindows V1.2-6. If your version of VMS is recent enough, these may work for you without having to rebuild the entire kit. Also, every file I had to edit to make this package work and build correctly can be found as filename;2 (filename;1 is the original version). Mark Berryman ++++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_2:[XSTAR]FREEWARE_README.TXT;2 ++++++++++++++++++++++++++++++++++++++++++++++ XStar, Motif_Toys, N-body gravity simulation Installation To build the Xstar program just execute make_vms.com. This will figure out compiler and Xwindows settings for you. No user settable options are currently implemented. Commands While running Xstar the following key strokes are recognized as commands: Key Action === ========================================== d create a collapsar (gravity well) e erase trails + add a star to the system - delete a star from the system n get a new set of stars m toggle multi-color mode r toggle rainbow mode p pause the updating. Press p again to start ^L redraw the screen q quitInstallation The latest version of the OpenVMS port of the XStar server should always be accessible via http://www.decus.de:8080/www/vms/sw/xstar.htmlx +++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_2:[YENC]FREEWARE_README.TXT;2 +++++++++++++++++++++++++++++++++++++++++++++ Ydecoder, Graphics, Yenc decoder for VMS +++++++++++++++++++++++++++++++++++++++++++++ DISK$FREEWARE60_2:[ZLIB]FREEWARE_README.TXT;3 +++++++++++++++++++++++++++++++++++++++++++++ ZLIB, Utilities, Compression and Decompression Library © Tous droits réservés 2003 Jean-François PIÉRONNE Zlib V1.1.4 Zlib is a compression/decompression library used by several software packages, including MySQL and Python. By default, the installation procedure installs this library package in the SYS$COMMON:[LIBZ] directory. To install it in another directory, dev:[dir], use the /DESTINATION parameter of the PRODUCT command. In this case, the library package will be installed in the dev:[dir.LIBZ] directory. Installation 1. Make the directory which holds the ZIP file your default directory 2. Extract the PCSI kit from the ZIP archive. $ UNZIP "-V" ZLIB-V0101-4-1 3. Install the Zlib package to your chosen destination. $ PRODUCT INSTALL zlib (default) or ... $ PRODUCT INSTALL zlib /DESTINATION=dev:[dir] 4. Finally, run the DCL procedure STARTUP.COM to define the necessary logicals. (You might want to add the relevant line to your SYSTARTUP_VMS.COM file.) $ @SYS$COMMON:[LIBZ]STARTUP (default) or ... $ @dev:[dir.LIBZ]:STARTUP