Category : File Managers
Archive   : XPIP601.ZIP
Filename : XPIP.HLP

 
Output of file : XPIP.HLP contained in archive : XPIP601.ZIP
2 18 61124140189207228255278293297301310315318370380389422433442446451454459473476478482495501503514529536557562571574578586589601603605608612620624640646648654659668PROGRAM INFORMATION


If you find XPIP useful, a contribution of $15 would be appreciated. With
each contribution of $30 or more:

You will receive a printed manual (over 70 pages).

You will be registered to receive a diskette with the next version of
XPIP when available, plus XPSORT, a program that sorts ASCII files with
any length (even variable-length) records, on multiple ascending,
descending, and record selection keys.

Please state your current version of XPIP. Send contributions to:

System Facilities, Inc.
P.O. Box 7079
Charlottesville, VA 22906



Most of XPIP is written in the MPS language, a commercial (not shareware)
product of System Facilities, Inc. For more information about MPS, see the
December 1987 issue of Computer Language magazine or write to us.

Many of XPIP's features have been added in response to users' suggestions. If
you have questions, problems, comments, or suggestions, we encourage you to
write us.

LICENSE
-------

Copyright (c) 1987 System Facilities, Inc. All rights reserved.
You are free to use, copy, and distribute XPIP for noncommercial purposes IF:

NO FEE IS CHARGED FOR USE, COPYING OR DISTRIBUTION.

XPIP AND ITS RELATED FILES ARE NOT MODIFIED IN ANY WAY EXCEPT AS
SPECIFIED IN THE HELP FILE OR MANUAL TO CHANGE PARAMETERS.

Clubs and user groups may charge a nominal fee (less than $10) for expenses
and handling while distributing XPIP.

Volume discounts, site licenses, commercial licenses and custom versions of
XPIP are available. Write us for more information.

This program is provided AS IS without any warranty, expressed or implied,
including but not limited to fitness for a particular purpose.
 for a particular purpose.
INTRODUCTION

These files are distributed with XPIP:

XPIP.EXE XPIP program file
XPIP.OV1 XPIP overlay file
XPIP.HLP XPIP Help file
XPSTART.DOC Getting started with XPIP
STD.XPC Sample user-defined menu

MS-DOS/PC-DOS system requirements: a PC-compatible running DOS 2.0 or later
with at least 256k bytes of memory.


RUNNING XPIP

Put the Help file XPIP.HLP in a directory specified in the DOS PATH.

You can enter a command on the same line as XPIP, with one space before the
command:

XPIP command

XPIP returns to DOS when done. To operate under the XPIP shell and take
advantage of XPIP's powerful command handler enter

XPIP

without a command. XPIP displays a signon message and a prompt showing the
default drive - for example, A}. If the DOS prompt shows the current
directory, so will XPIP's - for example, A:\XPIP}. You now have a choice of
two modes and can change from one to the other with one or two keystrokes:

(1) Menu mode - select an operation from the menus, and XPIP prompts for the
required information to complete the command. Enter menu mode by
pressing the left or right arrow key immediately after the prompt, or by
typing a question mark (?) followed by ENTER. See file XPSTART.DOC for
more information.

(2) Command mode - enter commands on one line, with the operation and options
indicated by switches at the right end of each command. (The formats and
examples in this file use command mode.) The command line can be edited
at any time until you press ENTER:

Key Action
--- ------
Home Return to beginning of line.
End Point to end of line.
LfArrow Move left one character.
RtArrow Move right one character.
BKSPC Move left and delete one character.
Ins Enter/exit Insert mode.
Del Delete character at cursor.
Ctl-Home Erase from start of line to cursor.
Ctl-End Erase from cursor to end of line.
Ctl-X Erase entire command line.

The following keys have special meanings when they are the first key entered
after the prompt and the command line is blank.

Esc Access stored commands (see /SC).
End Display previous command line and put cursor at end of line.
Home Change directory to the root.
PgUp Change directory up one level.
UpArrow Show current directory.
PgDn Show subdirectories of the current directory and allow the
user to select one.
DnArrow Show subdirectories of the parent and allow the user to select
one.
LfArrow Enter menu mode.
RtArrow Enter menu mode.
Alt-F10 Return to DOS.

ENTER executes the line and displays another prompt.

ESCAPE "backs up" from most prompts.

To exit XPIP, you can also enter an asterisk (*) as the entire command.

See the /SC operation for information about stored commands.

If the first character of a command is "~" (tilde), then the rest of the
command is displayed but not executed, followed on the next line by "Press
any key to continue". This is similar to the way tilde works with XPIP
command files and is intended for use with function keys with user-defined
menus. See the sections on /SC and USER-DEFINED MENUS.

Control-C cancels these operations during execution: COPY, PRINT, DISPLAY,
/QF, /TF, and the /EF "search" commands; for multiple input files, also /MF,
/AC, /AS, /DE, /DF, and /RF.

Control-S suspends some operations. Press any key to resume execution.


A command line can be no more than 77 characters and cannot be continued on a
second line. Spaces count in the length of the line; the first space MAY
indicate a DOS command (see the section on EXECUTING A DOS COMMAND) but
spaces are ignored otherwise.

A command line can contain one or more commands, separated by "|":

A}command1|command2

NOTE: See the section on MODIFYING XPIP CONFIGURATION if you wish to change
the command separation character from "|" to another character.

The general form of a command is:

outfile=infile1,infile2,..,infilen/sw1/sw2../swn

Not all commands use all parts of this general form. See the Help section
for each command for the appropriate formats. In the command formats, square
brackets [] surround optional command elements.

outfile and infile represent output and input file specifications - see the
Help file section on File Specifications for more information.

/sw is a switch: that is, a slash, two letters indicating an operation or
option, and for certain switches, additional characters which specify
parameters. If more than one switch is used, order is not significant.

Examples:

A}LP:=LTR.TXT/FF/PL60 Print file LTR.TXT with page length 60 (print
a form feed every 60 lines) and print a form
feed at the end of the file.

A}B:.EXE/AF871206/SD Display directory of .EXE files on B: with
date on or after 12/6/87.

If a command contains multiple input file specifications, each one is treated
as a separate command. For example,

A}.SRC,.COM/SD

is equivalent to

A}.SRC/SD
A}.COM/SD
SD
A}.COM/SD
FILE SPECIFICATIONS

File specifications ("filespecs") are accepted in the form

d:pathname\filename.ext

where

d: is the device;
pathname\ is the pathname followed by a backslash;
filename is the file name;
ext is the extension.

Input device can be a disk drive (one letter plus colon).

Output device can be:


a disk drive (one letter plus colon)
LP: LST: or LPT: for the printer
KB: TTY: or CON: (or none - see DISPLAY operation) for the monitor

If a filespec contains no device, the default drive is used.


Filename can be up to 8 characters, extension up to 3 characters. Extra
characters are ignored. If the output device is not a disk drive, then
filename and extension are ignored.

Input filespecs can contain any printable characters, except:

(1) If the first character of the filename is a plus sign (+), the other
characters in the filename are searched for in any position. For
example, C:+ABC.TXT will find WORKABC.TXT, ABCTEST.TXT, XABCZ.TXT, etc.
Similarly for extension. C:.+B will find .BAS and .OBJ files.

(2) A minus sign (-) in the first character of the filename will find all
files EXCEPT those containing the characters following the minus sign.
For example, C:-ABC.TXT will find all files EXCEPT WORKABC.TXT, etc.
Similarly for extension. C:.-BAS will find all files EXCEPT those with
.BAS extension.

(3) Lower-case characters are converted to upper case - ab.txt is treated as
AB.TXT.

(4) Spaces are ignored - A B.TXT is treated as AB.TXT.

(5) Slash indicates an XPIP switch - A/B.TXT means filespec A and switch
/B.TXT (which is invalid).

(6) Comma separates two filespecs - A,B.TXT indicates two filespecs, A and
B.TXT.

(7) The first equal sign in a command separates an output filespec from
input - A=B.TXT indicates output A and input B.TXT.

(8) Backslash is always considered a pathname delimiter and never part of a
filename or extension.

Output filespecs should not start with a plus sign (+) or a minus sign (-).
Otherwise they are subject to the same restrictions and also cannot contain
characters considered invalid by the operating system:

< > , ; [ ]

The first colon in an output filespec delimits the device; the first period
delimits the filename. The second occurrence of either invalidates the
filespec.

It is possible to operate on existing files whose filespecs contain any
characters, valid or not, by using wildcards and the /MK or /CO options.
(See the sections on /MK and /CO.)


