========> [VMSLT98B.BULLETIN]AAAREADME.TXT;1 <======== BULLETIN Bulletin is a utility which is a message repository, permitting use like VMS MAIL, but where VMS MAIL is one to one, Bulletin is one to many. Messages are organized into messages and folders so a user can search the folders at will. Messages can be set to expire after some number of days, or can be permanent. The BULLETIN utility is a utility to display messages to users when logging in. Users are notified of messages only once. They're not forced into reading them every time they log in. Submitting and reading messages is easy to do via a utility similar to the VMS MAIL utility. Privileged users can create messages which are displayed in full. (known as SYSTEM messages). Non-privileged users may be able to create non-SYSTEM messages (unless your system manager has disabled the feature), but only topics are displayed at login. Folders can be created so that messages pertaining to a single topic can be placed together. Folders can be made private so that reading and writing is limited to only users or groups who are granted access. Alternatively, folders can be made semi-private in that everyone is allowed to read them but write access is limited. When new non-system messages are displayed, an optional feature which a user may enable will cause BULLETIN to ask whether the user wishes to read the new bulletins. The user can then read the messages (with the ability to write any of the messages to a file). A user can enable the notification and prompting of new messages feature on a folder per folder basis. However, the exception is messages submitted to the default GENERAL folder. Users are always notified at login of new bulletins in this folder, but can disable the prompting. This is to give non-privileged users some ability to force a notification of an important message. Messages have expiration dates and times, and are deleted automatically. Expiration dates and times can be specified in absolute or delta notation. Privileged users can specify "SHUTDOWN" messages, i.e. messages that get deleted after a system shutdown has occurred. "PERMANENT" messages can also be created which never expire. Privileged users can broadcast their message (to either all users or all terminals). A user can select, on a folder per folder basis, to have a message broadcast to their terminal immediately notifying them when a new message has been added. An optional "Bulletin Board" feature allows messages to be created by users of other systems connected via networks. A username can be assigned to a folder, and any mail sent to that user is converted to messages and stored in that folder. This feature originally was designed to duplicate the message board feature that exists on some Arpanet sites. However, with the addition of folders, another possible use is to assign an Arpanet mailing list to a folder. For example, one could have an INFOVAX folder associated with an INFOVAX username, and have INFO-VAX mail sent to INFOVAX. Users could then read the mailing Page 2 list in that folder, rather than having INFO-VAX sent to each user. Optionally, the input for the bulletin board can be directed to be taken from any source other than VMS MAIL. This might be useful if incoming mail is stored in a different place other than VMS MAIL. Messages can be either sent to a file, to a print queue, or mailed to another user. BULLETIN can also act a USENET NEWS reader if the appropriate network software is available to interact with. See the installation notes for more detail. 2 Parameters The parameter following the BULLETIN command is interpreted as the folder name which should be selected, rather than the default GENERAL folder. If the parameter is specified with quotes ("parameter"), the parameter is interpreted as an interactive BULLETIN command, i.e. commands which are entered once BULLETIN is executed, i.e. "DIRECTORY", "ADD", etc. BULLETIN will exit immediately after entering that command, rather than prompting for another command. More than one command can be specified by separating the commands with semi-colons, i.e. "SELECT DATA;DIR". If the last command ends with a semi-colon, then BULLETIN will not exit, but instead will enter the standard interactive mode and prompt the user for commands. ========> [VMSLT98B.CMU]AAAREADME.TXT;1 <======== This area holds CMU TCP/IP. This is a TCP/IP stack for VMS on VAX only which is freely available. ========> [VMSLT98B.FRACTAL]AAAREADME.TXT;1 <======== This area contains over 100 images of fractal art. Useless but often beautiful. Display with XView or the like. ========> [VMSLT98B.FREEWARE4]AAAREADME.TXT;2 <======== This area contains interesting new things off the V4 freeware CD. Includes Bliss, Macro64, LD virtualdisk, SDL, and a few more. See the freeware_Readme.txt files in each area. Directory DFA2:[VLT98B.FW4] AAAREADME.TXT;1 BLISS.DIR;1 CD60.DIR;1 DCC.DIR;1 DCLDIET.DIR;1 DFU.DIR;1 DQD.DIR;1 DSKMAP.DIR;1 GSPLIT.DIR;1 HOTJOT.DIR;1 LD.DIR;1 MAC64.DIR;1 RZD.DIR;1 SCAN.DIR;1 SCH.DIR;1 SDL.DIR;1 TTI.DIR;1 VDE.DIR;1 Total of 18 files. ========> [VMSLT98B.GCC]AAAREADME.TXT;1 <======== Enclosed is Gnu C for VMS, both Vax and Alpha flavors. ========> [VMSLT98B.GCE98B]AAAREADME.TXT;1 <======== SendPackack is a simple program that sends IO$_PACKACK to an arbitrary device. Use it where you want to, for example, access disks with packages like vddriver without actually mounting them. The packack action will cause disks to become ready if the underlying drivers can support them. VDdriver - definitive versions of vddriver for vax and alpha VMS. VDdriver emulates a disk using a contiguous file or section of blocks on a real disk. The versions here have the necessary hack to get them to work with DEC volume shadowing also. ZRGK2048HOST -"host process" for zrdriver (see older sigtapes) which has io$_diagnose code to allow it to talk to 2048 byte block devices. Written for use with CDs that don't have 512 byte blocks. (zrdisk.zip is present to supply zrdriver for those not having it.) ========> [VMSLT98B.GNUSOFTWARE]AAAREADME.TXT;2 <======== Gnu Software This directory contains updates to Gnu software releases since the S98 sigtapes. A2PS-4_12.TGZ;1 AAAREADME.TXT;1 AEGIS-3_9-RM.PS-GZ;1 AEGIS-3_9-UG.PS-GZ;1 AEGIS-3_9.TGZ;1 AUTOCONF-2_13.TGZ;1 AUTOMAKE-1_4.TAR-GZ;1 AVL-1_2_4.TGZ;1 BASH-2_03.TGZ;1 BISON-1_27.TGZ;1 CFENGINE-1_4_14A.TAR-GZ;1 CFENGINE-1_4_17.TGZ;1 CVS-1_10_4.TGZ;2 ELECTRIC-5_4G4.TAR-GZ;1 FILES.TXT;1 FILEUTILS-4_0.TGZ;1 FREEDOS-0_2BETA.TGZ;1 GCC.;1 GFORTH-4_0.TGZ;1 GHOSTSCRIPT-5_10.TAR-GZ;1 GHOSTSCRIPT-5_10JPEG.TGZ;1 GHOSTSCRIPT-5_10LIBPNG.TGZ;1 GHOSTSCRIPT-5_10ZLIB.TGZ;1 GHOSTSCRIPT-FONTS-STD-5_10.TGZ;1 GLEEM-1_0.TGZ;1 GLIBC-2.1-README;1 GLIBC-2_1.TAR-GZ;1 GLIBCP-2_1.TAR-GZ;1 GNUMAKE-VMS-BUILD-HOW.TXT;1 GNUMERIC-0_8.TGZ;1 GREG-0_6.TGZ;1 GREP-2_3.TGZ;1 GZIP-1_2_4A.TGZ;1 LSH-SNAPSHOT-1999-01-08.TGZ;1 LYNX-2_8_1.TGZ;1 MC-4-5_7.TAR-GZ;1 METAHTML-5_09.TGZ;1 MOTTI-2_0.TGZ;1 QUEUE-1_11.TAR-GZ;1 QUEUE.ANN;1 READLINE-4_0.TGZ;1 SCREEN-3_7_6.TGZ;1 TALKFILTERS-1_0.TGZ;1 WN.README;1 ========> [VMSLT98B.GREGG]AAAREADME.TXT;2 <======== 12/1/98 Dear Glenn, I'm embarking on my second DECUS membership after a hiatus of several years, and in the interim I've written several DEC utilities that might be useful to DECUS members. The code, included on the 3.5" disk enclosed, is tested and well documented. Briefly described, the modules are: 1) STRGSUB.COM searches across directories or disks for string xxxxxx and replaces it with string yyyyyy. BSTRGSUB.COM works in con- junction with STRGSUB, freeing up the user's terminal during lengthy search-and-replace jobs. 2) MYMENU.COM allows user to configure a menu system with his/her most frequently used commands, activating them by typing a one or two digit number. 3) TRIMTO8.COM works thru a designated directory tree, and as required con- vert file names and extensions to a DOS-compatible 8 and 3 respectively. If these areas aren't currently covered by DECUS shareware and you think enough of the stuff to use it, whyn't you drop me a line? I haven't got an e-mailbox, but the phone number is perfectly serviceable: (708) 773-2700 x-280. Best... Tom Gregg @ Switchcraft Corp. ========> [VMSLT98B.IVIE]AAAREADME.TXT;2 <======== Things from Roger Ivie BECOME First, a little clarification: I am not an expert on BECOME. The only portions of BECOME I know about are the bits given to me by the local system manager so that I could modify them for Alpha/VMS. I have no documentation for BECOME. Rumor has it the front end is supposed to be in Pascal. All I know is I was given FORTRAN code to drive it. In short, no I don't know enough about BECOME to repackage it for Alpha/VMS. At the request of a local Alpha/VMS system manager, I have taken a look at porting the ubiquitious BECOME utility to Alpha/VMS. It seems to work. Here is my version of BECOME_SUBROUTINES.MAR, modified for Alpha/VMS. The FORTRAN code seems to work as-is. You may also want to take look at BUILD_BECOME.COM, which contains the command lines to compile and link BECOME under Alpha/VMS. By request, here's the FORTRAN code. Since I've never actually used BECOME, I don't know what's shipped with it. I suppose I ought to FTP on over to ftp.wku.edu someday and check it out (hey, I just dork with the VMS kernel; any administration I do is purely incidental). When you compile the MACRO code, you will see a couple of informational messages. They just tell you the MACRO compiler could not guarantee the alignment of the items in question and had to generate more code to access them. The warnings on the FORTRAN code are similar. LPDRIVER Greetings! This page contains a description of and links to my device driver for Alpha/VMS that allows you to monitor a terminal. The device driver inserts itself between the port and class driver of a terminal line and logs all characters sent to the terminal line into an internal buffer. A program with CMKRNL can read the buffer. The device driver does have a number of limitations. Among them are: Only one device may be monitored at any given time. DECnet RT devices may not be monitored. These devices do not use the normal port/class driver arrangement, so this device driver cannot insert itself into those lines. You can only watch. You cannot cannot interact with the line you are monitoring. Although I am working on some of these limitations, I cannot at the moment predict when an updated version of the driver will be available. Installation of the device driver consists of these steps: Copying the source files from the distribution medium. Compiling the device driver. Loading the device driver. Copying the Device Driver The device driver installation package contains five files: LPDRIVER.MAR is the source code for the device driver. LPDRIVER.OPT is a LINK options file for the device driver. LPBUILD.COM is a DCL command file that compiles and links the device driver. LPLOAD.COM is a DCL command file that loads the device driver. BIGBOOGER.FOR is a sample application using the device driver. Page 2 Copy the files into a suitable working directory. Compiling the Device Driver You must compile and link the device driver before it can be installed into the operating system. Do this by executing the LPBUILD command procedure. The compiler will generate many informational messages that should be ignored. The build procedure looks something like this: $ set proc/priv=all $ @lpbuild 1040$: MOVQ @Ucb$L_SvaPte(R5),@Ucb$L_WindowSvaPte(R5) ^ %AMAC-I-QUADMEMREF, quadword memory references... at line number 438 in file USERS:[IVIE.USU20.... BRB 1010$ ^ %AMAC-I-BRANCHBET, branch between routines from... at line number 433 in file USERS:[IVIE.USU20.... BNEQ 1040$ ^ %AMAC-I-BRANCHBET, branch between routines... at line number 415 in file USERS:[IVIE.USU20.... BRB 1100$ ^ %AMAC-I-BRANCHBET, branch between routines from... at line number 416 in file USERS:[IVIE.USU20... $ The build procedure copies the device driver into SYS$LOADABLE_IMAGES:. After building the device driver, you should see a file named SYS$LPDRIVER.EXE in SYS$LOADABLE_IMAGES:. Loading the Device Driver After the device driver has been assembled and linked, it must be installed into the operating system using SYSMAN. This is done by the LPLOAD command procedure. LPLOAD loads the device driver and assigns it the name LPA0:. After loading the device driver, you should see a device named LPA0: that is online, like this: $ @LPLOAD $ SHOW DEVICE LP Device Device Error Name Status Count LPA0: Online 0 $ To the casual observer, LPA0: looks like a line printer: $ SHOW DEVICE/FULL LPA0: Printer LPA0:, device type LA11, is online, record-oriented device, carriage control. Error count 0 Operations completed... Owner process "" Owner UIC... Owner process ID 00000000 Dev Prot S:RWLP,... Reference count 0 Default buffer size... Page width 80 Page Length... No Carriage_return Formfeed Uppercase No Passall No Wrap No Printall Page 3 No Fallback No Tab No Truncate $ Note that a normal user can see the owner UIC and process name of a process connected to LPA0:. If you wish to hide your snooping from normal users, you may want to change your process name to something innocuous (for example, SYMB0003) when you use the device driver. Using the Device Driver The device driver is used by a front-end program. It understands only the $QIO commands necessary to do its job: IO$SenseMode, IO$SenseChar, IO$ConIntRead, IO$ConIntWrite, IO$ReadVBlk, IO$ReadLBlk, and IO$ReadPBlk. IO$SenseMode and IO$SenseChar These functions are supported to allow the device driver to put up the facade of being a line printer. They work in the manner described by the I/O Users Guide for the line printer driver. IO$ConIntRead This function is used to attach the device driver to a terminal line that is to be monitored. It takes the following parameters: P1: The name of the controller to which the driver is to be attached. This is passed by value and contains a .ASCIC specification of the three-character controller name. For example, to attach to a line named TCA1:, P1 would be passed (in FORTRAN) as %val( '41435403'X ). P2: The unit number of the line to which the driver is to be attached. This is passed by value. For example, to attach to a line named TCA1:, P2 would be passed (in FORTRAN) as %val( 1 ). The remaining QIO parameters are not used. This QIO may return the following error codes: SS$IllIoFunc: The process issuing the $QIO does not have the CMKRNL privilege. SS$BadParam: P1 does not appear to be a .ASCIC specification of a three-letter controller name. SS$TermNetDev: The specified terminal line appears to be a DECnet remote terminal. Only local terminals, TCP/IP pseudoterminals, and DECwindows pseudoterminals may be monitored. SS$DevOffLine: The specified terminal line is marked offline. It is probably a template device used to create pseudoterminals as TCP/IP or DECwindows terminals are needed. SS$IvDevNam: The specified device is not a terminal. SS$NoSuchDev: There is no device in the system with the specified name. Once connected to the terminal line, all data sent to the terminal is copied into a local buffer. The Read $QIOs may be used to extract this data. When the buffer fills up, data is not copied until some of the data in the buffer is read. However, data flowing to the terminal is not stopped; the data sent while the buffer is full is lost. IO$ConIntWrite This function causes the driver to disconnect itself from any terminal line to which it may be connected. No parameters are required (the driver knows to which line it is connected). The following error codes may be generated: SS$IllIoFunc: The process issuing the $QIO does not have the CMKRNL privilege. SS$Normal: Either the device driver has disconnected itself or it was not connected to a terminal. IO$ReadVBlk, IO$ReadLBlk, and IO$ReadPBlk Once the device driver has been connected to a terminal line, all data sent to the terminal line is copied into a buffer in the device driver. These functions read data from that buffer. Page 4 If there is data in the buffer, the $QIO reads the data that is available and then terminates. If there is no data in the buffer, the $QIO will wait for data to arrive in the buffer before reading that data and terminating. When the buffer becomes full, the device driver stops logging data in the buffer until some of the data has been read, making room for new data. While the buffer is full, data can still flow to the terminal, it is just not logged; that data is lost. The Read $QIOs take the following parameters: P1: The address of the buffer that will receive the data. P2: The maximum number of bytes that may be read by this $QIO. The $QIO terminates when either the buffer has become empty or this many bytes have been read. The Read $QIOs may return the following status: SS$IllIoFunc: The process issuing the $QIO does not have the CMKRNL privilege. SS$Normal: The $QIO has been completed. On completion, the high-order word of the first longword of the I/O Status Block indicates the number of bytes that were read. This limits transfers to 64KBytes. The Example Application BIGBOOGER is an example front end for the device driver. It allows the user to connect to any terminal line and display the data sent to that terminal line. To compile BIGBOOGER, you need the FORTRAN compiler. Do this: $ FORTRAN BIGBOOGER $ LINK BIGBOOGER $ When run, BIGBOOGER prompts for the controller name and unit number of the device that you want to monitor. It then connects to that device and continuously displays what is in the device driver's buffer. You exit BIGBOOGER by typing Y. To monitor the terminal TCA1, do this: $ RUN BIGBOOGER Controller (e.g. TXA)? TCA Unit? 1 PXFS Here is some software I wrote several years ago to create EPROMs for the Epson Geneva. I don't remember much of the software and it is not commented (except for the state diagrams I have tucked away in a binder somewhere in my office), so you're pretty much on your own with this one. The software is written in Turbo Pascal in two parts: pxrom.pas is the main file, and pxfs.pas is a set of utilities included by pxrom.pas. To compile the software, load pxrom.pas into Turbo Pascal and tell it to compile the thing. The software understands three single-character commands: I initializes the EPROM image. The EPROM image is stored in a file named ROM.DAT. The software will ask you for the size of the EPROM in KBytes. I have used this software to generate both 32KB EPROMs for the internal ROM sockets and 128KB EPROMs for the ROM socket in the memory wedge. C copies a file from your CP/M system into the ROM image. It will ask for a file name, read the file, and store it in the ROM image under the same name. Control-Z exits the software. I have also included a sample EPROM created with the software. This EPROM has Page 5 three files: pxrom.pas, pxfs.pas, and kermit.com. Kermit.com is a copy of generic CP/M KERMIT from my DECmate II. I've used it with success on the Geneva, but you may have to try a few port settings (I don't recall whether the Geneva wants "SET PORT TTY:" or "SET PORT UC1:" to get out the serial port. At any rate, this copy of KERMIT is pre-configured to work correctly on the DECmate (which I believe uses UC1:) and the default will be wrong for the Geneva). Be aware that Generic CP/M KERMIT does not transfer binary files, so you'll have to UUENCODE them or whatever before sending them across to your Geneva. For those of you without Turbo Pascal, I've also made a binary copy of the software. To get my machine to download it correctly to you, I've given it an extenstion of .GIF; remember to change the extension after you download it. The binary copy was compiled with a Max memory address of 0x8000. I don't know if the software will actually run in that little memory (it doesn't do any dynamic memory allocation), so good luck. ========> [VMSLT98B.JED]AAAREADME.TXT;1 <======== JED is a cross between EDT and Emacs, runs with an EDT like keypad on many systems including various unix ones and windows. MOST is a handy text view and search program. ========> [VMSLT98B.LINUX]AAAREADME.TXT;1 <======== This area contains a number of images used in booting Linux on Alpha hardware. See enclosed text or html files for full information. Full Linux is of course not included (too big). ========> [VMSLT98B.MOELLER]AAAREADME.TXT;1 <======== wjm 12-feb-1999: KA420-ROM-PATCH V1.0 These are some PATCHes to the boot ROMs of various KA420/KA430-based VAXen (Vs3100/xx, uVAX3100/10). Some of them have actually been tried out already ... Background: Boot-ROMs for Vs3100 (and early uVAX3100 models) traditionally do not allow for SCSI system (boot) disks >1 GB, because they exclusively use 6-byte SCSI READ and WRITE commands. This patch to ROM code (always the same, only with some offsets adapted to the different ROM & VMB versions) provides for 10-byte SCSI commands in case the LBN to be accessed is .ge. 2^21 . So it ought to allow booting and dumping from/to larger disks. In order to make room for the new code, I sacrifice the very last portion of the debug code contained within the boot driver (i.e. the code that writes out a screen titled 'DKBTDRIVER halting ...' and then HALTs). That last portion would dump 6 words of the VAX stack; since that's where SP points in case of a HALT anyway, no information is actually lost. And btw, I didn't see that screen displayed yet - I know it from TVBTDRIVER & MKBTDRIVER, which halt this way when you try to boot from e.g. MUA0 or MKA100, and SCSI unit 1 is in fact a disk drive ... Files: KA42AROM13W.COM is for Vs3100/30 & /40 "KA42-A V1.3". KA42AROM16W.COM is for Vs3100/30 & /40 "KA42-A V1.6". KA43AROM12W1.COM and KA43AROM12W2.COM, both applying the same patches, are for Vs3100/76 "KA43-A V1.2". KA41AROM14W1.COM and KA41AROM14W2.COM, also both having the same effect, are for uVAX 3100/10 "KA41-A V1.4". KA42BROM13W2.COM is for Vs3100/38 & /48 "KA42-B V1.3" (this patch happens to be identical to KA41AROM14W2). KA4ROM_READ.EXE reads the boot ROM from within VMS. Needs PFNMAP privilege. Usage: $ MCR dev:[dir]KA4ROM_READ outputfile KA4ROM_CKSUM.EXE checks, and optionally 'fixes', the checksum(s) in a disk copy of the boot ROM (in the format produced by KA4ROM_READ). KA4ROM_SPLIT.EXE splits a disk copy into two files that might be useful for actually 'burning' new ROMs. [.TOOLS] has sources and .OBJ for the KA4ROM_* utilities. Typically, there's no need to re-built the .EXE which I've Page 2 found to work on VMS V5.3 and higher. 'Upgrade' procedure (No support, no warranty, no guarantees!): (1) Find out boot ROM version (so far I *believe* this to be uniquely specified by the 'short' id ala "KA42-A V1.3" which is displayed at power-on, and by ">>> T 50" (?)). Note that there's also a longer id, which can be had from ">>> SHOW VER"; the latter does *not* have the same "Vm.n" in it. (2) Copy boot ROM to disk, using KA4ROM_READ.EXE . Best to stick to the naming convention exemplified by the PATCH command files ... (3) If the ROM version from (1) is one of the 'known' ones, apply the corresponding 'patch command file' via $ PATCH @KA%%%ROM%%W* (Note that the command files provided 'know' the file names: input is KA%%%ROM%%.BIN , output is KA%%%ROM%%W.BIN ). If you have an 'unknown' ROM version, look at KA41AROM14W1.COM , and see if it can be adapted by fixing up the offsets in the lines marked "???". (I did so for KA41AROM14 and KA43AROM12). Once you have figured out the offsets to VMBVERS and DKBTDRIVER, you may wish to plug them into one of the *W or *W2 files which then might work also, as a sort of 'proof' that your DKBTDRIVER is in fact identical to a know one ...). There are some text strings that should be easy to locate in a full DUMP of the ROM contents ... Sure I'd like to know what you find out in this step! Do *not* proceed if fixing "???" lines doesn't work out completely! You boot ROM may support booting from big SCSI disks already, or have an 'unknown' (to me) boot driver ... (4) Once the PATCH has been successfully applied, run KA4ROM_CKSUM on the *output* file, and answer 'y' to the question posed ... This will update the ROM checksums. (5) Somehow 'burn a new boot ROM'. In the Vs3100s that I have looked at, this is actually 2 chips, each 64k*16 bit. The one closer to the 'front' (i.e. memory connector side of the board) has the low 16 bits, the other one ('rear', i.e. ethernet connector) has the high 16 bits of each 32-bit longword. Both 27C210[A] and 27C1024 chips have been seen, even as a mixed pair, so apparently they're all the same ... (6) Tell me about your experiences ... Wolfgang J. Moeller, GWDG, D-37077 Goettingen, F.R.Germany, ========> [VMSLT98B.MOREAU]AAAREADME.TXT;2 <======== These are new items mostly for DECwindows from P. Moreau. See BRIEF.DESCRIPTION for info. AAAREADME.TXT;1 ANGBAND-280.ZIP;1 ASCLOCK-10.ZIP;1 BRIEF.DESCRIPTION;2 CTWM-33.ZIP;3 DCLOCK.ZIP;1 DIFF-PATCH.COM;1 FREETYPE_11.ZIP;1 GIMP-100-VMS-BETA.ZIP;1 ISHIDO.ZIP;1 JESTER-10.ZIP;1 JETSET10.ZIP;1 KP_093.ZIP;2 LAOLA011.ZIP;1 LEX.ZIP;1 MIRRORMAGIC-13.ZIP;1 MISC1.ZIP;1 MISC2.ZIP;1 MPEG2V12.ZIP;1 MPEGGB.TXT;1 MPEG_AUDIO_ENCODE_DIST10.ZIP;1 MPG123-059O.ZIP;1 MXRN-DXRN-618-32.ZIP;1 NEDIT-402.ZIP;1 NEDIT-50-BIN.ZIP;2 NEDIT-50-SOURCE.ZIP;2 NIGHTHAWK.ZIP;2 ONEKO.ZIP;2 PERL5_005_02.TGZ;1 PNG098.ZIP;1 README.DECRYPTION;1 SND_21.ZIP;1 SOX.ZIP;1 SPACEOUT.ZIP;2 SPIDER11.ZIP;1 SUNCLOCK.ZIP;1 THREDEE.ZIP;1 TIMIDITYXX-121.ZIP;1 VMS-GIMP-ANN.TXT;1 VTBOOK.ZIP;1 XBATTLE4.ZIP;2 XBLACKJACK21.ZIP;1 XBLOCKBUSTER103.ZIP;2 XCE.ZIP;2 XCLIPBOARD.ZIP;1 XCLOCK.ZIP;1 XEYES.ZIP;2 XFIG32-BIN.ZIP;1 XFIG32-SOURCE.ZIP;2 XJEWEL-1_6.ZIP;1 XLABY-201.ZIP;1 XLOCKMORE-412.ZIP;1 XMCD_23.ZIP;1 XMFM.ZIP;2 XPAINT-253.ZIP;1 XPDF-07A.SPEC;1 XPDF-0_7A-9-SRC.RPM;1 XPDF-0_7A-DECR.PATCH;1 XPDF-0_7A.TGZ;1 XPDF-0_80.ZIP;1 XRDB.ZIP;2 XSCREENSAVER-234.ZIP;1 XSET.ZIP;2 XSPREAD21.ZIP;1 XTERM021.ZIP;1 XV-310A2-VMS.ZIP;1 XV-310A2_AXP_EXE.ZIP;1 YACC.ZIP;1 ========> [VMSLT98B.NET98B]AAAREADME.TXT;2 <======== This area has miscellany from the net not otherwise well categorized. VNC is a remote operation system, CDrecord is a system that allows one to make CDs on VMS. Many more files are present. 2000-D1.ZIP;1 A2H300AXP.ZIP;1 A2H300VAX.ZIP;1 A2HVMS.TXT;1 AAAREADME.TXT;1 ABI-0_3_1-SRC.ZIP;1 ABS-SRC-0_5.TGZ;1 AE9ENID.EXE;1 ANALOG196.ZIP;1 ARPWATCH-2_1A3_TAR.Z;1 ARPWATCH_TAR.Z;1 AS200-100KETHER.TXT;1 ASPELL-_27_1_TAR.GZ;1 AUTODIAL.ZIP;1 B64-DECODE-SRC.TXT;1 BFA97114.ZIP;1 BFA97114W.ZIP;1 BIG-SPACE-PREFIXES.TXT;1 BLAT182_B.ZIP;1 BOCH-INSTALL.TXT;1 BOCHLIC.TXT;1 BOCHS-990127D.TGZ;1 BOCHS-FREEDOS.TXT;1 BOCHS-FREEDOS_IMG.GZ;1 BOCHS-WINDOWS95.HTML;1 BOOT.GZ;1 BOOT45-1.GZ;1 BOOT45.GZ;1 BPF_TAR.Z;1 BRR11BIN.EXE;1 BZIP2-0_1PL2_TAR.GZ;1 BZIP2-0_9_0C_TAR.GZ;1 C-BOUND.TXT;1 CALENDAR-HISTORY.TXT;1 CAQ59GLOBALSNOOP_2.TXT;1 CAQ63MADSEN.TXT;1 CD-BOOT-ARCANA.TXT;1 CDRECORD-1_8A18.TGZ;1 CDRECORD-VMS-MOD.DIR;1 CD_BOOT.TXT;1 CGISCAN2.C;1 CHEOPS-0_56_TAR.GZ;1 CHEOPS-0_58.TGZ;1 CHEOPS.TXT;1 CHOP-SYS$QUEUE_MANAGER_QMAN$JOURNAL.TXT;1 CIRCLE30BPL14.ZIP;1 CIRCLEMUD1.TXT;1 CIRCLEMUD2.TXT;1 CIRCLEMUD3.TXT;1 CIRCLEMUD_CONTENTS.TXT;1 CLASSIC.GZ;1 CLEANING-PAGEFILE-SRC.TXT;1 CLSC45.GZ;1 CODA-5_0_1.TGZ;1 CONNECT_USR_SPORTSTER-TO-VMS.TXT;1 COREL.TXT;1 CRAZYTIME.TXT;1 CRYPTOGRAM-021599.TXT;1 DCLLREADME.TXT;1 DCL_LITE_LINUX_190.TGZ;1 DCL_REQUEST_SRC.TXT;1 DCPS-VIA-LAT-HOW.TXT;1 DE200.TXT;1 DEC-SOC.TXT;1 DEC-SYS-OPT-CATALOG.TXT;1 DECNET-FOR-LINUX-ANN.TXT;1 DECTERM-X-RES.TXT;1 DFU.ZIP;1 DIAGNOSE-LIC.TXT;1 DISK-INFO-LOC.TXT;1 DKDRIVER-CUSTOM.TXT;1 DN.DIR;1 DNK035.TGZ;1 DNNTP.ZIP;1 DNPROGS-1.RPM;1 DNPROGS-1_03.TGZ;1 DNPROGS-1_1.TGZ;1 DTJS03PF.PDF;1 DTJS03SC.TXT;1 DU-4-BUFF-OVERFLOWS.TXT;1 ECHELON1.TXT;1 ETHER-CONFIG-RULES.TXT;1 EXAMPLE-C-SYS$TRNLNM.TXT;1 FETCHMAIL-4_7_6.TGZ;1 FICODE42.ZIP;1 FISH005.ZIP;2 FREEWARE-CD_FIX.TXT;1 FULLMOON-NAMES.TXT;1 GETTIMEOFDAY-SRC.TXT;1 GIFMERGE.ZIP;1 GLIB-1_1_13.TGZ;1 GLIB-1_1_14_TAR.GZ;2 GLOBAL_SEARCH_AND_REPLACE.COM;1 GMP-2_0_2_TAR.GZ;2 GNU-EMAC.TXT;1 GNU-EMACS-MAILRD-FIXTXT.TXT;1 GODEEP-06.TXT;1 GODEEP-08.TXT;1 GODEEP-10.TXT;1 GTKP-1_1_14_TAR.GZ;2 GTKX-1_0_1.ZIP;1 HACKDLL.ZIP;1 HACKDLLSRC.ZIP;1 HEAP-OVERFLOWS.TXT;1 HIJACK-TCP-HUNT-1-ANN.TXT;1 HOWTO-FIND-OVERFLOWS-EXAMPLE.TXT;1 HPING.C;1 HPING.TXT;1 HTTPTUNNEL-1_0.TGZ;1 HUNT-1_0.TGZ;1 HUNT-1_0BIN.TGZ;1 IDEA.C;1 IMAGEMAGICK-4_1_8.TGZ;1 INITRD.GZ;1 IRC.ZIP;1 IRC176A_ALPHA_UCX.EXE;1 IRC176_UCX.EXE;1 ISFILEDIRECTORY-SRC.TXT;2 IUPOP3_V2_0-4.ZIP;1 JAPHAR-0_07.TGZ;1 JOSHUA-COMPILER-AND-OS.ZIP;1 KEYHIT.FOR;1 LIBNET_0_9.TGZ;1 LIBPCAP-0_4A6_TAR.Z;1 LIBPCAP_TAR.Z;1 LINUX-DCL-POINTER.TXT;1 LITECLUE.ZIP;1 LNE20001.EXE;1 LNE20002.EXE;1 LOGI.ZIP;1 MAKE-TPU-FORGET-MOUSE.TXT;1 MANDSTEG.ZIP;1 MBOX.ZIP;1 MCRYPT-2_1_3.TAR-GZ;1 MCRYPT-2_1_5.TGZ;2 MFC-BUILD.TGZ;1 MFD.ZIP;1 MFVIEWER.TGZ;1 MINDBRIG.ZIP;1 MMJ-PINOUTS.TXT;1 MOODSS-5_6.TGZ;1 MPEG3PLAY-096.ZIP;1 MYSQL-3_22_16.TGZ;1 N64.TXT;1 NDFP0543-PATCH-A.ZIP;1 NDFP0543A.README;1 NDFP0543A.ZIP;1 NESSUS-990201.TGZ;2 NET-RAWIP-0_3.TGZ;1 NFR-VUL.TXT;1 NMAP-2_08.TGZ;1 NMAP-2_12.TGZ;1 NMH_0_27.TGZ;1 NOTCH-FILTER.TXT;1 NSLOOKUP-MSDOS.EXE;1 NT-DRIVERS-UNDER-VMS-PROB.TXT;1 NTFILELOAD.TXT;1 NTFS20R.ZIP;1 ODS2-PC-VMS-FILE-READER.ZIP;1 Page 2 ODS5-CHARS.TXT;1 OMNIORB.TXT;1 OMNIORB_2_7_0.ZIP;1 OPENLDAP-RELEASE.TGZ;2 OSKIT-0_97_TAR.GZ;1 PACMAN.ZIP;1 PDSOFTWARE.TXT;1 PERF_METER-2-4.ZIP;1 PGP-COMPILE-PROBLEM-FIX.TXT;1 PGP4PINE_1_47.TGZ;1 PGP_DESKTOP_SECURITY_6_0_2.ZIP;1 PINE_EXE-VAX.EXE;1 PI_AGM_SRC.GZ;1 PK2K-0012-ANN.TXT;1 PK2K-ANN.TXT;1 PK2K-BOOT_0010.ZIP;1 PK2K_0012-BIN.ZIP;1 PK2K_0012-DIF.ZIP;1 PK2K_0012-SRC.ZIP;1 PL-3-SRCUNIX.TGZ;1 PL-HTMLMANUAL.GZ;1 POPREQUEST.ZIP;1 PRIV-PROPAGATION-ERR.TXT;2 PRIVFREE.ZIP;1 PW500AU-POINTS.TXT;1 PW500AU.TXT;1 PWS-A-VMS.TXT;1 RADIUS116.ZIP;1 RADIUS201.ZIP;1 RADIUS_VMS.PORTING;1 RE-SUN-FILSYS.TXT;1 RE-VMS-CLUSTER-GUTZ.TXT;2 READKEYCHAR-SRC.TXT;1 README-VNC-VMS.TXT;1 README.SCSI-IF;1 READMEV.TXT;1 REMOVE-DCPS-GRAYBARS-HOW.TXT;1 REMPRTSMB_012.1_OF_1;1 REMPRTSMB_012.README;1 RTV53SWRE.TAR_Z;1 SAINT-1_3_4.TGZ;1 SAMBA-TO-PRINTER.TXT;1 SCRAMDISKV202C.ZIP;1 SDDRIVESRC.ZIP;1 SDISK202G.ZIP;1 SDWIN32SRC.ZIP;1 SECFINANCE.TXT;1 SECURE23.ZIP;1 SOCKETSHR.ZIP;1 SSH-AAAREADME.RELEASE;1 SSH-AAAREADME.TXT;1 SSH-LOCS.TXT;1 SSH-PARAMETER_FILE.TXT;1 SSHDOC.HTML;1 SSHINSTALL.TXT;1 SSH_SERVER_013.ZIP;1 SSLEAY-0_9_0A-RL-P19990221-1.TAR;1 SSLEAY-0_9_0B.TGZ;1 STAR_LKEY.ASP;1 STRINGS-SRC.TXT;1 TAIL.ZIP;1 TAPE-READ-FIXUP-3PARTY.TXT;1 TCPDUMP_TAR.Z;1 TCP_WRAPPERS_7_6_TAR.TAR;1 TD_101-NTWS-CRYDSK.ZIP;1 TERMINAL.TXT;1 TGD1_2C.ZIP;1 TGIF-4_0_13.TGZ;1 TRINUX.ZIP;1 TRINUXTOOLS.TXT;1 TWIN-WIN32-CAVEAT.TXT;1 UCX-PRINT-1-DEF.TXT;1 ULTRAHLE.ZIP;1 UVAX-HALT-STATE.TXT;1 VDNKE109.EXE;1 VFE.ZIP;1 VMS-BIGOT-DEFINED.TXT;1 VMS-FAQ1.TXT;1 VMS-FAQ2.TXT;1 VMS-FAQ3.TXT;1 VMS-MUD-LOC-ANN.TXT;1 VMS-SSH-LOCS.TXT;1 VMSTARU9033_SRC.ZIP;1 VMS_CIRCLE30BPL14.ZIP;1 VNC-3-3_2-DOCS.ZIP;1 VNC-3-3_2-SRCUNX.ZIP;1 VNC-3-JAVA.ZIP;1 VNC-3_3_1R12_ALPHA_WIN32.ZIP;1 VNC-3_3_1R16_ALPHA_WIN32.ZIP;1 VNC-3_3_1R19_ALPHASRC_WIN32.ZIP;1 VNC-3_3_1R19_ALPHA_WIN32.ZIP;1 VNC-3_3_2R3_DOC.TGZ;1 VNC-3_3_2R3_UNIXSRC.TGZ;1 VNC-3_3_2_ALPHA_DSP.ZIP;1 VNC-3_3_2_ALPHA_WIN32.ZIP;1 VNC-3_3_2_ALPHA_WINSRC.ZIP;1 VNC-ENCRYPT.DIFF-GZ;1 VNC-START.TXT;1 VNC-WITH-SSL.TXT;1 VNC-ZLIB.TXT;1 VNCFAQ.TXT;1 VNCREAD.TXT;1 VNCVIEWER-ALPHAVMS071.ZIP;2 VNCVIEWER-VAXVMS071.ZIP;2 VNCZLIB-DIFF.GZ;1 VWS-NOTES.TXT;1 W95-READ-PHYS-DSK.TXT;1 WALSH.ZIP;1 WHAT-HAPPENED-AT-ETRADE.TXT;1 WHATAMI_COM_SRC.TXT;1 WHOIS.ZIP;1 WINDOWS98_BOF.TXT;1 WINE-990131.TGZ;1 WINUAE086R6.EXE;1 WINWHOISI.ZIP;1 WU-FTPD-2_4_2-BETA-18-VR13.TGZ;1 WWWCOUNT2_3.ZIP;1 WWWTHREADS-3.TGZ;1 WWW_TRINUX_ORG.TXT;1 X11R6-SETUP.TXT;1 X2VNC-1_0.TAR-GZ;1 X2VNC.HTML;1 XDELTA-1_0_0_TAR.GZ;1 XNTP3_4V_VMS.ZIP;1 XTERM.ZIP;1 XTET42-2_21.TGZ;1 ZMODEM.ZIP;1 ========> [VMSLT98B.NT]AAAREADME.TXT;2 <======== This area contains files useful for programming or to some extent using Windows NT, with sources where possible. AAAREADME.TXT;1 ALL-ACCESS.EXE;1 ALL-ACCESS_C.HTM;1 AUTOLOG.ZIP;2 AUTOSRC.ZIP;2 BLUESAVE.TXT;2 BSOD.ZIP;2 CACHESET.TXT;2 CACHESRC.ZIP;2 CCTEST.ZIP;1 CONTIG.TXT;2 CONTIG.ZIP;2 CPUMON.TXT;2 CPUMON.ZIP;2 DBGV98.ZIP;2 DBGVIEW.TXT;2 DISKMON.TXT;2 DISKMON.ZIP;2 DLLFIX.ZIP;1 DLLFIXSRC.ZIP;1 DRIVER-CALLING-USER-CODE.TXT;1 ENUMERATINGTHREADS.TXT;1 FAT32-RO.EXE;2 FAT32.TXT;2 FILEMON.TXT;2 FILESRC.ZIP;2 FIXING-UNEXPECTED-NT-PAGE-WRTS.TXT;2 GTADM3.TXT;1 HACKDLL.ZIP;1 HACKDLLSRC.ZIP;1 HOSTNAME.ZIP;2 IIS4-PASSWD-ATTACK.TXT;2 IRP-ALLOC-QUEST.TXT;1 KBDUS.ZIP;2 KERNPROF.EXE;1 LEGION.ZIP;1 LISTDLLS.EXE;2 LISTDLLS.TXT;2 LOADER.ASP;1 MISC.TXT;2 NETSTATP.ZIP;2 NEWSID.TXT;2 NT-INHERENT-POL-WEAK.TXT;1 NT-KNL-WAIT-HOW.TXT;1 NT-PWD-IN-MEM-SRC.TXT;1 NT-READ-PHY-BOOT.TXT;1 NT-RECOV-LOST-PWD.TXT;1 NT-TSK-TERM-HOW.TXT;1 NT-USER-CALL-FROM-KNL-COMMENT.TXT;1 NT-USER-PWD-IN-MEM.TXT;1 NT-WRITING-QUERY.TXT;1 NTFROB.TXT;2 NTFROB.ZIP;2 NTFS20.TXT;2 NTFS20R.ZIP;2 NTFSFLP.TXT;2 NTFSFLP.ZIP;2 NTFSINFO.TXT;2 NTFSINFO.ZIP;1 NTFSISRC.ZIP;2 NTHANDLE.TXT;2 NTHANDLE.ZIP;2 NTHANDLEEX.ZIP;2 NTHANDLEX.TXT;2 NTPMON.TXT;2 NTPMON.ZIP;2 NTSAFE-MAIN.TXT;1 NTTOOLS.TXT;1 NTTOOLS.ZIP;1 PAGEDFRG.TXT;2 PAGEDFRG.ZIP;2 PINGER.ZIP;1 PORTM98.ZIP;2 PORTMON.TXT;2 PORTMON.ZIP;1 RECOVER-NT-PASSWD-HOW.TXT;1 REGMON.TXT;2 REGSRC.ZIP;2 RE_NT_WR.TXT;1 SETUP-NTSAFE.EXE;1 SIDSRC.ZIP;2 SMPUT25T.ZIP;1 STRINGS.ZIP;2 SYNC.ZIP;2 TCPVIEW.TXT;2 TCPVIEW.ZIP;2 TIMER.TXT;1 TIMERTXT.TXT;1 UNDELETE.EXE;2 UNDELETE.TXT;2 UNDELSRC.ZIP;2 UNEXPECTED-PAGE-WRITES-ADVICE.TXT;2 UPTIME.ZIP;2 VOLID.ZIP;2 WINOBJ.TXT;2 WINOBJ.ZIP;2 WMEM.ZIP;1 ZWCREA-DIR-PROB.TXT;1 ZWCREADIR-HOWTOUSE.TXT;1 ========> [VMSLT98B.ODS2RD]AAAREADME.TXT;1 <======== ODS2 April '98 Say, what is this? ODS2 is a program to read VMS disk volumes written in ODS2 format. Why bother? Well sometimes it is convenient to see what is on a VMS CD, or copy files from VMS disk on another platform. Maybe in future it could be used as a basis for a PC Bookreader program? What other platforms? ODS2 is written in 'Standard C' with the intent that it can be compiled and run on non-VMS systems. However this requires a C compiler which has 32 bit 'int' types, 16 bit 'short' types, and 8 bit 'char'. The current version does no special 'endian' handling so it can only be run on systems which are little-endian like the VAX. Fortunately that inludes Intel... What else? Some operating system support is also required to read an absolute disk sector from the target disk. This is NOT as easy as it sounds. I do not currently have sufficient documentation to set this up for as many platforms as I would like!! However I have modules to read disks under VMS (easy!), floppies and CD under OS2 (!), and floppy drives under Windows 95 and NT. I would hope to read CDs under Windows 95 and NT soon. If you can contribute in this area I would be grateful! What can it do? Basically ODS2 provides cut down DIRECTORY, COPY and SEARCH commands for VMS volumes on non-VMS systems. These can be used to find out what is on a VMS volume, and copy files onto the local file sytem. What file types? Basically ODS2 can only deal with sequential files. I do not have information on how indexed file types are constructed, and relative files are of limited interest. What about volume sets? ODS2 does contain support for multi-volume sets. However there is no checking that the correct volumes have been specified and error handling is very fragile. You should ensure that you specify volume set mount commands correctly! What about bugs? Who knows! This code has been tested for hours (!) by a single developer/user on one workstation. Contrast this to the VMS filesystem which has had many many developers, millions of users, and has run on about 500,000 systems over the last 20 years. I would hope to fix some limitations and provide better Page 2 error handling fairly soon, perhaps even put some comments into the code! Maybe the next version will have fewer bugs? It is free? Yeap! It is provided 'as is' to help people in the VMS community. However there is NO SUPPORT! I will try to fix any reported problems, but as I really only get to work on it while the kids are at Scouts on Monday nights, fixes happen slowly! Can I use the code? Yeap! You can use and modify the code provided that you leave the name of the original author in any modified source. I would also appreciate being sent any coding or enhancements where possible for my own use. What is the status of ODS2? This is the first beta release. I am not particularly happy with it in a number of areas - but this preliminary release may generate useful feedback and testing, and maybe even be useful to others in current form. However if you are tempted to use this version for file transfer, please do your own testing first! This program may not be able to handle your volumes and files properly!!! Is more work happening? Yes! I find the program very useful moving stuff from my VAXstation to my PC. If I could write ODS2 volumes it would be just as useful in the other direction! Can I see a command sample? Sure:- $ RUN ODS2 ODS2 b1.1 Beta Test Version $> mount dka300:,dka500: %MOUNT-I-MOUNTED, Volume FOX1 mounted on dka300: %MOUNT-I-MOUNTED, Volume FOX2 mounted on dka500: $> direct/file DKA300:[*...] Directory DKA300:[PNANKERVIS] 3MONTH.LOWUSE;1 (51,20,2) ACCTEST.COM;1 (137,4,1) ACCTEST.EXE;1 (53,4,2) ..... $> copy dka300:[pnankervis.f11]*.c * COPY-I-COPIED 213 records to ACCESS.C .... $> show time 24-MAR-1998 20:15:23.5 $> exit Who would do this? Me! Don't ask why. If you have suggestions or want to know more then mail me at paulnank@au1.ibm.com Thanks for listening! Page 3 Paul Nankervis ========> [VMSLT98B.PERL]AAAREADME.TXT;1 <======== This is a recent Perl release for VMS. Note the standard Perl release builds on VMS now; this is a version off the VMS experimental system at UofPenna. ========> [VMSLT98B.PINE]AAAREADME.TXT;1 <======== This is the Pine editor and mail reading/writing system, VMS version. A patch to close a security hole is present also. ========> [VMSLT98B.POVRAY]AAAREADME.TXT;1 <======== Glen Martin's Unofficial POV-Ray Page: Status of OpenVMS Port All files mentioned herein are in this directory. The latest version of POV-Ray currently available for OpenVMS is v2.0 (available on the OpenVMS Freeware CD as well as all web sites offering FTP mirrors of the CD. Due to the wealth of new features available in v3.0, including improved halo and luminosity support, as well as TrueType font manipulation, I took it upon myself to attempt to port v3.0 to OpenVMS. I successfully ported the LIBPNG and ZLIB portions of the UNIX distribution. These libraries build without modification under OpenVMS, although the ZLIB test utility MINIGZIP.EXE will not build without the presence of the XVSUTILS library, which I have not installed. This failure is of no consequence to the overall build. However, when it came time to tackle the meat of the program itself, I ran into several brick walls, resulting in the port being placed on the back burner while I took care of more pressing duties. To kick off the New Year, I decided to revisit this porting effort. Luck was with me, for while searching the web with AltaVista, I came across a set of instructions for building POV-Ray v3.0x under OpenVMS/Alpha written by Carl D. Perkins of Texas A&M University. Following the instructions, I was able to build v3.02 with nary a problem (see errata below). The instructions are worthwhile reading even for those not needing POV-Ray, for they contain many excellent insights into the challenges of building supposedly "portable" code under OpenVMS. Mr. Perkins' instructions apply to the Unix source code obtainable from the POV-Ray web site: * Unix Source Code (povuni_s.tgz - 731kB) * Documentation and Sample Scene Files (povuni_d.tgz - 1.3 MB) I have also been contacted by a Mr. Magnus Toneby, who has also managed to port POV-Ray v3.x to OpenVMS, VAX and Alpha. It seems that the code changes needed to get around the VAX's lack of IEEE floating point support are not that major. Furthermore, the "#while" bug described below by Mr. Perkins was not evident in Mr. Toneby's build of v3.02, although Mr. Toneby is not certain whether this is due to bug fixes made in the v3.02 incremental release or whether it is due to modification made during the porting process. (I have not yet verified whether or not my build of v3.02 exhibits this bug.) Mr. Toneby has set up a web page on his porting efforts with a link to a zip file containing various MMS config files and diffs of modified files. (Of interest to me on another front, it seems that a friend of his has successfully ported the GIMP (GNU Image Manipulation Program) to OpenVMS, something which I have been trying to accomplish for the last few weeks.) Also, Fred Kleinsorge, the DIGITAL employee who did the v2.0 port which appears on the OpenVMS Freeware CD, has contacted me for more info on these efforts. He has expressed an interest in seeing to it that the next Freeware CD includes the latest version of everyone's favorite Page 2 ray-tracer... ------------------------------------------------------------------------ Errata to Mr. Perkins' Instructions I encountered two minor errors in the instructions, which may be due to the fact that two incremental maintenance releases of POV-Ray have been issued since the instructions were written. * Instructions for fixing a typo in GIFDECOD.C (incorrectly referred to in the instructions as GIFDECODE.C) may be ignored, as the typo has been corrected in the current distribution. * The CC statement for what Mr. Perkins refers to as "Group 4, object types and whatnot" omits BCYL.C in the list of modules to be compiled. I emailed Mr. Perkins to thank him for producing the build instructions, as well as to point out the errors noted above. He replied with the following message, confirming the noted errata, as well as a few addional problems, particularly a potentially serious problem related to file formats. Read on: ------------------------------------------------------------------------ Additional Errata from Carl Perkins I have looked at this. You are correct - both of the things you mention are due to the newer version (except the mistake of saying GIFDECODE.C when it is really GIFDECOD.C). There was no BCYL.C file in 3.00a - I assume this is a new feature that has some objects' bounding object be a cylinder in addition to the box and sphere that used to be used. I also have some additional information that may prove useful, including a bit of errata to my instructions and some things I didn't notice until after I sent in my porting notes (I told Andreas Dilger I'd update them, but that was about a year and a half ago and I havn't sent him an update yet). I will append my file of additional info to the end of this message. --- Carl In sections 1B and 2B I say you can delete more than you really can. Andreas Dilger pointed out this problem: "Actually, you still need to keep zconf.h and pngconf.h in addition to the zlib.h and png.h files." There is a bit of a problem that is not addressed in the current version of the instructions on building POV for OpenVMS. Specifically, in two cases the input file type has to be one of the stream record formats rather than the default variable length record format. These cases are for POV files, and include files, that use the "#while" loop statement and for any TrueType font Page 3 files. There are various ways to get this to work, but I think this is the easiest way to do the conversion of existing files. You can put the following in a file, say STREAM_LF.FDL. SYSTEM SOURCE "OpenVMS" FILE ORGANIZATION sequential RECORD BLOCK_SPAN yes CARRIAGE_CONTROL carriage_return FORMAT stream_LF SIZE 0 Then you do a $ CONVERT/FDL=STREAM_LF.FDL INPUT.FILE OUTPUT.FILE (I'd just use the same output file name as the input file and the PURGE the old version away.) I believe you can change the "stream_LF" on the FORMAT line to be "stream" or "stream_CR" if you have a need to do so - this changes the record delimiter from a line feed (LF) to a CR LF pair (CR = carriage return) or just a CR. This may be necessary if you transport your POV files to other platforms that want a record delimiter other than an LF. If you are wondering, the source of this problem is that the while looping uses an fseek() function to get back to the line in the file with the #while on it when the #end at the end of the loop is hit. Yes, the lines in the file are actually read back in every time the loop is processed. This fseek() wants to use the actual byte offset in the file at which the #while is located. Unfortunately this function only has byte-level access when using the various stream record formats, the default variable length record format only gives it the ability to position to the start of each record. To prevent needing to convert the record format in the future, I'd suggest making a template file with any things in it that you usually put in your POV files, then run the convert on it. In the future, when you create new files start by copying the template file rather than starting each from nothing. This will make them all be in the proper format so that you don't get hit by the while loop problem. All of the editors on VMS will preserve the record format (well, all of the ones I've used - EDT, EVE, and LSE) so editing the files isn't a problem once they are in the right format. Also, there was a bug in version 3.00a. I don't know if this is corrected in any of the newer versions. The bug turns of the Page 4 ability to use #declare statements after it encounters some types of statements including a color map, which is where ran into it. The parsing of some statements turns off the the parsing of #declare type statements. This is supposed to be turned back on after such a statement is done being parsed, but in one or more cases it fails to do so, causing all #declare statements fail to work until it encounters a statement type that turns off such processing and then correctly turns it back on when that statement is done being parsed. I had a while loop in a union which used a #declare to increment the counter controlling the loop. If you hit the bug, the declare is not allowed. The bug is in the PARSE.C file. If you check that file for the section starting with "CASE (COLOUR_MAP_TOKEN)" and that CASE has an "Ok_To_Declare = FALSE" at the start of it but has no corresponding "Ok_To_Declare = TRUE" at the end of that CASE then you have a version with the bug. The fix is to put an "Ok_To_Declare = TRUE" at the end of the "CASE (COLOUR_MAP_TOKEN)" section. Likewise this should be done at the end of any other section that sets it to FALSE. ------------------------------------------------------------------------ Return to Glen Martin's Unofficial POV-Ray Page ------------------------------------------------------------------------ This page was last updated on 22-JAN-1998. Send e-mail to glenmark@utxvms.cc.utexas.edu. ========> [VMSLT98B.SAFETY]AAAREADME.TXT;1 <======== The Safety app has appeared on older sigtapes. Since some of its functions can change process privs and the mechanisms changed for this in VMS 7.2/Alpha, this version has some (somewhat experimental) recompilations to support changes to PSBs instead of ARBs where appropriate. Note that privs etc. will only be touched in VMS 7.2 if the PSB (personna block) is the "natural" one, i.e., if the process has not changed personnas. This will apply to very nearly all processes and is done because the notion of changing a process' privileges where it has them in virtue of many personnas is not clearly defined. The other functions are unchanged. The sources presented on the older sigtapes have the functions in them, but they were conditioned out in VMS 7.1 and before on Alpha. ========> [VMSLT98B.SAMBA]AAAREADME.TXT;1 <======== Samba is a package permitting other OSs to network with MS networking such that a non-windows system can be a member or even a controller of a MS Windows domain. The code here is the latest Samba source. The VMS port is at the moment somewhat older and was on a prior sigtape. ========> [VMSLT98B.SEC]AAAREADME.TXT;2 <======== This area contains programs and articles related to computer security (or in some cases insecurity). This is done on the theory that security people need to know what attackers know. Some excellent tools and some threat scripts are present here. AAAREADME.TXT;1 ACTIVEX-SECBUG.TXT;1 ADMHACK.TGZ;1 ADMID.TGZ;1 ADMID.TXT;1 ADMPOP.C;1 ADMRSH.TGZ;1 ADMSCAN3.TGZ;1 ADMSMB.TGZ;1 ADMW0RM.TGZ;1 ANNOUNCE.C;1 APACHE_1_3_4.TGZ;1 AUTOBUSE-SNAP915639608_TAR.GZ;1 AXFR-0_5_2_TAR.GZ;1 BADWEB.CFG;1 BADWEB.DESC;1 BADWEB.NFR;1 BB-1_09A.TGZ;1 BB-1_09B_TAR.GZ;2 BBEEP010.ZIP;1 BEAZLY.ZIP;1 BIGPACKET.CFG;1 BIGPACKET.DESC;1 BIGPACKET.NFR;1 BO.CFG;1 BO.DESC;1 BO.NFR;1 BOOT.GZ;1 BREEZECOM.TXT;1 BROADSCAN05.C;1 CARD101B.ZIP;1 CARDCHECK.ZIP;1 CARDCHK.ZIP;1 CARDING3.DOC;1 CCC.ZIP;1 CCFORMAT.ZIP;1 CCMAKER.ZIP;1 CCNUM2.ZIP;1 CHROOTUID1_2_SHAR.Z;1 CISTRON-RADIUS-README.TXT;1 CISTRON-RADIUS-README_PROXY.TXT;1 CLASSIC.GZ;1 CMASTER4.ZIP;1 COLD-1_0_10.TGZ;1 COOKIEMONSTER.TXT;1 CRACKER-TOOLS.TXT;1 CRACKER.TXT;1 CRED.ZIP;1 CRYPTO-FREE.HTM;1 CRYPTO-FREE.TXT;1 CRYPTO30.ZIP;1 CWIZ.ZIP;1 C_MASTER.ZIP;1 DANTE-ALPHA_TAR.GZ;1 DES-SOLARIS_2_5_1.GZ;1 DMPPRG20.ZIP;1 DODI.ZIP;1 DOSBANKS.ZIP;1 DRPCSCAN.TGZ;1 DSH1.ZIP;1 DTK-DECEPTION_TOOLKIT$ALL_NET$DTK.TXT;1 DTK.TAR;1 DTK.TXT;1 DTK19981031.TXT;1 DTK19981107.HTML;1 DTK19981212.HTML;1 DTK19981212.TXT;1 EDUMP-1_5_TAR.GZ;1 ELGAMEL.EXE;1 EM.ZIP;1 ETHEREAL-0_5_0_TAR.GZ;1 ETHICS-10-COMMANDMENTS.TXT;1 EV6-PERF.HTM;2 EXCITE-11-SECBUGS.TXT;1 EXDUMP-0_1.TGZ;1 EXT_ARP_INSIDE.CFG;1 EXT_ARP_INSIDE.DESC;1 EXT_ARP_INSIDE.NFR;1 EXT_NET_INSIDE.CFG;1 EXT_NET_INSIDE.DESC;1 EXT_NET_INSIDE.NFR;1 FAKE-1_1_1.TGZ;1 FAKEBO-032.TGZ;2 FAKEBO-SHELL-EXPLOIT-SRC.TXT;1 FETCHMAIL-4_7_0.TGZ;1 FINGER.CFG;1 FINGER.DESC;1 FINGER.NFR;1 FISH005.ZIP;1 FISHU5004_SRC.ZIP;1 FN131W32.ZIP;1 FORENSICTOOLKIT.EXE;1 FORTIFY-1_3_0-UNIX-ALPHA.TGZ;1 FORTIFY-1_3_0-UNIX-X86.TGZ;1 FORTIFY.TXT;1 FSH-0_3_TAR.GZ;1 FTP-SCAN.C;1 FW-BACKD.TXT;1 GETADMIN3.TXT;1 GNUPG-0_9_4.TGZ;1 GNUPG-0_9_5.TGZ;1 HACK101.TXT;1 HACKTRACTS_IDG.TXT;1 HUM-A-SUMMER98_TAR.GZ;1 HUNT-1_0.TGZ;1 HUNT-1_2.TGZ;1 HUNT.TGZ;1 HWA-HN5.ZIP;1 ICMP177.TGZ;1 ICMP21.TGZ;2 ICMPQUERY.C;1 ICMPUSH22.TGZ;2 IDA.ZIP;1 ID_TOOLS.MDB;1 IMAPVULN.TGZ;1 IPGRAB-0_6_TAR.GZ;1 IPLOGGER_TAR.GZ;1 IPSEND2_0_TAR.GZ;1 IPSEND2_1A.TGZ;1 IPTRAF-1_3_0_TAR.GZ;1 IPZONER2_2_TAR.GZ;1 IP_FIL3_2_9_TAR.GZ;1 IQUERY.CFG;1 IQUERY.DESC;1 IQUERY.NFR;1 ISS-VS-CYBERCOP.TXT;1 JAIL-1_5_TAR.GZ;1 JOHN-16W.ZIP;1 JOHN-1_6.TGZ;2 JOHN-ANN.TXT;1 KARPSKI-0_101.TGZ;1 KEYLOG95.ZIP;1 L0PHT-WATCH.TGZ;1 L0PHTCRACK_251.EXE;1 L0PHTWATCH-ANN.TXT;1 L6_ANN.TXT;1 L6_PL.HTM;1 LAND.CFG;1 LAND.DESC;1 LAND.NFR;1 LIBPCAP-0_4A7_TAR.GZ;1 LIBPCAP_TAZ.Z;1 LOCKD.CFG;1 LOCKD.DESC;1 LOCKD.NFR;1 LOG.ZIP;1 LREAD-3_0.ZIP;1 LRK4-SRC.TGZ;1 LRK4.TGZ;1 LRK4_SRC.TGZ;1 LSBASSEC.TXT;1 LSCGIEXP.TXT;1 LSCGINET.TXT;1 MCRYPT-2_1_10.TGZ;1 MD5-1_7.README;1 MD5-1_7_TAR.GZ;1 MSCAN.TGZ;1 NEPED.C;1 NESSUS-990201.TGZ;1 NESSUS-990209.TGZ;1 NESSUS-990216.TGZ;1 NESSUSJ-ANN_TT.TXT;1 NESSUSJ-JFC-980705.ZIP;1 NETBIOS-SCAN-WIN32-PERL.TXT;1 NETBUSTERV130.ZIP;1 NETBUSV17.ZIP;1 NETSCAPE_LOCAL_FILE_READ.TXT;1 NETTEST0_8.TGZ;1 NETWATCH0_8A_SRC_TAR.GZ;1 Page 2 NEVERLCK.ZIP;1 NEVL4_96.ZIP;1 NEW_TCP_SCAN_METHOD.TXT;1 NFR-2_0_2-RESEARCH-DOCS_TAZ.Z;1 NFR.TXT;1 NFR_FAQ.TXT;1 NN29.EXE;1 NSA.PDF;1 NSS-RISK-PT1.TXT;1 NTLAST15.EXE;1 NTOP-1_0_SRC_TAR.GZ;1 NTOP-1_1A4_TAR.GZ;1 NTOP-1_1CR1.TGZ;1 OBJ2ASM.ZIP;1 OOB.CFG;1 OOB.DESC;1 OOB.NFR;1 OS-SEC.TXT;1 PGP-6-0-2I.PATCH;1 PGP602CKT01.TXT;1 PGP602CKT01.ZIP;2 PGP602I-WIN-SRC.ZIP;1 PGP60DC-FRENCH.ZIP;1 PGP60FR-HTML.ZIP;1 PHRACK53.TGZ;1 PHRACK54.TGZ;1 PIRATE26.ZIP;1 PLUGINS_LIST.HTML;1 PM100.EXE;1 POLITICAL-SOCIAL-ENGINEERING.TXT;1 POSTFIX-BETA-19990122.TGZ;1 PPTP.TXT;1 PROTOLOG-1_0_7.TGZ;1 PSCAN.C;1 QUESO-980922_TAR.GZ;1 RADIUSD-CISTRON-1_5_4_3-BETA15_TAR.GZ;1 RDNS.C;1 REDIR-2_0.TGZ;1 REVERSE-WEB-TROJAN.TXT;1 RGSOURCE.ZIP;1 RIO.TGZ;1 RIP1.CFG;1 RIP1.DESC;1 RIP1.NFR;1 RIP2.CFG;1 RIP2.DESC;1 RIP2.NFR;1 RR-1_0.TGZ;1 RWWWSHELL-1_6.PERL;1 SAINT-1_3_4_TAR.GZ;1 SAMBA-LINUX-SMALLFIX.TXT;1 SATAN-1_1_1-SCANNERS.TGZ;1 SATAN-1_1_1_LINUX_FIXED2.TGZ;1 SATAN-1_1_1_TAR.Z;1 SBSCAN-0_02.TGZ;1 SCRT232.EXE;1 SDISK202C.ZIP;1 SECSTAT.HTML;1 SECSTAT.TXT;1 SECUREOFFICE.EXE;1 SECURITY-LEARNING.TXT;2 SHA-1_2.README;1 SHA-1_2_TAR.GZ;1 SLOWSCAN-DETECT.TXT;1 SMBSCANNER-ENG.ZIP;1 SNIFFIT_0_3_7_BETA_TAR.GZ;1 SNOOF.TGZ;1 SPAK-0_6B_TAR.GZ;1 SPOOF_0_1.TGZ;1 SSLEAY-0_8_1A-RL-19990124.TAR-GZ;1 SSLEAY-0_8_1A-RL-P19990129-1.TAR;1 SSLEAY-0_8_1A-RL-P19990131-1.TAR;1 STATD.CFG;1 STATD.DESC;1 STATD.NFR;1 STATNET2_1_TAR.GZ;1 STLTH201.ZIP;1 STROBE.TGZ;1 STROBE_TAR.GZ;1 SWING.ZIP;1 SWOL-02-SECURITY.TXT;1 SYN-ANN.TXT;1 SYN.PL;1 SYN.TXT;1 TCPDUMP-3_4A5-SMB_PATCH.Z;1 TCPDUMP_TAZ.Z;1 TCPIP_PROBLEMS_BELLOVIN_PS-GZ.GZ;1 TCPSHOW.C;1 TCP_WRAPPERS_7_6.TGZ;1 THC-TS08.ZIP;1 TITAN_DOCUMENTATION.TXT;1 TITAN_SOLARIS2.TXT;1 TITAN_V3_0_FCS.TGZ;1 TRACEROUTEFLOOD.C;1 TRAFFIC-VIS-0_30.TGZ;1 TRIPWIRE-1_30-1_LINUX.TGZ;1 TTDB.CFG;1 TTDB.DESC;1 TTDB.NFR;1 UDPSHELL_V1-0.TGZ;1 UHF-1_1.TGZ;1 VCARD.ZIP;1 VISA_CHK.ZIP;1 W9598-SMB-FLAW_TXT.TXT;1 WDASM17B.ZIP;1 WINE990110.TGZ;1 WSCKSPY.ZIP;1 WWW_GENOCIDE2600_COM_$TATTOOMAN.TXT;1 XMASTREE.CFG;1 XMASTREE.DESC;1 XMASTREE.NFR;1 XOUTSIDE.CFG;1 XOUTSIDE.DESC;1 XOUTSIDE.NFR;1 X_SECURITY.TXT;1 Z0NE.C;1 ZHACK410.ZIP;1 ========> [VMSLT98B.TK]AAAREADME.TXT;2 <======== This area contains material from (mostly) Hunter Goatley's site. MMK is a MMS clone. Netlib allows use of any VMS TCP/IP stack with a uniform interface. MGFTP is a better FTP daemon. Several more are present. AAAREADME.TXT;1 DELIVER.ZIP;1 DELTREE.ZIP;3 FLIST.ZIP;2 HGLOGIN.ZIP;2 LNMLOOKUP.ZIP;2 MGFTP.ZIP;1 MMK.ZIP;2 NBS.ZIP;3 NETLIB022.ZIP;2 NEWSRDR.ZIP;2 POSTMAN.ZIP;4 REMIND.ZIP;1 SET_PRCNAM.ZIP;1 UNZIP.ZIP;1 WATCHER.ZIP;2 ZCR22-VMS-AXP-OBJ.ZIP;1 ZCR22-VMS-VAX-DECC-OBJ.ZIP;1 ZCR22-VMS-VAX-VAXC-OBJ.ZIP;1 ZCRYP28C.ZIP;1 ZCRYPT28.ZIP;1 ZIP23I.ZIP;1 ========> [VMSLT98B.TKTCL]AAAREADME.TXT;1 <======== This area contains VMS versions of TK and TCL with binaries. These are a script interpreter and toolkit with many extensions. ========> [VMSLT98B.WWW]AAAREADME.TXT;1 <======== This area contains some http servers (web servers) for VMS with full sources and options.