RSX/IAS SIG Tape Distribution - Spring 1989 =========================================== This is the RSX/IAS SIG Symposium Tape from the Spring 1989 DECUS Symposium at Atlanta. The tape contains material submitted by the user community for the tape at that meeting. The programs on this tape are from user submissions. The DECUS staff, the RSX & IAS SIG staffs, and DEC are all in complete ignorance of the contents of the tapes. No warranty of any kind is implied in the distribution of these tapes. The programs may or may not be well documented, they may or may not work, they may even crash your system. If you have a problem with the contents of the tape, contact the author of the program. Do not contact DECUS, DEC, or the RSX or IAS SIGs. The tape contains about 2000 files requiring 37,000 blocks of disk space. This will fit on a 2400 foot reel of tape in BRU format at 1600 BPI, and so is being distributed in this way. To simplify distribution and production, the tape is a single BRU container file followed (for the LUG distribution only) by several extra files. Directory [300,1] contains the files documenting the contents of the tape. The following files are present: RSX88BTPE.DOC contains an abstract of the contents of the tape by UIC. AAAREADME.89A contains a concatenated list of all the README files on the tape. RSX89ADIR.LIS contains a directory of all the files on the tape (BRU does not produce nice directories). This is a brief listing with UICs and filenames only for space reasons. SUBMIT.DOC contains guidelines for submissions to the RSX/IAS Sig Tape collection. This is MUST reading for everyone who desires to submit a program to the SIG tape. BEGIN89A.DOC has a copy of this text. UICSET89A.CMD contains the UFD commands to create all the needed UIC's on a device whose name is asked for in the command file. Edit it to match your needs before using BRU to extract the tape contents. A word of caution: under at least some circumstances, 11M V4.0 BRU's /UFD switch creates directories even when it doesn't put anything in them. Glenn C. Everhart RSX/IAS SIG Tape Copy Coordinator GE Aerospace Technology Operations GE Corp. Bldg. 100, Room U3040 230 Goddard Blvd. King of Prussia, PA 19406 215-354-7610 Everhart%Arisia.decnet@CRD.GE.Com Everhart@Arisia.GE.com ========> [005,001]AAAREADME.TXT;1 <======== [5,1] Readme.1st DECUS C "scratch" update ([5,*] directories) master document. This version is based on DECUS-C Kit from RSX SIG Tape Fall 85, including the updates from Spring 86 and 87 for I/D Space, RMS and DECnet. This area contains a full update to DECUS C system for enhanced functionality and compatibility with evolving C language standards. TOTALLY UNSUPPORTED (DON'T call the authors) but it is believed the complete kit is here. LOTS of tools and support for all OSs. To obtain a working C, you should look over the KIT.RNO file and others (redundant .DOC files have been deleted to make room for the whole kit) and included command files. Basically you need to assemble the compiler and assembler and then if the .OLB files here are inadequate you need to compile the runtime system. The tools here are well worth using even in VMS native mode VAX11C, for which build files also exist. This version has some enhanced compatibility with U**x C in its syntax and the preprocessor has been enhanced to relieve many restrictions of older versions. Some work on floating math has supposedly been done, but its degree of cleanliness is not known. Since none of the authors has time to spend weeks putting the code in supportable order, this submission is TOTALLY unsupported but is made available to allow you to at least have something to try. It is believed to work but testing has been quite spotty. If you find something that is broken and you can fix it, please do so and submit it to a later SIG tape. Original directory names follow with UICs on tape: [5,100] Ready built libraries for RSX11M-Plus V4.0 [5,1] Top level directory [decusc] [5,2] BIN directory (.H files, libraries, and VAX .EXE's) [5,3] COMMAND directory. Documents, more .H files, some other stuff. [5,4] COMP directory. Sources for AS and CC, compiler and assembler. Also a readily built CC.TSK and AS.TSK for RSX11M-Plus V4.0. [5,5] CPP directory. C preprocessor. [5,6] CROSS directory. A variety of cross assemblers. [5,7] CTEXLIB directory. Part of P/OS version of DECUS C. Access to menus, etc. [5,10] DECNETRSX directory. RSX DECnet support. [5,11] FONT directory. Part of P/OS C kit, fonts for bitmapped display. [5,12] LEX directory. A lexical scanner generator for DECUS C [5,13] LIBC directory. C library items. [5,14] MISC directory. Odds and ends, some quite useful, but not part of the compiler proper. Includes a speller, file compress utility, and more. [5,15] OTSCOM directory. Common OTS routines for C runtime. [5,16] OTSIO directory. I/O areas for C OTS. [5,17] PML directory. Portable Math Library (in C) [5,20] POS directory. Executable DECUS C for P/OS with libraries. [5,21] POSCTEX directory. Later version (?) of CTEXLIB for POS C. [5,22] RMSPCLIB directory. RMS I/O support items. Used for POS flavor of DECUS C. [5,23] RSTSLB directory. RSTS (and RT) I/O support items for runtime. [5,24] RSXLIB directory. RSX I/O support items for runtime. [5,25] SPRSX directory. file I/O-free support for tiny "standalone" C programs. Also support's R. Denny's special ACP. [5,26] TOOLS directory. LOTS and LOTS of tools no programmer should be without. Also buildable with VAX11C. Tom Shinal has contributed a super enhanced GREP also. [5,27] USEFUL directory. Odds and ends that may be handy compiling C code from other systems. [5,30] VAXLIB directory. VMS I/O components for runtime. [5,31] COMP directory subset. Pre-built executables for RSX11M. [5,32] ZZDECUSC directory. H files needed (in a directory named ZZDECUSC) for P/OS DECUS C. The [333,*] UIC's contain two set of useful DECnet tasks. [333,102] - Contains a DECnet remote file access package. Uses a special remote DECnet object, not FAL. [333,103] - REX - a remote execution package. Allows submitting command on a remote node without losing the use of the local node. ========> [306,100]AAAREADME.TXT;1 <======== Submissions from Brad Castalia Planning & Systems IDAEIM Corp. Computer Imaging & Analysis 712 N. Seventh Ave. Tucson, Arizona 85705 602-628 7737 These are "miscellaneous" items used at IDAEIM, mostly in libraries. Each file has ample commenting on its purpose/use, but the pieces below are especially comment-worthy: TTP - Tape Transfer Program. This is a generic tape handling program modified from one taken from an old RSX SIG tape. ARG - Argument Processing. This collection has DOARGS as its root. It provides a standard means of processing the argument vector provided to main by the C language run-time system (or any string which is to be treated as command arguments). The user provides a module that defines a list of paired keywords-function names, and the definitions of the functions of course. For each string in an argument vector (i.e., array of string pointers) that matches a keyword (according to a default or user supplied matching function) the ARGS module will direct program control to the corresponding function. These "argument handlers" become objects allowing dynamic modification of any keyword, associated function, or swapping out of entire lists (which may be considered as command environments). An associated module - ARGVALUES - will filldata vectors (of any specified type) with values found in suffix qualifiers to an argument string. Syntax checking (corresponding to the specified data type) and error reporting handles are included. This module is called on by the user's argument handler functions. Associated with this category are several string manipulation functions that find common use. Whenever an argument string begins with the '@' character the remainder of the argument string is taken as the name of a file containing command lines (this provides another standard command line argument qualifier character like the '<' and '>' characters that automatically redirect stdin and stdout to the files named by the remainder of the string). This command line indirection capability is in another module. INDIRECT - Indirect command files. This module is provided the name of a file and a pointer to a function that processes an argument vector. The file is opened and command lines (string records) are read (into a dynamically allocated buffer) and parsed into an argument vector (by ARGPARSE) which is passed on to the specified function for processing. INDIRECT provides for recursion (obviously DOARGS is going to pass INDIRECT a pointer to itself) by putting the interrupted command file (if one is currently being processed) into a LIFO queue for resumption when the new indirect command file has finished. This allows for virtually unlimited nested indirect command files. This file queueing capability is in another module. QFILE - file processing LIFO queue. An open file is suspended and a named file is put in its place. The open file's location pointer and name are placed in a dynamically allocated LIFO queue and the named file is used to reopen the currently open file. The user maintains the queue pointer (several may be managed simultaneously). Queued files may be dequeued, in which the last file queued (if any) is used to reopen the currently open file specified and the file location pointer is set to its previous value (allowing input to resume from its suspended point). RECQUEUE - Record queue file management. A doubly linked queue of arbitrary (but uniform) size data records may be created or reaccessed in a named file. Records may be queued (FIFO), inserted (at any location), dequeued, or removed (from any location) with the file's memory pool being allocated and expanded as needed by the module. Since record queues are expected to be shared by multiple tasks (for job spooling, for example) the module only hoolds a file open while it needs it, and will wait and try again (with a default or globally set delay and retry count) if the file is busy. A standalone record queue manager is provided. KEYBRD - keyboard character trap. Sets up a trap for an unsolicited character (only one is buffered in this version) from the keyboard (a FORTRAN version refers to logical I/O unit 5, a C version to unit 1, and both default to TI:) without ingerfering with normal solicited input. The trapped character, if any, may be tested at a synchronous point in the program. ========> [350,300]AAAREADME.TXT;1 <======== RSX11-M Mailbox Driver -- Patterned after VSDRV (see Fall '81 DECUS RSXSIG symposium tape, [300,120] submission by John Osudar) and the VAX/VMS Mailbox driver, this driver performs virtually the same functions with a new twist. The driver maintains a set of named queues/mailboxes similar to VS: but rather than copying data buffers destined between tasks to its internal buffer pool, MB: re-links the I/O packets themselves and copies data directly from the writing task's virtual address space to the target task's address space. This can represent a significant performance improvement for large QIOs and is much more immune to running out of "pool" because the data is maintained in the requesting task's address space. There are, however, attendent disadvantages to this scheme. By necessity, write-QIOs NEVER complete until a corresponding read-QIO (or cancel) operation is issued for the mailbox, and tasks with outstanding I/O cannot be checkpointed or shuffled. Assemble and build the driver by executing MBDRV.CMD; RSXMC.MAC and RSX11M.STB must reside in current system UIC. Consult the comments in MBDRV.MAC and documentation in MBDRV.RNO for a full description of the driver's design, function codes, etc. Several test programs are also included to exercise various features of MBDRV; IOPAGE, TIMER and MBTSTn modules are required for the test programs. Paul R. Sorenson AEP/Engineering Computer Support Center 1 Riverside Plaza Columbus, OH 43215 ========> [355,221]AAAREADME.TXT;4 <======== This subdirectory contains routines from the Long Island Local Users' Group. This directory contains an assembler routine for RSX-11M/M+ that retrieves a radix-50 list of active tasks associated with the invoking terminal and a program that aborts them all. The list excludes cli's. Submitted by Mitch Nelson of Brookhaven National Laboratory. ========> [356,040]AAAREADME.TXT;2 <======== Kermit - 11 This area contains Kermit-11, recently updated by Brian Nelson. Also present are latest executables of MSDOS (IBM PC) and VMS Kermits. Updated 14-JUN-1985 09:22 Brian Nelson Kermit-11 Edit history: K11CMD.MAC Kermit-11 Installation: K11INS.DOC Kermit-11 Documentation: K11HLP.HLP (no separate user manual) Kermit-11 Files: K11FIL.DOC Please note that while Kermit-11 uses RMS11 for all versions (RT11 excluded) you do not need RMS on your system unless you opt to use the versions linked to RMSRES (K11.TSK for RSTS/E and K11POS.TSK for M/M+ and P/OS). For further information, please read K11INS.DOC