WILDCARD CHARACTERS IN INPUT FILESPECS:

XPIP is flexible and convenient in the use of wildcard characters. If care
is not used, this can cause problems by operating on files that were not
intended. When in doubt, use the /MK or /CO option to confirm the action to
be taken for each file before it is performed.

There are two special cases in the use of wildcards:

(1) If an asterisk (*) is entered as the entire command, XPIP exits to the
operating system.

(2) If a question mark (?) is entered as the entire command, XPIP enters menu
mode.

A question mark (?) in a filespec causes any character occurring in the
position of the question mark to be considered a "match." For example,

A}AB?D.COM/SD

may find files ABCD.COM and AB9D.COM.

A}-A?C/SD

may find all files except ARCMIN.TXT and FINALC.DAT.

An asterisk (*) is equivalent to using question marks from the position of
the asterisk to the end of the filename or extension. If a filename or
extension contains characters after an asterisk, those characters are
ignored. For example, these are equivalent:

A}AB*.TXT
A}AB??????.TXT
A}AB*XYZ.TXT

Omission of the filename is equivalent to a wildcard filename. The following
are equivalent:

A}.BAS/SD
A}*.BAS/SD
A}????????.BAS/SD

Omission of the extension is equivalent to a wildcard extension unless a
period is present, in which case the extension is considered to be blank.
The following are equivalent:

A}TEST/SD
A}TEST.*/SD
A}TEST.???/SD

The following are equivalent:

A}/SD
A}*/SD
A}*.*/SD
A}????????.???/SD

The following are equivalent:

A}./SD
A}*./SD
A}????????.bbb/SD

where bbb represents three blanks - remember that blanks are ignored.

A wildcard device specification (*: or ?:) can be used for input filespecs
only. All drives are operated on (unless XPIP has been configured to skip
some drives - see the =NODISK command in the section on MODIFYING XPIP
CONFIGURATION). A wildcard device may require that a diskette be present in
each drive. Otherwise, XPIP may wait until a diskette is inserted into an
empty drive.


WILDCARD CHARACTERS IN OUTPUT FILESPECS:

Wildcards in the output filespec are replaced by the corresponding characters
in the input filespec (except for /QD). For example,

A}.BAK=WORK??.ASM

copies WORK22.ASM to WORK22.BAK, and similarly for other files matching the
input filespec.

A}AB????=WORK??.ASM

copies WORK22.ASM to ABRK22.ASM, etc.


HIERARCHICAL DIRECTORIES:

A subdirectory is a file containing information about other files. The
root directory (automatically defined by DOS) contains zero or more
subdirectories, each of which can also have zero or more subdirectories.
Each subdirectory has at least two directory entries (the root directory
contains neither):

" . " represents the current subdirectory.

" . . " represents the parent directory which may be the root or
another subdirectory.

A pathname is either "\" (the root) or a sequence of filespecs which, in
XPIP, may start with a disk drive specification. If a pathname begins with
neither "..", ".", nor "\", then the first directory in the pathname
specifies a subdirectory of the current directory. This is equivalent to
preceding the pathname by ".\".

IMPORTANT: Each filespec in the pathname except the last must be the name of
a subdirectory. /CD, /MD, /RD, and /TD assume that the last filespec is the
root or a subdirectory. /LD, /SD, /RF, /AC, and /AS accept either
non-directory (for instance, data file or program file) or subdirectory as
the last filespec. Other operations assume that the last filespec is not a
subdirectory, and subdirectories which match that filespec are ignored when
the operation is performed. See the examples below.

From this point, the term "directory" is used to mean either the root
directory or a subdirectory.

Examples:

A}B:\SYS\BAK/MD Create directory \SYS\BAK on B:.

A}C:..\../CD Change current directory to the parent of the
parent (that is, go up two levels) of the
current directory.

A}.\NEW/MD Create directory NEW as a
or subdirectory of the current
A}NEW/MD directory.

A}.BAK=\TEXT\LTR.DOC/RF Rename file LTR.DOC in directory TEXT to
LTR.BAK. LTR.DOC may be the name of a
subdirectory.

A}\WP/SD Look for files (including subdirectories)
matching WP.* in the root directory.

A}\WP/CD Change current directory to \WP.

A}\MEMO\*=\TEXT\LTR.* Copy files matching LTR.* from directory TEXT to
directory MEMO. If TEXT has a subdirectory
matching LTR.*, the subdirectory is ignored.

A}\MEMO=\TEXT\LTR.* Copy files matching LTR.* from directory TEXT to
files MEMO.* (same extensions as input files) in
the root.
 the root.
FILE ATTRIBUTES

Attributes are flags in a directory entry which control access to the entry
or to the file it represents. Within the limits of the operating system,
XPIP can modify each attribute (/AC and /AS operations, /CA option) and
select files with a specific attribute clear or set (/BC and /BS options).
The effects of each operation on attributes and vice-versa are detailed in a
number of places throughout this manual. "Set" means that an attribute is
turned on; "clear", that it is turned off.

The DOS attributes are S H R A V D N.

S indicates a "System" file, which is ignored by the DOS DIR command.
However, it has no special effect on XPIP. A subdirectory with this
attribute will not be found by the DOS TREE and DIR commands, but it is
still possible to get to the subdirectory with CHDIR and to remove it
with RMDIR.

H indicates a Hidden file and functions similarly to S.

R indicates a R/O (Read-only) file, which cannot be deleted, renamed, or
overwritten. XPIP cannot rename a subdirectory with this attribute
(unless the user overrides or clears the attribute), but XPIP (with /RD)
and the DOS RMDIR command CAN remove the directory.

A is the Archive flag, and is set when a file is created or modified. It
has no effect on subdirectories.

V indicates that the directory entry is a volume ID. Only one entry on a
disk can have this attribute, and the attribute cannot be changed.

D indicates that the directory entry is the name of a subdirectory, and the
attribute cannot be changed.

N is accessible only when running under Novell's Netware network operating
system; it indicates a shareable file.

NOTE: Volume IDs and subdirectories are processed by the long and short
directory commands (/LD, /SD), attribute clear and set (/AC, /AS), and rename
(/RF). Subdirectories are also affected by /CD, /MD, /RD, /TD. They are
ignored by all other commands.
MODIFYING XPIP CONFIGURATION

The following parameters can be modified:

Display colors - the display colors have no effect when XPIP is run on a
monochrome monitor.

Up to 16 disk drives to ignore when using a wildcard device - this can be
useful if, for example, your computer has floppy drive A: and hard disk C:,
and you want XPIP to ignore B:.

Default pagelength to use with PRINT and /PL.

Left margin to use with PRINT.

The character that XPIP interprets as a separator between multiple commands on
the same line.


XPIP can be modified permanently with the /EF (Edit) operation.
Alternatively, the parameters can be changed while XPIP is running, either by
entering special commands or by executing, with /XC, a command file
containing such commands. When XPIP is first executed, it looks for command
file STD.XPC, first in the current directory, then in the DOS PATH
directories - this provides a convenient means of initializing parameters
much as an 'AUTOEXEC.BAT' file is used to set up a DOS environment. See the
/WC (WRITE CONFIGURATION) operation.


TO MODIFY PARAMETERS PERMANENTLY:

Be sure to work on a test copy, not the original.

Use /EF to look at XPIP.EXE.
Use the T command to search for the text string "XPIP". When the string is
found, the cursor will point to the beginning of the string.

Several data fields precede the string, and some of them may be in the
previous buffer. Each field is preceded by a two-letter identifier and one
or two hex bytes which must not be changed.

ID Constants Data
-- --------- ----
"FG" FE hex "7" foreground color

"BG" FE hex "0" background color

"FW" FE hex "7" foreground color for popup menus and
other windows

"BW" FE hex "0" background color for menus and windows

"ND" 01,10 hex 16 disk drives to ignore with wildcard
spaces device

"PL" FE hex "060" default page length for use with PRINT
and /PL

"LM" FE hex "01" left margin for PRINT

"CS" 01,01 hex "|" character used to separate multiple
commands on one line


Change each color as desired, using these values:

0 black 4 red
1 blue 5 magenta
2 green 6 brown
3 cyan 7 white

Specify the disk drives to ignore by putting upper-case letters in the 16
spaces.

Enter the default print page length, up to 3 digits, right justified.

Enter the position at which to start printing each line, up to 2 digits,
right justified. The leftmost print position is number 1.

Enter the character you wish to use to separate multiple commands on a single
line. If you change from the default "|", you may wish to use "^" (shift 6),
because it is normally meaningless to XPIP.

