From: CSBVAX::MRGATE!@SRI.Com,@wiscvm.wisc.edu:CADS_COLE@GALLUA.BITNET@SMTP 5-AUG-1987 01:20 To: EVERHART Subj: Ooooh, why didntja say so... VFE.HLP here! Received: from wiscvm.wisc.edu by KL.SRI.COM with TCP; Mon 3 Aug 87 20:19:42-PDT Received: from CADS by wiscvm.wisc.edu ; Mon, 03 Aug 87 22:20:17 CDT Date: Mon, 3-AUG-1987 23:12 EST From: Kevin Cole; Gallaudet U.; Washington; DC To: Subject: Ooooh, why didntja say so... VFE.HLP here! Cut between the dotted lines... ------------------------------------------------------------------------------- 1 ADD The ADD command is used to add one or more signed numbers (longwords) and display the result in decimal and hex. The numbers can be given in hex, decimal, or octal. Decimal output is normally signed unless the SET NOSIGN command has been given. Format: AD(D) number1[,number2,...,numbern] [number] can optionally have a leading + or - sign and can have one of the following formats: nnnnnnnnn - Decimal 0nnnnnnnnnn - Octal Hnnnnnnnn - Hex ("H" must be used regardless of the current radix) 1 ALPHA The ALPHA command is used to display in either ASCII or EBCDIC depending on the current SET CHARSET mode. Operation is identical to the ASCII and EBCDIC commands in all other respects. The default mode is ASCII. Format: A(LPHA)[/P(ASTE)] [range] See ASCII or EBCDIC for parameter specification. 1 ASCII The ASCII command is used to display the contents of the current buffer (plus following blocks, if specified) in ASCII. Non-printing characters are shown as periods. There are 64 or 96 characters/line. Output is aligned on quadword boundaries. Format: AS(CII)[/P(ASTE)] [range] [range] must begin within the limits of the current buffer. If it overflows beyond the current buffer, subsequent blocks are dumped, and the user is positioned at the last block read. If [range] is omitted, the current buffer is dumped in its entirety. If the /PASTE qualifier is used, the paste buffer is displayed. In this case, [range] must not overflow the size of the paste buffer. If omitted, the entire paste buffer is displayed. 1 BINARY This command is used to display the contents of the current buffer (plus following blocks, if specified) in binary format. There are 8 or 12 bytes/line. Output is nonaligned (starts at the first address given). Format: B(INARY)[/P(ASTE)] [range] [range] must begin within the limits of the current buffer. If it overflows beyond the current buffer, subsequent blocks are dumped, and the user is positioned at the last block read. If [range] is omitted, the current buffer is dumped in its entirety. If the /PASTE qualifier is used, the paste buffer is displayed. In this case, [range] must not overflow the size of the paste buffer. If omitted, the entire paste buffer is displayed. 1 buffers VFE operates with two variable-length buffers. The CURRENT buffer is filled with the contents of the positioned block, plus one or more following blocks if editing a disk file or device and if the SET BUFF value exceeds 1. The buffer is filled whenever a file is initially opened for edit and whenever a read operation is performed on the current file or device. Commands which always cause a read operation are EOF, FILE, GET, LAST, MOVE, NEXT, REWIND, and TOP. (This happens even if the same block is selected, as in NEXT 0). Commands which can cause file reads if multiple blocks are processed are ALPHA, ASCII, BINARY, EBCDIC, HEX, IBYTE, IWORD, ILONG, LOCATE, LGLOBAL, MULTI, and RECORD. Contents of the current buffer can be modified with the CHANGE and PASTE commands, and these modifications remain until the next read operation. If a WRITE is done before the next read, the modifications are written to the file and become permanent. The PASTE buffer is user-controlled. It is filled by using the CUT command. Unlike the current buffer, the paste buffer remains unaltered when a read operation occurs or when a new file is edited. The paste buffer has two primary uses: First, to allow data to be compared with the DIFFERENCES command, and second, to permit data to be transferred within a file or between files. 1 CHANGE The CHANGE command is used to modify the current buffer. (This does not alter the file unless the WRITE command is used with the changed buffer). If the change-string would overflow the buffer, nothing is changed. C(HANGE) [begin[,change-string]] [begin] if numeric, is the first byte to change. An asterisk (*) can be used if the current buffer contains a found target of a previous LOCATE, in which case the target address is used. [change-string] can have one of the following formats: nnnnn - Unsigned hex string of numbers. These are placed in the buffer in the order given, right-justified to the nearest byte. Any number of leading zeroes and up to 8 significant digits may be used. +nnnn -nnnn - Signed decimal. Can be byte, word, or longword. Context is determined by the size of the number, including leading zeroes. Stored in normal (reversed) format. "xxx" - Character string. Single or double quotes are permitted. The character set used is specified by SET CHARSET. ASCII is assumed if none is specified. If [change-string] is omitted, the previous change string is used. If both parameters are omitted, the previous string is used at the last found target address within the current buffer. 1 CUT The CUT command copies all or part of the current buffer into the paste buffer. This is secondary buffer which can be recopied into the current buffer at any time via the PASTE command or compared with it via the DIFFERENCES command. See HELP BUFFERS for more information. Format: CU(T) [range] [range] must be entirely within the current buffer. If only the beginning byte is specified, that address thru the end of the current buffer is copied. If [range] is omitted, the entire contents of the current buffer are copied. Data within the paste buffer always begins at byte 0. The range used with the last CUT command is saved, however, and used as a default for subsequent uses of the data (DIFFERENCES and PASTE). 1 DATE The DATE command displays one or more sequential quadwords from the current buffer in system date format. Only date values which exist entirely within the buffer can be displayed. Format: DA(TE)[/P(ASTE)] range The beginning byte of [range] must be specified. If no count or ending byte is given, a single date value is displayed. If the /PASTE qualifier is given, data from the paste buffer is displayed. 1 DIFFERENCES This command compares all or part of the paste buffer, beginning at the first byte, with the specified range within the current buffer. If differences are found, the contents of the current buffer are printed (in hex) with the corresponding contents of the paste buffer directly below. 32 or 48 sequential bytes are displayed per line. Matching paste buffer bytes on the second line are displayed as periods. Output is longword-aligned. Format: D(IFFERENCES) [range] [range] must be entirely within the current buffer. If only the beginnning byte is specified, the comparison count defaults to the smaller of the paste buffer size or the remaining bytes of the current buffer. If [range] is omitted, the range given with the last CUT command which moved data into the paste buffer is used. 1 EBCDIC The EBCDIC command is used to display the contents of the current buffer (plus following blocks, if specified) in EBCDIC. Non-printing characters are shown as periods. There are 64 or 96 characters/line. Output is aligned on quadword boundaries. Format: EB(CDIC)[/P(ASTE)] [range] [range] must begin within the limits of the current buffer. If it overflows beyond the current buffer, subsequent blocks are dumped, and the user is positioned at the last block read. If [range] is omitted, the current buffer is dumped in its entirety. If the /PASTE qualifier is used, the paste buffer is displayed. In this case, [range] must not overflow the size of the paste buffer. If omitted, the entire paste buffer is displayed. 1 EOF This command is useful when editing most VMS files. The software EOF block and EOF byte are displayed and the user is positioned at the EOF block. When editing devices, this command does the same thing as the LAST command. Format: EO(F) 1 EXIT The EXIT command terminates VFE. Format: E(XIT) 1 FILE This command specifies the name of the next file or device to edit. Format: F(ILE) [name][/qualifier(s)] If the file name is not given on the command line, it is solicited. At this point the previous file is closed and the new file is opened for edit. If a VMS disk file name is given, the user is positioned at virtual block 1 of the new file and its contents are read into the current buffer. If a disk device is specified, the user is positioned at logical block 0. LOG_IO privilege is required to edit a disk device. If a tape device is specified, the tape is rewound and the user is posi- tioned at the first block of the tape. The tape must be mounted FOREIGN. 2 /NOREWIND This qualifier can be used to specify that the tape being edited should not be rewound. A single read operation is performed at the current tape position and the block number is set to zero. 2 /OVERRIDE This qualifier is used to override a file interlock when editing a VMS disk file. It cannot be used in conjunction with /WRITE. 2 /POSITION This qualifier is used to pre-specify a tape position. The /NOREWIND qualifier is assumed when /POSITION is given when editing a tape. /POSITION=([file:]block) [file] is optional. If not given, it defaults to one. [block] must be specified. The tape is backspaced one block and a single read is done. In this way, the tape remains positioned at the same location as it was before. When editing a tape that was previously examined with VFE and the position is unchanged, use the same file and block numbers that were last shown for the tape. Parenthesis are used only if both parameters are given. 2 /WRITE This qualifier allows subsequent use of the WRITE command. If not given when the file is opened, the file will be in read-only mode and no changes will be allowed. Only VMS disk files and disk devices which are mounted FOREIGN can be modified with VFE. Tapes and XQP-managed disk devices can only be edited in read-only mode. Use of the /OVERRIDE qualifier is not allowed when /WRITE is specified. 1 GET For disk files or devices, this command reads one or more blocks (depending on the setting of SET BUFF) into the current buffer, beginning at the block specified, and positions the user at that block. If the block selected is outside the limits of the current file, the user will be left positioned at the same block and the current buffer will remain unaffected. For tape files, the read will always be attempted. Tape movement stops when an end-of-file mark is encountered in either the forward or reverse direction. Format: G(ET) block [block] is specified in decimal numeric. See HELP POSITIONING for an abbreviated form of GET. 1 HEX The HEX command is used to display the contents of the current buffer (plus following blocks, if specified) in hexadecimal. There are 32 or 48 bytes/line. Display output is aligned on longword boundaries. Bytes are dumped in the order in which they occur in the file, from left to right. Format: H(EX)[/P(ASTE)] [range] [range] must begin within the limits of the current buffer. If it overflows beyond the current buffer, subsequent blocks are dumped, and the user is positioned at the last block read. If [range] is omitted, the current buffer is dumped in its entirety. If the /PASTE qualifier is used, the paste buffer is displayed. In this case, [range] must not overflow the size of the paste buffer. If omitted, the entire paste buffer is displayed. 1 IBYTE This command is used to display the contents of the current buffer (plus following blocks, if specified) in integer byte format. Values are signed unless the SET NOSIGN command has been given. There are 16 or 24 bytes/line. Output is nonaligned (starts at the first address given). Format: I(BYTE)[/P(ASTE)] [range] [range] must begin within the limits of the current buffer. If it overflows beyond the current buffer, subsequent blocks are dumped, and the user is positioned at the last block read. If [range] is omitted, the current buffer is dumped in its entirety. If the /PASTE qualifier is used, the paste buffer is displayed. In this case, [range] must not overflow the size of the paste buffer. If omitted, the entire paste buffer is displayed. 1 ILONG This command is used to display the contents of the current buffer (plus following blocks, if specified) in integer longword format. Values are signed unless the SET NOSIGN command has been given. There are 4 or 8 longwords/line. Longwords are displayed in normal (reverse) order - the first byte of each 4-byte longword is assumed to be least significant. Format: IL(ONG)[/P(ASTE)] [range] [range] must begin within the limits of the current buffer. If it overflows beyond the current buffer, subsequent blocks are dumped, and the user is positioned at the last block read. Longwords which span blocks are printed normally. If [range] is omitted, the current buffer is dumped in its entirety. If the /PASTE qualifier is used, the paste buffer is displayed. In this case, [range] must not overflow the size of the paste buffer. If omitted, the entire paste buffer is displayed. 1 IWORD This command is used to display the contents of the current buffer (plus following blocks, if specified) in integer word format. Values are signed unless the SET NOSIGN command has been given. There are 8 or 16 words/line. Words are displayed in normal (reverse) order - the first byte of each 2-byte word pair is assumed to be least significant. Format: IW(ORD)[/P(ASTE)] [range] [range] must begin within the limits of the current buffer. If it overflows beyond the current buffer, subsequent blocks are dumped, and the user is positioned at the last block read. Words which span blocks are printed normally. If [range] is omitted, the current buffer is dumped in its entirety. If the /PASTE qualifier is used, the paste buffer is displayed. In this case, [range] must not overflow the size of the paste buffer. If omitted, the entire paste buffer is displayed. 1 LAST This command positions the user at the highest allocated block of the file. Due to minimum extent granularity, this may be higher than the last block currently storing user data. As a result, its contents may be meaningless - this should not be taken as a sign of file corruption. When using tape, the user is positioned at the last block within the current logical file. Format: LA(ST) 1 LGLOBAL This command finds all of the remaining occurrences of the target number or string within the file being edited. Format: LG(LOBAL) [target] [target] is specified exactly as with LOCATE. When an entire disk file or device has been searched, the user is repositioned at the block where the search began. When using tape, the position is left at the last block within a logical file. 1 LOCATE This command is used to find the next occurrence of a target string or number within the file being edited. L(OCATE) [target] [target] is the target string or number. If not specified, the previous target is used. The following formats are allowed: nnnnn - Unsigned hex string of numbers. These are searched for in the order given, right-justified to the nearest byte. Any number of leading zeroes and up to 8 significant digits may be used. +nnnn -nnnn - Signed decimal. Can be byte, word, or longword. Context is determined by the size of the number, including leading zeroes. Searched for in normal (l.s. to m.s.) format. "xxx" - Character string. Single or double quotes are permitted. The character set used is specified by SET CHARSET. ASCII is the default. String locate operations are case sensitive unless the SET NOCASE command has been given. 1 MOVE This command moves a tape in the forward or reverse direction past a specified number of end-of-file marks. Format: MO(VE) [offset] [offset] is a decimal numeric with optional + or - sign. If omitted, the number one (1) is assumed, which will position forward to the next end-of-file mark on the tape. Reverse direction is indicated by a negative offset. 1 MULTI This command is used to display the contents of the current buffer (plus following blocks, if specified) in hex and character format. The character set used is determined by SET CHARSET (ASCII is the default). Non-printing characters are shown as periods. There are 32 or 48 bytes displayed per line, with the hex values displayed beneath and aligned with the characters. Output is aligned on longword boundaries. Format: M(ULTI)[/P(ASTE)] [range] [range] must begin within the limits of the current buffer. If it overflows beyond the current buffer, subsequent blocks are dumped, and the user is positioned at the last block read. If [range] is omitted, the current buffer is dumped in its entirety. If the /PASTE qualifier is used, the paste buffer is displayed. In this case, [range] must not overflow the size of the paste buffer. If omitted, the entire paste buffer is displayed. 1 NEXT This command positions the user to a block with a relative offset to the current block. Contents of the requested block or blocks, depending on the setting of SET BUFF, are read into the current buffer. When using tape, tape movement stops when an end-of-file marker is encountered prior to locating the requested block. Format: N(EXT) [offset] [offset] is a decimal numeric with optional + or - sign. If omitted, the number one (1) is assumed, which will position to the block immediately following the current block. When editing a disk file or device, the value of [offset] is usually multiplied by the value determined by SET BUFF. See HELP POSITIONING for abbreviated forms of NEXT. 1 PASTE The PASTE command writes all or part of the paste buffer to the current buffer. File positioning is not affected, and if a WRITE command is issued before another command causes a read, the positioned block(s) within the file will be overwritten. Judicious use of the CUT and PASTE commands can be used to transfer "chunks" of data within a single file or group of files. EXTREME CAUTION is advised for users of this command! Format: P(ASTE) [range] Data is transferred sequentially from the first byte of the paste buffer into the specified area of the current buffer. [range] must be entirely within the current buffer. If a range exceeds the size of the paste buffer, the remainder is zero-filled. If it is smaller, only that many bytes are transferred. If only the beginning byte of [range] is given, the transfer count is taken to be the size of the paste buffer. If [range] is omitted entirely, the range given with the last CUT command is used. The size of the current buffer is never changed by the PASTE command. 1 positioning The following sequences are abbreviated formats of the GET and NEXT commands. They are useful for fast block positioning. Note that a positioning command will always cause the contents of the positioned block(s) to be read into the current buffer. advances one block. Same as NEXT 1. + advances one block. Same as NEXT 1. - backs up one block. Same as NEXT -1. [number] positions to the block specified. Same as GET [number]. +[number] advances [number] blocks. Same as NEXT [number]. -[number] backs up [number] blocks. Same as NEXT -[number]. In all cases above, [number] represents a decimal numeric. See HELP PROMPT for information on position indication. 1 prompt The user prompt has several different formats, depending on the type of file or device being edited and on the SET BUFF value. The general format is: [file:]block[(size)]> [file] represents the current logical file number and is always present for tapes, never for disk. When the tape is rewound and the file position is known, the first logical file is numbered 1 and the number is increased each time an EOF mark is crossed. When the tape position is unknown, the file number can be zero or negative. [block] is always present. For disk files, it represents the current VBN (virtual block number), for disk devices, the current LBN. For tape, it represents the logical block number that has been most recently read within the current logical file. When the tape position is known, blocks begin at 1 with zero indicating that an EOF mark has just been crossed but no data has been read. When the tape position is unknown, the block number can go negative. [size] is used to show the size of the current buffer. For disk, this indicator is omitted if the value of SET BUFF is one. In this case, the current buffer contains 512 bytes. For tape, this shows the size of the block just read, and is always present except when the last tape positioning produced no data, as is the case when an EOF mark has been crossed or if the system returns an error status with zero bytes transferred. 1 range Many of the commands use a [range] specification. The format of the range is as follows: [begin][,count] or: [begin][:end] [begin] specifies the address within the buffer of the first byte to process. It is supplied in unsigned decimal or hex, depend- ing on the setting of SET RADIX. The default is decimal. [begin] must always be within the address range of the cur- rent or paste buffer, whichever is being used in the command. If not specified, [begin] defaults to the first byte (0). [count] specifies the count of items to process. This is the byte count for all commands except for DATE, IWORD, and ILONG, where it it the count of date quadwords, words, and longwords, respectively. [count] is always specified in unsigned decimal numeric. Some commands allow [begin+count] to exceed the range of the current buffer. [end] specifies the address of the last byte to process. It can be supplied in unsigned decimal or hex, depending on SET RADIX. Decimal is the default. [count] and [end] cannot be used together on the same command. Some commands allow [end] to exceed the range of the current buffer. If both [count] and [end] are omitted, a single item is processed, except where indicated differently for specific commands. Most com- mands allow [range] to be omitted entirely. See specific command documentation for more information. 1 RECORD The RECORD command is used to display one or more records of a sequential file in character format, as determined by SET CHARSET. ASCII is the default. Nonprinting characters are printed as periods. The file can be either fixed, variable, or VFC formatted. There are two display modes, as determined by SET HEADER. R(ECORD) [begin][,count] [begin] for fixed length records is the byte offset within the current buffer of the first record to print. For variable/VFC records, it is the address of the record length word for that record. Since all rec- ords begin on a word boundary, if [begin] is odd, it will round up. If [begin] is omitted and the user is positioned at the same block where a previous RECORD command was given, the address of the following record is used. Otherwise, if [begin] is omitted, the current buffer is searched for the first likely record start address and that is used. (This process is not 100% accurate, but works well with short records.) [count] is the count of records to be printed. If [count] and/or the record lengths are sufficiently large, processing may continue into blocks following the current buffer. When processing is completed, the user is positioned at the last block read. If not specified, [count] defaults to the previous value used. 1 REWIND This command rewinds the tape being edited and positions the user at the first block of the first file. Format: RE(WIND) 1 SET This command is used to set/clear various modes and indicators. 2 BUFF This option determines the size of the current buffer for disk operations. Format: S(ET) B(UFF)=count The [count] parameter is a decimal numeric in the range of 1-50 and must be specified. This determines the block count for each read operation. Large buffer sizes can be used to transfer data that crosses block boundaries with CUT and PASTE, and to compare large areas with the DIFFERENCES command. The default value of [count] is one (1), and it is recommended that this value be used for most VFE operations. When a large buffer size is used, addressing is relative to the first block read, and this can be confusing when data is displayed from subsequent blocks which reside in the same buffer. Note that if [count] exceeds the block size of the current buffer, the size will not be expanded until the next read is performed. The setting of this parameter has no effect on the efficiency of LOCATE or LGLOBAL, which always use a 50-block buffer for disk searches. 2 CASE This option determines whether character string search operations (LOCATE, LGLOBAL) are case-sensitive. Case-sensitive searches require less than 50% of the CPU time required by case-insensitive searches. The default mode is case-sensitive. Operation is valid for either supported character set (ASCII or EBCDIC). Format: S(ET) [NO]C(ASE) CASE mode is case-sensitive, NOCASE is case-insensitive. 2 CHARSET This option is used to determine the character set used for display, change, and search operations. The default character set is ASCII. Format: S(ET) CH(ARSET)=A(SCII) =E(BCDIC) 2 DISPLAY This option is used to enable or disable local printing at the terminal. The standard mode is DISPLAY. If logging is enabled (see SET LOG) and the SET NODISPLAY command has been given, only command solicitation and single-line output (such as error messages) is displayed at the terminal. Other output is written only to the log file. Format: S(ET) [NO]DISPLAY 2 HEADER This option controls the output format of the RECORD command. Format: S(ET) [NO]H(EADER) HEADER mode is the default. Each record is preceded by its starting address, and by up to 8 bytes of its VFC field (in hex) for VFC files. When a new block is read, the block number is shown, as for other display formats. Nonprinting characters are replaced with periods. NOHEADER mode produces output similar to the VMS TYPE command. Addresses, VFCs, and block numbers are suppressed. Nonprinting characters are replaced with periods, except for tabs, which are replaced with the correct number of spaces. 2 LOG This option is used to enable or disable logging of VFE output to a user file. All output and input is written to the file. The log file is closed when another SET LOG command is given or when VFE terminates. Formats: S(ET) L(OG)[=filename] S(ET) NOL(OG) [filename] is any legitimate VAX file descriptor. Device and directory are optional. If this parameter is omitted entirely, the file VFE.LOG is created in the current default directory. A new version is created each time the SET LOG command is used. 2 POSITION This option is used to change the indicated position of a tape file. It does not change the physical position of the tape or do any I/O to the tape device. Format: S(ET) P(OSITION)=([file:]block) [file] if specified, is a decimal numeric which replaces the current file number. [block] is required. It is a decimal numeric, and replaces the current block number. Parenthesis are used only if if both parameters are given. 2 RADIX This option determines the base of all byte addresses given on command lines and shown in display output. The [begin] and [end] fields of all range specifications and the [begin] field of the CHANGE command are affected. Block addresses and the [count] field of ranges are not affected - these are always input and displayed in decimal. The initial radix is DECIMAL. Format: S(ET) R(ADIX)=D(ECIMAL) =H(EX) 2 SIGN This option is used to enable or disable signed decimal output with the ADD, IBYTE, IWORD, and ILONG commands. The default mode is SET SIGN. Format: S(ET) [NO]S(IGN) 2 SKIP This option can be used to compensate for a bug in VMS which causes incorrect block indication when using tape files. It is known to occur under VMS 4.1 and 4.2 when using the TA78 tape drive. Simply put, when an IO$_SKIPRECORD encounters an EOF mark, the number of blocks skipped before the EOF was found is not returned in the IOSB. This means that if the tape encounters an EOF while skipping in the forward direction and the user backs up over the EOF, the absolute block number is unknown. Note that IO$_SKIPRECORD is only used with block positioning within a single file (GET, NEXT, TOP, LAST, EOF). When using the MOVE command, the setting of SKIP has no effect. Format: S(ET) SK(IP)=option If [option] is NORMAL, VFE uses its standard skip-ahead count of up to 50 blocks when skipping over blocks. When moving back over an EOF, block numbering can be unpredictable if operating on a system and device on which this bug exists. If [option] is FAST, the skip-ahead count is still up to 50 blocks, but movement backwards over an EOF will set the block number to -1 and decrement from there if the bug could have caused erroneous position indication. If [option] is SLOW, all skip-aheads are done one block at a time. This preserves position indication but operates considerably slower than either of the above. In the hope that VFE will be around long after this bug is fixed, the default SKIP option is NORMAL. 2 WIDTH This option can be used to change the output width of the terminal on which VFE is operating. Display output has a wide and a narrow setting, and the size is dependent on the terminal output width. Output to a log file when NODISPLAY is set, and all batch output, is always in wide format. If the width is changed during a VFE session, it is reset to the original size when the session terminates. Format: S(ET) W(IDTH)=size [size] is a decimal numeric and can be either 80 or 132. 1 SHOW The SHOW command is used to display various aspects of the current VFE environment. 2 ALL This displays all of the SHOW options with one command. Format: SH(OW) A(LL) 2 CHANGE Displays the current change-string, and most recently changed file, block and byte address. Format: SH(OW) C(HANGE) 2 DEVICE Displays the name of the file or device being edited, and current block number. Same as SHOW FILE. Format: SH(OW) D(EVICE) 2 FILE Displays the name of the file or device being edited, and current block number. Format: SH(OW) F(ILE) 2 LOCATE Displays the current locate target and most recently located file, block, and byte address for the target. Format: SH(OW) L(OCATE) 2 MODES Displays status of the SET modes (BUFF, CASE, CHARSET, DISPLAY, HEADER, LOG, RADIX, SIGN, SKIP, WIDTH). Format: SH(OW) M(ODES) 2 PASTE Displays the size of the paste buffer, and the file, block, and offset from which the data was transferred. Format: SH(OW) P(ASTE) 1 signon If you have the symbol VFE defined correctly as specified in the release documentation, following is the full format of the signon sequence: $ VFE[/set-options] [filename][/file-qualifiers] [set-options] are optional, and can be one or more of the valid SET options, less the SET command itself. [filename] is the name of the file or device to edit. If not given on the command line, it will be solicited. [file-qualifiers] are optional, and can be one or more of the options described with the FILE command. For example: $ VFE/NOCASE/RADIX=HEX/LOG=FILEX.LOG FILEX.DAT/WRITE 1 TOP This command positions the user at the top of the file (virtual block 1). The contents of virtual block 1 are read into the current buffer (logical block zero for disk devices). For tape, the tape is moved in reverse until an end-of-file mark is found and positioned directly following the EOF mark. Format: T(OP) 1 WRITE This command writes the current buffer to the file block(s) at which the user is positioned. The current buffer will always contain the contents of the positioned block(s) except when the CHANGE or PASTE commands have been used and no repositioning has occurred. The amount of data written depends on the size of the current buffer, which is usually 512 times the value determined by SET BUFF. See HELP BUFFERS for more information. The WRITE command can only be used when editing disk files or FOREIGN mounted disk devices, and only if the /WRITE qualifier was given when the file or device was accessed. Format: W(RITE) -------------------------------------------------------------------------------- Kevin Cole KJCOLE@GALLUA.BITNET Center for Assessment and Demographic Studies (CADS) CADS_COLE@GALLUA.BITNET Gallaudet Research Institute (GRI) Gallaudet University Washington, D.C. 20002 (202) 651-5575