PIP: More Than a Copy Program!
     ------------------------

     As most of you already know PIP is a transient CP/M command, that
is it must be on the program disk to use.  This CP/M utility most common
use is for copying files from one disk to another.

     PIP can be used in two different ways, if you type in PIP without
any parameters you will get the prompt "*>".  This is the PIP command
prompt.  (To cancel, press return alone at the "*>" prompt).  If you
type in PIP with parameters it will copy the specified files and return
you to the system.  Example:

               PIP A:OLDNAME.FILETYPE=A:NEWNAME.FILETYPE
           or without parameters following...
               PIP (loads program)
               *A:OLDNAME.TYP=A:NEWNAME.TYP

     Commands for one drive differ from commands for two drives only by
designation of the drives.  Example:

PIP B: means to drive B from drive A
PIP E: means to drive E from drive A

Note: Drive E is a simulated disk drive in memory and is referred to as
a "virtual" drive.

     Wildcards may be used when coping a file, IE: PIP B:=A:*.* will
copy all the files on drive A to the disk in drive B.

     Another option available is the verify option.  IE: PIP B:=A*.*[V].
This will copy all the files as in the first example, but will verify by
comparing to the original file.

     PIP has many other uses other than copying files...  For example,
you can concatenate files (join together) IE:

*> MEMO.TXT=MEMO1.TXT[V],MEMO2,TXT[V],MEMO3.TXT[V]

     The above example takes the files MEMO1.TXT, MEMO2.TXT, and
MEMO3.TXT and combines them into one file called MEMO.TXT, and also
verifies them during the process.  To do the same thing and put the new
file on a different drive, you would enter:

*>B:MEMO.TXT=A:MEMO1.TXT[V],A:MEMO1.TXT[V],A:MEMO2.TXT[V],A:MEMO3.TXT[V]

     (This would put the file on drive B, also, please note that in the
verify parameter the "[" and "]" are brackets and not parentheses.)

     PIP has another option that will allow you to make only copies of
files that have been altered since last copied.  When you alter a file,
CP/M sets a flag known as the archive flag.  If you were to enter, for
example, B:*.TXT[AV] (A=Archive, V=Verify), PIP would make a copy of all
the TXT files on the disk that have been changed.

     You may see the status of your files be entering DIR[FULL and you
will see "ARCV" in the attribute column if a file needs to be backed up.

     PIP can also be used to display and/or print files.  Example:

PIP CON:=A:MEMO.TXT, will display the file MEMO.TXT to the screen.  (CON
is the device name for the console keyboard.)  It works like the TYPE
command, but is more versatile.

     If you were to enter LST:=A:MEMO.TXT, it would also print the file
just as it is or with options as follows:

     N - adds line numbers to listings
     U - prints in uppercase only
     L - prints in lowercase only
     F - removes form feeds
     PN - form feed every "n" lines
     TN - tabs set every "n" columns

     For example, to print a file all in uppercase, form feed every 60
lines and filter out all embedded line feeds in the file the command
would look like this: LST:=A:MEMO.TXT[UP60F].

     Here is a list of some possible commands you may want to save for
reference:

PIP B:=A:MEMO.TXT
Copy a file from disk in drive B from disk in drive A.

PIP B:=A:*.*
Copy all files on disk in drive A to disk in drive B.

PIP B:=A:*.*[V]
Copy all the files and verify them.

PIP B:=A:*.*[VR]
Copy all the files including the system files with verify.

PIP B:=A:*.TXT[AV]
Copy (back-up) altered text files.

PIP B:=A:MEMO.TXT=MEMOX.TXT[E]
Will copy the file MEMO.TXT, rename it to MEMOX.TXT and display the file
on the screen as it is being copied.

===============================================================

     I hope this short text file has helped you in some way to
understand the world of CP/M on the Commodore computer.  I know I have a
lot to learn and if I learn anything new I will try to share it with you
as i go along.  If you would like to write a text file like this and
share your knowledge of CP/M with us... Please upload it to the system
and leave feedback to the sysop and I will place it in the text file
section for all to read.

Written by: Mike Fontaine - SYSOP -
            COMTEL 64 BBS - 813-989-9128

     A Commodore BBS supporting the commodore 64, 128, and CP/M 3+ for
the 128 Commodore computer... 8:00PM - 6:00AM Weekdays - 24 Hours on
weekends... <> A C-NET support BBS <>