Be sure to write the modified buffer with the W command. You must exit XPIP
and restart it in order
for the changes to take effect.

WARNING: DO NOT CHANGE ANYTHING EXCEPT THESE FIELDS.


TO MODIFY WHILE RUNNING:

Each configuration command is an equal sign and 6 characters. An optional
space may be inserted between the command and any arguments. Arguments are
not validated except that numeric data must be numeric. A command with an
invalid argument is ignored.


=COLORS fbfb fbfb indicates the colors (see above): foreground,
background, foreground for menus/windows, background
for menus/windows.

=NODISK abc abc indicates the disk drives to ignore with wildcard
device. If XPIP is currently ignoring drives and you
want it to ignore none, use a nonsense character - see
the example below.

=PAGELN nnn nnn is the default page length for PRINT with /PL.

=MARGIN nn nn is the position on a line at which to start
printing with PRINT. The leftmost position is 1.

=TIMEON Activate the DOS timer. See the section on Executing
a DOS Command.

=TIMEOF Deactivate the DOS timer.

=CLOKON Display the system clock in the upper right corner of
the screen.

=CLOKOF Turn off the clock display.

=DATEON If the clock is displayed, display the date to its
left.

=DATEOF Turn off the date display.

=CMDSEP x x indicates the character to use to separate multiple
commands on a line.

Examples:

=COLORS 7174 White on blue, menus white on red.

=NODISK B Wildcard device will ignore drive B:.

=NODISK # Do not ignore any drives.

=PAGELN55 Change the page length for printed listings to 55.

=CMDSEP^ Change the command separation character to "^".



USING THE XPIP OVERLAY

When executing a DOS command or another program, XPIP normally occupies 73k
bytes. This can be reduced to 16k bytes by using the overlay program
XPIP.OV1. XPIP commands will be processed normally, but DOS commands and
other programs cause XPIP to load the overlay from disk, execute the command
or program from the overlay, and then reload XPIP.EXE.

XPIP.OV1 and XPIP.EXE must be in the same directory, which must be the current
directory or a directory on the PATH.

Other than taking more time to start and finish executing DOS commands, use
of the overlay is transparent EXCEPT that the tree found with /TD, if any, is
lost.

To use the overlay, enter the command

=XPSMAL

at the XPIP prompt. To stop using the overlay, enter

=XPLARG

These commands can be in an XPIP command file, but XPIP cannot be modified
permanently to use the overlay.
USER-DEFINED MENUS

XPIP allows you to store a command line to be executed either with a function
key F1-F10 or via the /SC operation. You can also define a menu to display
up to 26 characters for each function key. It is up to you to be sure that,
if desired, there is a menu line for each function key in use and vice-versa.

=MENUHD text text is the heading to display.

=MENULn text text is the line to display for function key n. n=0
is used for function key 10. =MENULn must be at the
start of the line.

=MENUON Turn on the menu display.

=MENUOF Turn off the menu display. The function keys remain
active.

=FNKEYn cmdln n is the function key to load with the command line
which follows. n=0 for function key F10. =FNKEYn
must be at the start of the line. See /SC for another
means of storing commands.

=EXKEYn Execute the command stored in function key n. This
allows one function key to chain to another -
everything on the command line after =EXKEYn is
ignored.

=MENUCL Clear all menu lines and function keys. The heading
is not cleared and the menu display is not turned off.

To remove a single menu line or stored command, enter =MENULn or =FNKEYn with
no "text" or "cmdln".

Example:

Function key 1 uses the XPIP overlay to free as much memory as possible for
the word processor, then reloads the full XPIP.
Function key 7 executes a command, then chains to function key 8.

=MENUL1 Word processor
=FNKEY1 =XPSMAL | WS | =XPLARG
=MENUL2 Spreadsheet
=FNKEY2 SC
=MENUL7 List WORKFILE, show space
=FNKEY7 LP:=WORKFILE.TXT | =EXKEY8
=MENUL8 Show free disk space
=FNKEY8 /SX
=MENUL0 Application development menu
=FNKEY0 APPMENU/XC
=MENUHD XPIP Main User Menu
=MENUON

It may be most convenient to store the menu definition in a .XPC file (XPIP
command file) and load it with /XC. Remember that STD.XPC is automatically
executed when XPIP is started.
EXECUTING A DOS COMMAND

Most DOS programs or commands can be executed from within XPIP if there is
enough memory above XPIP. The DOS environment - for instance, the search
path set with the PATH command - cannot be changed from within XPIP. XPIP
normally occupies 73k bytes when executing a DOS command but can be reduced
to 16k bytes - see the section on MODIFYING XPIP CONFIGURATION - USING THE
XPIP OVERLAY.

Enter DOS commands as you would at the DOS prompt, with these restrictions:

If a command or program name contains one of these characters, it is assumed
to be an XPIP command:
* ? / . =
However, these characters are acceptable in DOS switches and arguments.

DOS switches or arguments must be separated from the command or program name
by a space. For example,

CHKDSK /F is acceptable.

CHKDSK/F is considered an XPIP command to display CHKDSK.* with a
/F switch.

XPIP uses "|" to separate multiple commands on a line, so you cannot use that
character to indicating piping of DOS commands. If you wish to change XPIP to
use a different command separator (and thereby allow piping), see the section
on MODIFYING XPIP CONFIGURATION.


NOTE: The CLS command clears the screen even if the ANSI.SYS device driver
has not been loaded.


XPIP uses COMSPEC in the DOS environment to find COMMAND.COM. The most
common problem with executing DOS commands from XPIP is that COMSPEC points
to the current directory but COMMAND.COM is not there. To check COMSPEC, use
the /IS command. XPIP will display the DOS environment, including COMSPEC.
The COMSPEC line may say:

COMSPEC=C:COMMAND.COM

COMMAND.COM is generally in the root directory, so exit XPIP and at the DOS
prompt type

SET COMSPEC=C:\COMMAND.COM


If you have a RAMdisk, you can improve the performance of DOS commands under
XPIP by putting COMMAND.COM on the RAMdisk and setting COMSPEC to point to
it. Assuming that D: is your RAMdisk drive, type these lines at the DOS
prompt (not while running XPIP) or put them in your AUTOEXEC.BAT file:

COPY C:\COMMAND.COM D:
SET COMSPEC=D:\COMMAND.COM



XPIP provides the capability to time DOS command and program execution. Type

=TIMEON

to activate the timer. Whenever a DOS command or program finishes executing,
XPIP will display the start time, stop time, and elapsed time in minutes,
seconds, and hundredths (generally accurate only to tenths). The timer
remains active until you de-activate it by typing

=TIMEOF
 COPY FILE

Format: outfile=infile[(rn1:nrecs+rn1:nrecs...)]
Options: AF BC BE BF BO BS CA CC CO DI DS ES NK NO NW SS UT

Copy each input file to the corresponding output file until the physical end
of each input file is reached (unless line numbers are specified - see
below). No concatenation is done unless /CC is also used. (See /EF for
another means of concatenation.)

Output file attributes are unchanged (if the file already exists) or cleared
(if it does not) except that "A" is set. Input file attributes are unchanged
unless the /CA option is used to clear "A". (For backing up files, see /CA,
/BO, /DI.)

To copy from one disk drive to another, the output filespec need specify only
the drive, for example

A}B:=ABC.TXT

However, as a precautionary measure, a wildcard input filespec must be
specified when copying an entire disk:

A}B:=C:* is valid.
A}B:=C: is not valid.

Examples:

A}TF.WRK=EXEC.TXT Copy EXEC.TXT to TF.WRK.

A}B:.BAK=OK.SRC Copy OK.SRC to B:OK.BAK.

A}*=\WORK\* Copy all files from directory WORK to the
current directory.

A}\*=C:\ACCTS\GLF Copy GLF.??? from ACCTS on C: to the root on A:.


COPYING SPECIFIED LINES

It is possible to copy specific lines or records from a text file. Each
record can be any length but must end with carriage return/line feed
(0Dh/0Ah). A 1Ah immediately after a record indicates end of file, but is
not a special character elsewhere.

If more than one input filespec is given, or if you want to append to an
existing file, be sure to use the /CC (concatenate) option.

A}outfile=infile(rn1:nrecs+rn1:nrecs...)

rn1 is the first record to copy. The first record in a file is record 1.

nrecs is the number of records to copy. If ":nrecs" is omitted, one
record is copied.

"+" indicates multiple sets of records.

Example:

A}NEWDATA=ACCT04.TXT(12:4+23),ACCT05.TXT(14:9)/CC
Create NEWDATA.TXT if it does not exist, or add to the end
if it already exists. Write records 12 to 15 and 23 from
ACCT04.TXT and records 14 to 22 from ACCT05.TXT.


SPECIAL EFFECT OF /UT:

Not only files but also the directory tree structure are copied. Input and
output devices must be different. Output pathname, if specified, is ignored.
For example, to copy the entire directory structure and all files from A: to
C:, first find the tree structure on A: with /TD, then copy:

A}\/TD
A}C:=*/UT

The directory structure of A: is duplicated on C: and all files in each
directory on A: are copied to the corresponding directory on C:. Directories
already on C: which do not exist on A: are not affected. If /TD starts below
the root, such as:

A}\SYS\BACKUP/TD

and if directories above the selected one do not exist on the output device
(in this case, if \SYS does not exist on C:), then those directories are also
created on the output device but the files in those directories are not
copied.

/UT asks you whether to operate on each directory. This allows you to skip
copying the files in individual directories, but the directories will be
created on the output drive in any case.
 PRINT/DISPLAY FILE

Format: [outdev=]infile
Options: AF BC BE BS CO DS ES FF MK NW PL SS US UT

Depending on the output device, list each file on the printer or display it
on the monitor until either physical end of file or a control-Z (1A hex) is
encountered.

outdev is the printer (LP:, LST:, or LPT:) or the monitor (KB:, TTY:, or
CON:). Filename and extension are ignored if given with one of these
devices. If "outdev=" is omitted, "KB:=" is assumed.

Each line in the file is assumed to end with carriage return/line feed. The
display of each line is limited to 160 characters - additional characters are
ignored. Null characters (00 hex) are displayed or printed as spaces.


PRINT:

Printing can be moved to the right on the page by changing the left margin
with the =MARGIN command - see the section on MODIFYING XPIP CONFIGURATION.


DISPLAY:

The default page (screen) length is 25 lines if /PL is not used. XPIP can
display a file with over 2000 pages.

Scroll speed is initialized to the highest possible speed. If it is changed,
the new speed remains in effect until it is changed or XPIP is exited. The
following can be entered while scrolling:

Key Action
--- ------
H Scroll at highest speed.
L Scroll at low speed.
F Scroll faster - enter repeatedly if desired.
S Scroll slower - enter repeatedly if desired.
Ctl-C Cancel display, skip remaining commands.

Any other key freezes the display and shows the number of the last line on
the screen. Enter one of the following:

Key Action
--- ------
Home Display first page.
End Display last page.
PgUp Display previous page.
PgDn Display next page.
DnArrow Scroll down 1 line.
LfArrow Scroll left 20 columns.
RtArrow Scroll right 20 columns.
Ctl-LfArw Scroll left to start of each line.
Ctl-RtArw Scroll to rightmost 80 columns.
N Ask for line number - display the page with that line.
A Show file address of the first line on the page, for use with
the /EF operation.
T Text search, up to 40 characters. Question mark (?) is a
wildcard character. You must page down before searching for
the next occurrence.
Esc End display of this file, display next if more than one in the
command.
Ctl-C End display, skip other files in the command.
F10 Display Help window.
Any other key resumes scrolling continuously.

Examples:

A}LP:=.TXT Print all .TXT files.

A}ABC.DOC Display ABC.DOC on the monitor.

A}KB:NP.TXT=ABC.DOC Same as preceding example.
MF MOVE FILE TO DIFFERENT DIRECTORY

Format: outfile=infile/MF
Options: AF BC BE BS CO DS ES MK NW SS US

Move input files to the output directory, and rename them if output filename
and/or extension is different from input. Files are not copied - directory
entries are moved, so input and output must be on the same device. If input
and output are in the same directory, then the files are just renamed, the
same as /RF, except that /MF ignores directory names and volume ID.
Attributes are not changed.

If an output file already exists, a message is displayed and the input file
is not moved.

Examples:

A}*=\DIST\CHKS.DAT/MF Move CHKS.DAT from DIST to the current
directory.

A}\BK\.BAK=\MPS\.TXT/MF Move .TXT files from directory MPS to BK and
rename them to .BAK.

/MF can order directory entries by filename, extension, file size, or date
and time, or so that frequently-used files occur at the start of the
directory. To do this, make a new directory, move entries in the desired
order, and either use the new directory or move the entries back to the
original in the new order. For example, if we are in directory \SYS, and we
want XPIP.EXE to be the first file in the directory, followed by the other
files sorted by filename:

A}\TMP/MD Make temporary directory.
A}\TMP\*=XPIP.EXE/MF Move XPIP.EXE.
A}\TMP\*=*/MF Move others, sorted by filename (default).

If \SYS has no subdirectories:

A}\TMP/CD Change to the new directory.
A}\SYS/RD Remove \SYS.
A}SYS=\TMP./RF Rename \TMP to \SYS.

If \SYS has subdirectories:

A}*=\TMP\*/MF/US Move entries back to \SYS without changing
order.
A}\TMP/RD Remove temporary directory.
AC CLEAR FILE ATTRIBUTES

Format: infile/ACf
Options: AF BC BE BS CO DS ES MK NW SS US UT

"f" indicates one or more attributes to clear. The attributes can be given
in any order. If a specified attribute is already cleared, it remains
cleared and any other specified attributes are cleared. See FILE ATTRIBUTES.

Examples:

A}ABC.TXT/ACRS Clear Read-only and System attributes.

A}.COM/ACS Clear System attribute on all .COM files.
AS SET FILE ATTRIBUTES

Format: infile/ASf
Options: AF BC BE BS CO DS ES MK NW SS US UT

"f" indicates one or more attributes to set. The attributes can be given in
any order. If a specified attribute is already set, it remains set and any
other specified attributes are set. See FILE ATTRIBUTES.

Examples:

A}PROG.COM/ASHS Set Hidden and System attributes.

A}.BAK/ASR Set all .BAK files to Read-only.
QF COMPARE FILES

Format: outfile=infile/QF
Options: AF BC BE BO BS CO DI DS ES MK NW SS US UT

Compare each input file to the corresponding output file and indicate whether
they are identical or different. If different, the message gives the address
in the file (for use with /EF) of the first difference. If an input file has
no corresponding output file, a message is displayed (unless /BO is used) and
XPIP goes on to the next input file. If an output file has no corresponding
input file, it is ignored.

If /NW is used, only those files with differences are shown.

/QF can be useful to compare files on two disks such as a work disk and a
backup (see also /QD). For example,

A}B:=.ASM/QF

finds every .ASM file on A:, compares it to each file with the same name on
B:, and displays a message for each. If there is a .ASM file on A: with no
such file on B:, XPIP displays a message and goes on to the next file on A:.
If there is a .ASM file on B: but no such file on A:, it is ignored.
DE DELETE FILE

Format: infile/DE
Options: AF BC BE BS CO DS ES MK NW SS US UT

Delete files matching the input filespec. For safety, if the filespec
contains a wildcard and neither /CO nor /MK is used, XPIP asks for
confirmation. With a wildcard device, confirmation is asked for each disk
drive. A response of Y for Yes or A for All (no RETURN is needed) performs
the deletion; any other response cancels it.

Example:

A}.HLD/DE
Delete 12 files matching A:\????????.HLD ?

Asked by XPIP. Y or A deletes the files; anything else,
no action is taken.
DF DESTROY FILE

Format: infile/DF
Options: AF BC BE BS CO DS ES MK NW SS US UT

This is the same as /DE (Delete File) except that before a file is deleted,
every byte in the file is overwritten with 1Ah (end of file) so that even if
the file is "unerased," the data cannot be recovered.
EF EDIT FILE

Format: infile/EF
Options: none

Edit a file. The program displays a skeleton for a 256-byte buffer, and two
sets of prompts:

File
Command

Address is for display only and is not a prompt.


FILE:

When done editing a file, the program returns to this prompt to ask for
another file.

Esc - for file 2, closes the file and returns to file 1; for file 1, closes
files 1 and 2 and returns to the normal XPIP prompt.

If the filespec contains a wildcard, the first matching file is used.
If the file is found, the first 256 bytes are displayed in hexadecimal and
ASCII. Characters less than 20 hex or greater than 7E hex are displayed as
periods in the ASCII area (but see the Filter command below).

If file 1 is not found, a message is displayed and, if the filespec is valid
and contains no wildcards, the program asks whether to create the file. Y
creates it; anything else returns to the "File" prompt without creating it.
If file 2 is not found or the filespec is invalid, the program just returns
to the "File" prompt and the "Create" question is not asked.


COMMAND:

Enter commands (single characters or function keys) or file address. Press
ENTER only when specifying an address.

Tab Toggle from file 1 to file 2 or vice-versa. The same capabilities
exist for both files except that file 2 cannot be created if it does
not exist, and the Copy command copies only from file 2 to file 1.

Address Up to 26 characters in the form of a /MA expression - however, omit
"/MA" at the end. The first character must be a digit (leading zero
if necessary) so it is not considered one of the commands below -
for example, 0A3,H. "%" indicates the current address - for
example, "%+200,H" advances 512 bytes from the current address.
Address is limited to 16 MB (16,777,215 decimal = FFFFFF hex).

Home Display the first 256 bytes.

End Display the last 256 bytes.

PgUp Back up 256 bytes.

PgDn Advance 256 bytes.

UpArrow Back up 16 bytes.

DnArrow Advance 16 bytes.

LfArrow Back up 1 byte.

RtArrow Advance 1 byte.

If you display an address past the end of the file, a message is displayed
and the buffer is filled with null characters (00 hex). The file can be
extended by ignoring the message and writing the buffer with the W command,
modifying it first, if desired, with the A or H commands (see below).

If the file size is not a multiple of 256 bytes and the end of the file is
displayed so that it does not fill the buffer, the buffer is padded with null
characters and the message "Partial buffer" is displayed. The nulls are not
written in the file unless the buffer is written with the W command (see
below).


A Modify data with ASCII input from the keyboard.

Arrows Move the cursor.

TAB Toggle hexadecimal/ASCII-modify mode.

Ctl-Home Reposition the buffer so the character under the cursor is
at the start of the buffer.

Ctl-RtArrow Repeat the character to the left of the cursor.

Ctl-End Fill the remainder of the buffer with the character to the
left of the cursor.

Ctl-Z Truncate the file so that the byte under the cursor is the
last byte in the file.

Esc Return to "Command."


H Modify data with hexadecimal input - similar to ASCII modify except
that you must enter two characters (each in the range 0-9, A-F) for
each byte.

@ Display the ASCII character table.


F Filter - toggle the display filter. Initially, the ASCII lines show
as periods all characters with values less than 20 hex or greater
than 7E hex. Toggling the filter displays the actual characters
except that nulls (00 hex) are shown as periods.


C File 1 is overwritten, starting at the current address, with the
specified number of bytes from file 2, starting at its current
address. Data can be added at or beyond the end of file 1. The
number of bytes can be specified as a /MA expression in the same way
as the address. When done, file 2 is displayed starting with the
byte after the last one copied.

To concatenate file 2 to file 1:

Press End to get to the end of file 1.

Press PgDn. This gets past the end of the file and displays a
message.

Press TAB, then enter the name of file 2.

Type "C".

Enter the number of bytes at least as large as the file.


M Enter a mathematical expression at the prompt in the same format as
/MA. "/MA" can be omitted for a decimal result; for a result in a
different base, "/MA" must be present, just as for a /MA command.


P Print the current buffer in the same format as it is displayed. A
form feed is printed after each buffer.


S Search for a hex string. A prompt appears for you to enter a
string. For each byte, enter 1 or 2 characters, each in the range
0-9 or A-F and separated from other bytes by one or more spaces, for
example "A4 3 1A". Hex 3F (question mark) is a wildcard character.
The current buffer and all succeeding ones are searched. If a hex
string has already been entered for this file, it is displayed and
ENTER uses that string, starting with the NEXT buffer. If the string
is found, the buffer of interest is displayed with the cursor at the
beginning of the string, in hex-modify mode; if not found, a message
is displayed with the current buffer. ^C during the search stops
and returns to "Command."


T Search for an ASCII string - similar to hex search except that if
the string is found, XPIP remains in ASCII-modify mode.


W Write the current buffer to the file. If a buffer is changed with
the A or H commands or if a buffer is created, the changes are not
permanent unless the buffer is written with W. Remember that a
successful search (S, T commands) leaves XPIP in hex or ASCII modify
mode, so that changes after a search must also be made permanent
with the W command.


@ Show the ASCII character table (same as the /AT operation).
RF RENAME FILE

Format: outfile=infile/RF
Options: AF BC BE BS CO DS ES MK NW SS US UT

Each file matching the input filespec is renamed to the output filespec.
Subdirectories and volume ID can also be renamed. The device and pathname in
the output filespec are set to the same as the input filespec immediately
before each rename operation, so that, for example,

A}X??=A:Y??,B:\SYS\Z??/RF

is valid. This means that the output filespec need contain only that part
(filename or extension) which is being changed - see the examples.

Examples:

A}.BAK=B:WK??.HLD/RF If, say, files WK20.HLD and WK30.HLD are present
on B:, they are renamed to WK20.BAK and
WK30.BAK.

A}C:ABC=A:FX.COM/RF The output drive specification is forced to be
the same as the input, so A:FX.COM is renamed to
A:ABC.COM.

A}FINAL=\WRK\TT./RF TT in directory WRK is renamed to FINAL. It may
be a subdirectory.

A}8612.DAT=\VOL./RF VOL. in the root directory is renamed to
8612.DAT. It may be a subdirectory or the volume
ID.
TF TEXT SEARCH

Format: [outfile=]infile/TF[string]
Options: AF BC BE BS CO DS ES FI MK NW SS US UT

You can specify the search string after /TF (unless it contains a slash or
space); if you do not, XPIP asks for the text (up to 40 characters) for which
to search. ? is a wildcard character. XPIP searches the first 160
characters of each line in each input file. It displays each filespec and,
for each occurrence of the text, the line number in the file and the line
itself.

If there is an output file (spool file), whatever is displayed on the monitor
is written in the file. See /LD for more information on spool files.

If /NW is used, filespecs are displayed only for files containing the desired
text.

If /FI is used, /TF looks only for the first occurrence of the string in each
file.

Example:

A}LTR??.TXT/TF Files to search
Search for: Jones Text to search for
File: A:\LTR10.TXT First file - no occurrences
File: A:\LTR12.TXT Second file - 2 occurrences
8 Dear Mr. Jones,
25 case you will see, Mr. Jones, that we
LD LONG DIRECTORY LIST

Format: [outfile=]infile/LD
Options: AF BC BE BS ES ES NW SS US UT

Display information for each file matching the input filespec, including
those with Hidden and System attributes (Hidden and System files are ignored
by the DOS DIR command):

filename and extension
file size in bytes
date and time
attributes

On the right side of the screen are shown the total number of files and the
number of bytes they occupy.

If an entire disk is shown, the number of bytes occupied plus the number free
may not equal the capacity of the disk, because the size of a file is
generally less than the number of bytes allocated on the disk. For instance,
space is allocated on some diskettes in clusters of one kilobyte. If a file
is only 256 bytes, it still removes 1024 bytes from the free space.

Enter the following to manipulate the display:

Key Action
--- ------
PgUp Display the previous screen.
PgDn Display the next screen.
Home Restart the display.
End Display the end of the directory.
F8 Display short directory (/SD).
F1 Sort by filename and redisplay.
F2 Sort by extension and redisplay.
F3 Sort by file size and redisplay.
F4 Sort by date and time and redisplay.
F5 Invert sort order - ascending to descending or vice-versa.
Ins Mark file - display in reverse video.
Del Unmark file - display in normal video.
F6 Invert markers - change marked to unmarked and vice-versa.
DnArrow Advance a line.
UpArrow Back up a line.
LfArrow Point to top of page.
RtArrow Point to bottom of page.
F7 Advance to next marked file.
Any letter Advance to next filename starting with that letter.
Ctl-F1 Display the file at the cursor.
Ctl-F2 Print the file at the cursor.
Ctl-F3 Edit the file at the cursor.
Ctl-F4 Search the file at the cursor for a text string.
Ctl-F5 Change to the directory at the cursor and do /LD. The
remainder of the command line is lost.
Ctl-F9 Delete the file at the cursor.
Ctl-F10 Destroy the file at the cursor.
Esc Do /LD for next filespec in the list.
Ctl-C Cancel listing - return to the prompt.

Ctl-C and Esc have the same effect if the command contains one filespec. If
more than one, Esc does the next filespec but Ctl-C goes to the prompt for
another command.

SPOOL FILES

If an output file (spool file) is specified, it cannot contain a wildcard
character and is created if it does not exist. The displayed directory list
is appended to the end of the file, one line for each directory entry and
preceded by

Directory of d:infile

where "d:infile" is the /LD input filespec. If /NW is also used, this line
does not appear and the directory is NOT displayed on the screen - this
eliminates the need for a user response when creating a spool file with, for
instance, an XPIP command file. If there is no spool file, /NW has no
effect. In any case, the /LD column headings and summary information do not
appear in the file.

Examples:

A}/LD Display directory of all files on the default
drive.

A}DIRFILE.=*/LD Display default drive directory. Create, or
append to, file DIRFILE.bbb ("bbb" indicates 3
spaces) and list the directory in the file.
Note that output extension (in this case,
spaces) and input filespec (in this case, "*")
must be given.

A}DIRFILE=/LD This command has two errors:
(1) The output filespec has a wildcard
extension.
(2) No explicit input filespec is present.
SD SHORT DIRECTORY LIST

Format: [outfile=]infile/SD
Options: AF BC BE BS DS ES NW SS US UT

Show filename and extension for each file matching the input filespec,
including those with Hidden and System attributes (Hidden and System files
are ignored by the DOS DIR command.) /SD is accessible from within /LD.

5 files per line are shown. If the screen is filled, the program displays
"Esc to quit, any other key to continue". Pressing Esc stops the listing;
any other key displays another screen. When done, the number of files listed
and the total number of bytes in the files are also displayed - see /LD.

Output files (spool files) work the same as with /LD except that only filename
and extension are written in the file (one per line). See /LD for more
information and examples.

Examples:

A}C:.COM/SD Show all .COM files on drive C:.

A}/SD Show all files on default disk.

A}.TXT,B:DAT*/SD Show .TXT files on default disk, then files on
B: matching DAT?????.*.

A}\*/SD/BSV Show the volume ID, if any, for the default
drive. /BSV means select directory entries with
the volume ID attribute.
QD COMPARE DIRECTORIES

Format: outfile=infile/QD
Options: AF BC BE BO BS DI

Compare directory information (filename, extension, size, date, time) for
each "input" and "output" file. Files are sorted by filename and extension.
Input files are shown on the left half of the screen, output on the right,
with blanks on one side if a file exists only on the other. If a file is on
both sides, reverse video indicates that the directory information is the
same on both sides, normal video that there is a difference in size, date, or
time.

This would generally be used to compare different directories on the same or
different drives, but it can show, say, .TXT files on one side and .BAK files
on the other.

Examples:

A}B:=*/QD Display information for all files in current
directories on A: and B:.

A}B:\SAVE\*=.TXT/QD Similarly for .TXT files in current directory on
A: and all files in directory SAVE on B:.
DD FIND DUPLICATE FILES

Format: infile/DD
Options: UT

/UT is implied and need not be specified. If more than one file with the
same filespec occurs in the tree, the filespec and the directory name of each
occurrence is displayed. Use Home, End, PgUp, PgDn, or the first letter of a
filespec to move through the display. F1 displays the date, time, and size
for each occurrence of the filespec at the top of the screen.
CD CHANGE OR SHOW CURRENT DIRECTORY

Format: [pathname]/CD
Options: NW

If a pathname is specified, change the current directory. If no pathname or
just a disk drive is given, display the pathname of the current directory.

For other ways to change directory, see the INTRODUCTION (editing keys), /TD,
and /LD.

Examples:

A}C:/CD Show current directory on C:.

A}../CD Change directory to the parent of the current.

A}\WP\TEXT/CD Change directory to \WP\TEXT.
MD MAKE DIRECTORY

Format: pathname/MD
Options: NW

Create the specified directory. It must not already exist.

Examples:

A}\BACKUP/MD Create directory BACKUP.

A}B:.\WORK/MD Create WORK as a subdirectory
or of the current directory on B:.
A}B:WORK/MD
RD REMOVE DIRECTORY

Format: pathname/RD
Options: NW UT

Remove the specified directory. It must be empty and must not be the current
directory. /RD/UT tries to remove all directories found by the last /TD.

Examples:

A}..\DATA/RD Remove DATA from the parent of the current
directory.

A}\TEST/TD/NW Find the "subtree" under \TEST.
A}/DE/UTA/NW Delete all files in the subtree.
A}/RD/UTA Remove the entire subtree.
TD SHOW TREE STRUCTURE

Format: [pathname]/TD
Options: NW SS US

For the specified directory and each one below it (up to a total of 50), show
the number of directory entries and the total number of bytes in those
entries. If no pathname is given, display the tree found by the last /TD or,
if /TD has not yet been done, use the root. /TD must be performed before the
/UT option is used with other operations.

/SS sorts the tree by size - that is, by the number of bytes occupied by all
files in each directory.

/US shows the tree in the order in which it occurs on the disk.

If neither /SS nor /US is used, sort the tree by directory name.

/NW - the tree is stored for use with /UT but is not displayed.

When the tree is displayed, the following keys can be used:

Key Action
--- ------
PgUp Display the previous screen.
PgDn Display the next screen.
Home Restart the display.
End Display the end of the tree.
F1 Sort by name and redisplay.
F2 Sort by size and redisplay.
DnArrow Advance a line.
UpArrow Back up a line.
LfArrow Point to top of page.
RtArrow Point to bottom of page.
Any letter Point to next directory starting with the letter.
Ins Change current directory.
F10 Display Help window.
Esc Do /TD for the next directory in the list if more than one in
the command.
Ctl-C Cancel listing and return to prompt.

Examples:

A}\/TD Show the entire directory tree structure for the
default drive.

A}C:\DATA/TD Show the directory structure under \DATA.
MV MAKE VOLUME ID

Format: infile/MV
Options: W

The specified volume ID is created. If an ID already exists, the directory
is full, or the filespec is invalid, a message is displayed and the ID is not
created. See /RF to change an existing volume ID.

Example:

A}B:VOLID/MV Create volume ID VOLID on B:.
CX CHANGE DEFAULT DRIVE

Format: d:/CX
Options: NW

The default drive is changed to the specified device. This has no effect if
no device is given.
SX SHOW DISK SPACE

Format: [d:]/SX
Options: none

d: denotes a disk drive. If it is omitted, the default drive is used. XPIP
shows the number of bytes free and the total number of bytes on the specified
drive.

Examples:

A}/SX Show space on default drive.

A}A:,C:/SX Show space on drives A: and C:.

A}*:/SX Show space on all drives.
IX SHOW DISK INFORMATION

Format: [d:]/IX
Options: none

d: denotes a disk drive. If it is omitted, the default drive is used.
Display the information listed below. You can examine other drives by
entering another drive letter, or press Escape when you are done.

Logical drives on the system.
Drive for which information is being displayed.

This information is from the drive's BIOS Parameter Block:

Media descriptor byte, indicating the type of drive. For instance, F8
indicates a hard disk.
Number of reserved (boot) sectors and their starting sector number.
Number of FATs (File Allocation Tables), the number of sectors used for
each copy, and the starting sector number for the first FAT.
Maximum number of entries in the root directory, and the starting sector
number of the root.
Starting sector number for data.

This is from DOS:

Number of bytes on the disk, the number free, and the percentage free.
Number of clusters on the disk and the number free. A cluster is the
unit in which space is allocated - if a file occupies a fraction of a
cluster, a whole cluster is removed from the disk's free space.
Number of bytes per sector.
Number of sectors per cluster.

This is from the drive's boot sector (some drives do not have a boot sector):

OEM's name and version (up to 8 bytes).
Number of sectors/track.
Number of heads.
Number of hidden sectors.

Example:

A}/IX Show parameters for the default drive.
IS SHOW SYSTEM INFORMATION

Format: /IS
Options: none

Display the following information:

DOS version number.
ROM date (may be incorrect for some PC compatibles).
BIOS version and copyright notice (may be incorrect for some compatibles).
Ctl-Break Check setting.
Disk Verify setting.
Amount of memory installed, up to 640k bytes.
Amount of memory available above XPIP for use by DOS commands and other
programs.
Number of serial ports.
Number of parallel ports.
Number of game adapters.
DOS environment, including COMSPEC and PATH.

Under Netware, also show:

Network interface address.
File server address.
AT ASCII CHARACTER TABLE

Format: /AT
Options: none

Display ASCII characters and their decimal and hexadecimal values, plus 2- or
3-character mnemonics for values less than 33.
SC ACCESS STORED COMMANDS

Format: /SC
Options: none

XPIP stores 20 command lines which can be edited and executed. A to J are
the last ten command lines entered at the normal XPIP prompt, with J the most
recent. 0 to 9 are entered via the /SC screen or with the =FNKEY command
(see the section on MODIFYING XPIP CONFIGURATION). Commands 0 to 9 can also
be executed, but not changed, from XPIP's normal prompt by pressing function
key F1 to F10. (F10 executes command 0.)

To access the stored commands, enter Esc or /SC. XPIP displays the stored
commands and asks you to specify one. Esc leaves the stored-command screen
and returns to the normal prompt. Enter a character from 0 to 9 or A to J to
enter, edit, or execute a command. On the next line, XPIP displays its
normal prompt followed by the current contents of the selected command, which
may be blank. Enter or edit the command, using the editing keys listed in
the Introduction plus the following:

Ctl-C Cancel editing this command - do not change it.
Esc Store changed command.
ENTER Store changed command AND execute it.
TAB Copy the command being edited to a different command.
XC EXECUTE COMMAND FILE

Format: infile/XC
Options: none

The filespec names a file which contains XPIP or DOS commands. If extension
is omitted, ".XPC" is used. If other wildcards are used, or if a list of
files is given, XPIP executes the first matching file it finds and ignores
others.

(When XPIP is started, it searches for file STD.XPC, first in the current
directory and then in the DOS PATH directories, and executes it with /XC.
See the section on MODIFYING XPIP CONFIGURATION.)

Each line in the file (except configuration commands) is echoed at the
terminal and then executed as if you had entered it directly, except that
blank lines are ignored, and the following characters indicate comments when
used as the first non-blank character in a command. These characters
themselves are not displayed.

; The line is displayed but no processing is performed.

+ The screen is cleared before the line is displayed.

! The line is displayed, followed by the line "Esc to quit, any other
key to continue". Esc terminates execution of the command file.

~ (tilde) The line is displayed, followed by the line "Press any key
to continue".

If a command in the file requires a response (for example, /CO), you must
enter the response when the command is executed - responses contained in the
command file will not be executed properly.

Example:

File XPCMD.XPC contains these lines:

;BACKING UP SOURCE FILES Display comment
B:.BAK=.SRC/NW Copy the files
!CHANGE DISKS Show "Esc" message and then continue
if Esc is not entered.
BACKDOC/XC Look on the new disk for BACKDOC.XPC
and execute it.
WC SAVE CONFIGURATION

Format: outfile/WC
Options: none

All of XPIP's configuration parameters (see the section on MODIFYING XPIP
CONFIGURATION), plus the stored commands assigned to function keys F1-F10 and
the user-defined menu parameters, are written in the specified file. (Note
that XPIP's pulldown menu refers to it as an input file.) The extension
defaults to .XPC; no other wildcards are allowed. If the file already
exists, it is overwritten.

The file can be loaded with /XC to reconfigure XPIP to the saved state. This
allows you to configure XPIP, define stored commands and menus, try them out,
and save them when satisfied. Alternatively, the file can be used as a
template to be used with a text editor to fill in desired parameters.
MA MATHEMATICAL FUNCTIONS

Format: expression/MAn
Options: none

"expression" is a mathematical expression with the following constraints:

(1) Valid operators are the arithmetic operators */+- and logical operators
& (AND), U (OR), and X (XOR). If no operator is given, the expression (a
single number) is redisplayed in the specified base - see below.

(2) Expressions are evaluated from left to right - there is no special
precedence of operators, and parentheses are not allowed.

(3) Arithmetic operators: partial and final results are limited to 11 decimal
digits before the decimal point and 6 digits after. If overflow occurs,
the sign and most significant digits are truncated and the least
significant are rounded.

(4) Logical operators: operands are truncated to 16-bit integers plus sign
(that is, -65536 to +65535), and results are non-negative 16-bit integers
(0 to +65535).

(5) Each operand is assumed to be decimal unless a different base is
specified by following the operand with a comma and the base, which must
be in the range 2 (binary) to 16 (hexadecimal). Hex operands can also be
designated by specifying base "H":

A}20,H+32/MA Add 32 (decimal) to 20 (hex) and display the
result in decimal.

Fractional operands can be specified with a "base point" (decimal point
in base 10), such as

A}.01,2+4.2,8/MA One fourth plus four and two-eighths.

(6) An operand can be an ASCII string enclosed in quotes or apostrophes. The
ASCII value of the first character is used and succeeding characters are
ignored. If quotes are unbalanced, the expression is considered a DOS
command, resulting in an error message.

A}"AB"/MA Display the ASCII value of "A".


Displaying results in non-decimal bases:

"n" following /MA is an optional base, in the range 2 to 16 (or H for
hexadecimal), in which to display the result. The result in a non-decimal
base is rounded to the nearest integer, and can be up to 20 digits in that
base.


Examples:

A}12+20,H/MA8 Display the result of 12 (decimal) plus 20 (hex)
in octal.

A}FA,H/MA2 Display FA (hex) in binary.

A}10011101,2*5D,15-2.4,9/MA5
Multiply 10011101 binary by 5D base 15 and then
subtract 2.4 base 9; display result in base 5.

A}2F,H&1011,2/MA2 Logically OR 2F hex with 1011 binary and show
the result in binary.
MK MARK DESIRED FILES

Format: /MK
Used with: COPY PRINT/DISPLAY AC AS DE DF MF QF RF TF

A long directory (see /LD) is displayed. Each listed file has a marker
associated with it. The file markers are initialized to "No" - no files are
to be operated on. Enter the /LD commands to display different pages of the
directory, to re-sort the directory, and to mark the files on which XPIP is
to operate, with these differences:

Esc indicates that you are done marking, and the operation is then
performed on all marked files.

Ctl-function keys have no effect.
CO CONFIRM EACH FILE

Format: /CO
Used with: COPY PRINT/DISPLAY AC AS DE DF MF QF RF TF

For each file matching the input filespec, XPIP displays the operation,
filespec, and a question mark. Respond with one of the following (ENTER
should not be pressed if a character is entered):

Y Operate on that file.
A Operate on that and all remaining files - turn off /CO.
Ctl-C Skip that file and the rest of the command.
Any other response skips that file.

NOTE: With /MK, no operation is performed until you enter Esc to indicate
that all files have been marked; with /CO, though, the operation is performed
immediately on each file when you enter Y.

Example:

A}TEST??.TXT,WORK*.HLD/DE/CO
Delete A:\TEST12 .TXT ? Y Delete the file
A:\TEST12 .TXT deleted
Delete A:\TEST25 .TXT ? N No delete
Delete A:\TESTWZ .TXT ? ^C No delete; skip remaining TEST??.TXT
and all WORK*.HLD.
BC SELECT BY ATTRIBUTE CLEAR

Format: /BCf
Used with: COPY PRINT/DISPLAY AC AS DE DF LD MF QF RF SD TF

Files with attribute "f" clear are operated on. Only one attribute can be
specified. See FILE ATTRIBUTES.

Example:

A}/SD/BCS Display directory of all non-System files.
BS SELECT BY ATTRIBUTE SET

Format: /BSf
Used with: COPY PRINT/DISPLAY AC AS DE DF LD MF QF RF SD TF

Files with attribute "f" set are operated on. Only one attribute can be
specified. See FILE ATTRIBUTES.

Examples:

A}/SD/BSR Display directory of all Read-only files.

A}B:=*/BSS Copy all System files from A: to B:.

See option /CA for an example using /BS to back up files.
AF SELECT ON OR AFTER DATE/TIME

Format: /AFyymmdd hhmm
Used with: COPY PRINT/DISPLAY AC AS DE DF LD MF QF RF SD TF

Operate on all files with directory date on or after the specified date.
This can be used with /BE to specify a period of time. The only validation
is that the date must be 6 digits.

Time can optionally be specified, in the form HHMM, using a 24-hour clock.
The only validation is that it must be 4 digits. Spaces can be used to
improve readability - see the example.

Example:

A}B:=.SRC/AF870214/BE870218 Copy from A: to B: all .SRC files with
date between 2/14/87 and 2/18/87
inclusive.

A}/LD/AF8711021452 Each shows the
A}/LD/AF871102 1452 directory of all files
A}/LD/AF87 11 02 14 52 after 2:52 PM, 11/2/87.
BE SELECT ON OR BEFORE DATE/TIME

Format: /BEyymmdd hhmm
Used with: COPY PRINT/DISPLAY AC AS DE DF LD MF QF RF SD TF

Operate on all files with directory date on or before the specified date.
This can be used with /AF to specify a period of time. The only validation
is that the date must be 6 digits. See /AF for information on specifying
time and for examples.
UT USE TREE FOUND BY /TD

Format: /UT[A]
Used with: COPY PRINT/DISPLAY AC AS DE DF LD QF RD RF SD TF

The operation is performed on all directories found by the last /TD
operation. The input disk drive must be the same as that used with /TD.
Before operating on each directory, the directory name is displayed, followed
by a question mark. Respond with one of the following (ENTER should not be
pressed if a character is entered):

Y Operate on that directory.
A Operate on that and all remaining directories - display
each name but do not ask this question.
Ctl-C Skip that directory and the rest of the command.
Any other response skips that directory.

If /UT is followed by "A" (that is, "/UTA"), then all directories are used as
if you had responded "A" to the first question, and no such question is
asked.

See COPY regarding the special effect of copying with /UT.

Example:

To search in all directories found by the last /TD for all .TXT files with
date on or after July 1, 1987:

A}.TXT/SD/AF860701/UT
\ ? Y Search the root directory.
X08-No files matching A:\????????.TXT
\LETTERS ? Y Search directory \LETTERS.
HELP4 .TXT FINDER .TXT
2 files 7808 bytes
\DATA ? N Don't search directory \DATA.
\DATA\OLD ? ^C Cancel the operation.
DS SORT BY DATE AND TIME

Format: /DS
Used with: COPY PRINT/DISPLAY AC AS DE DF LD MF QF RF SD TD

Files matching the input filespec are sorted by directory date and time
before any operation is performed.
ES SORT BY EXTENSION

Format: /ES
Used with: COPY PRINT/DISPLAY AC AS DE DF LD MF QF RF SD TF

Filespecs matching the input filespec are sorted by extension, then by
filename, before any operation is performed.
SS SORT BY FILE SIZE

Format: /SS
Used with: COPY PRINT/DISPLAY AC AS DE DF LD MF QF RF SD TD TF

Files matching the input filespec are sorted by file size, then by filespec,
before any operation is performed.

/TD: The tree structure is sorted by the number of bytes in all files in
each directory.
US USE UNSORTED DIRECTORY

Format: /US
Used with: COPY PRINT/DISPLAY AC AS DE DF LD MF QF RF SD TD TF

If this option is NOT used, all filespecs matching the input filespec are
sorted before any operation is performed. With this option, files are
operated on in the order in which they occur in the directory.

/TD: The above applies to directory names in the directory tree structure
rather than to filespecs.
NW DO NOT WARN OF EACH ACTION

Format: /NW
Used with: COPY PRINT/DISPLAY AC AS CD CX DE DF LD MD MF QF RD RF SD TD TF

When /NW is NOT used, a message is displayed indicating the operation
performed on each input file, directory, or device. This message is
displayed when the operation is complete, except for COPY, PRINT and DISPLAY,
in which case it appears before the operation begins on each file. (If the
operation does not run to completion, an explanatory message is displayed
instead.) If /NW is used, no message is displayed for successful operations.

/LD, /SD: If a spool file is used, the directory is NOT displayed on the
screen, and the heading line "Directory of d:infile" does not appear in the
spool file. If there is no spool file, then /NW has no effect.

/QF: A message is displayed only for files with differences.

/TD: The tree is stored for use with /UT but is not displayed.

/TF: Filespecs are displayed only for files in which the desired text was
found.
FF PRINT FORM FEED AFTER EACH FILE

Format: /FF
Used with: PRINT

Print a form feed (go to the top of the next page) at the end of each printed
file.

Example:

A}LP:=MSG1.TXT,PROG.DOC/FF Print file MSG1.TXT, go to the top of
the next page, print PROG.DOC and go
to the top of the next page.
PL SET PAGE LENGTH

Format: /PLn
Used with: PRINT/DISPLAY

"n" is the number of lines per page, from 1 to 65,535.

DISPLAY:

If no page length is entered (just "/PL" is used), the default is 24 lines.
If /PL is used, a page is displayed and XPIP stops for a response; if /PL is
NOT used, the display scrolls continuously until a key is pressed - see the
DISPLAY operation.

PRINT:

A form feed is printed every n lines. If no page length is entered (just
"/PL" is used), the default is 60 lines unless the default value has been
modified - see the section on MODIFYING XPIP CONFIGURATION.

XPIP asks for the line number in the file at which to start printing. ENTER
or a number less than two starts at the beginning of the file; if ENTER or a
number less than one is entered and the command specifies more than one file,
then XPIP will not ask for starting line number for each of the remaining
files. If a number is entered which is larger than the number of lines in the
file, the number of lines in the file is displayed but the file is not
printed.

XPIP asks for a page heading. If no heading is entered (that is, if you
press ENTER), then neither heading nor page number will be printed, and if
the command specifies more than one file, XPIP will not ask for a heading for
each of the remaining files. If entered, the heading should be less than 64
characters, because the page number is printed starting in column 65. Two
blank lines are also printed, and all three lines are included in the line
count used for /PL.

Examples:

A}LP:=ADDRLIST.DAT,PHONES.DAT/PL50/FF
Print the two files. Print a form feed every 50
lines (/PL50) and after each file (/FF).

A}ADDRLIST.DAT/PL Display the file on the monitor. When the
screen is full, show the number of the last line
and wait for a response.
CA CLEAR "A" ATTRIBUTE AFTER COPYING

Format: /CA
Used with: COPY

DOS sets the "A" attribute whenever a file is created or modified. This
option clears the "A" attribute from the input file when the file is copied.
This is useful for backing up files. For example, if all .TXT files are
backed up with

A}B:=.TXT/CA

then the "A" attribute is cleared from each .TXT file on A:. The next time a
backup is done, the following command will copy only those files which have
been created or modified since the previous backup, and will clear the "A"
attributes to allow the process to be repeated with future backups:

A}B:=.TXT/BSA/CA
NO DO NOT OVERWRITE FILES

Format: /NO
Used with: COPY

If the output file already exists, a message is displayed and the copy is not
performed.
CC CONCATENATE FILES

Format: /CC[A]
Used with: COPY

Instead of a straight copy, the input files are concatenated to the output
file. If the output file already exists, the input files are appended to it;
if the output does not exist, it is created.

/CC removes trailing nulls (00 hex) and end-of-file characters (1A hex)
from the output file before concatenating, so it is useful for
concatenating text and data files.

/CCA does not remove trailing nulls and EOFs - the concatenation uses the
output file's physical length.

Example:

A}NEWFILE.TXT=ABC*.TXT,XYZ.TXT/CC
Concatenate all files matching ABC*.TXT and
file XYZ.TXT into NEWFILE.TXT.
BO DO FILES FOUND IN BOTH DIRECTORIES

Format: /BO
Used with: COPY QD QF

COPY: If the output file does not already exist, the corresponding input
file is not copied.

/QF: /BO eliminates the message which is displayed if there is an input file
with no corresponding output file.

/QD: If an input or output file exists and there is no output or input file,
respectively, with the same name, then the file is skipped and no directory
information for it is shown.

Example:

A}B:=.TXT/BO Copy to B: only those .TXT files which are found
on both A: and B:.
DI DO FILES WITH DIFFERENCES

Format: /DI
Used with: COPY QD QF

COPY: A file is copied only if the output file does not exist or the output
file exists but its date, time, or size is different from the input file's.

/QF: Files are compared only if they have different date, time, or size.

/QD: Directory information is displayed only for those files which are
different: that is, if an input file has no corresponding output file or
vice-versa, or if a file exists in both directories but has different date,
time, or size.

Examples:

A}B:=*/QD/DI/BO Show only files which exist in the current
directories on both A: and B: but which are
different.

A}B:=*/BO/DI Copy only files which already exist on B: but
which have changed. This provides a means of
backing up that does not use the "A" attribute,
and is particularly useful if you maintain more
than one set of backups.
FI FIND FIRST TIME IN EACH FILE

Format: /FI
Used with: TF

If the /TF search string is found, the remainder of the file is skipped.
This allows you to locate files in which the string occurs without searching
each entire file.


  3 Responses to “Category : File Managers
Archive   : XPIP601.ZIP
Filename : XPIP.HLP

  1. Very nice! Thank you for this wonderful archive. I wonder why I found it only now. Long live the BBS file archives!

  2. This is so awesome! 😀 I’d be cool if you could download an entire archive of this at once, though.

  3. But one thing that puzzles me is the “mtswslnkmcjklsdlsbdmMICROSOFT” string. There is an article about it here. It is definitely worth a read: http://www.os2museum.com/wp/mtswslnk/