bP Copy version 1.05 Shareware
Copyright (c) 1997 Jem E. Berkes

Release date: September 16, 1997
Minor update: September 22, 1997

For a list of systems that have run BPC with no problems, please consult
the SYSTEMS.TXT file.

bP Copy was written for PC or compatible systems running DOS 3.0 or higher,
and should run on any Intel or compatible system running a DOS-compatible OS.

THIS IS NOT FREE SOFTWARE. You are allowed to use it for a month for trial
purposes. If you like it, you are encouraged to register by mailing $15 US to:

Jem Berkes
185 Waverley Street
Winnipeg, Manitoba
R3M 3K4
Canada

(The cost of registration in a business/multi-user environment will vary
depending on how many people will be using bP Copy).

If you have an e-mail address, you will receive a registered version of the
software which displays a message indicating that it has been registered to
you. You will also be eligible for free updates through e-mail. If you have
any questions, please e-mail <berkes@bigfoot.com>.


=========
FEATURES

    I wrote BPC after I became disgusted by other file copying programs. Most
of them were too complex, too slow, and did not have the features that a DOS
user would expect from all copy commands.  So I have come up with a file
copier that is small, fast, and simple.  Here are some reasons for using BPC:

- It outperforms most other DOS and Windows file copiers

  In some tests I did, BPC outperformed the Windows File Manager's
  copy program as well as DOS's COPY, XCOPY, and a third-party program
  called CC. BPC did particularly well in tests where files were written
  to or from a diskette. Only when copying files under 64K, its performance
  dropped to about that of DOS's internal COPY command.

- If a disk fills up, you can continue copying on a new disk
  
  If a disk fills up during copying, you are asked to insert a new diskette.
  If you replace the full diskette with a new one and press a key, the files
  in the current job which did not yet get copied will be copied onto the new
  disk. At the time of the "Insert new disk" prompt, you can abort the job by
  pressing "Q" for quit.

- It shows the size of the file being copied, e.g. "0004 MB" or "0153 KB"

  BPC will show the size of a file using "KB", "MB" or even "GB".

- A bar graph and percentage value indicate how much has been copied

  The bar graph is displayed when copying large files (those over 128 KB),
  and changes as data is copied. The percentage value also indicates copy
  status, and changes to a checkmark (represented by the  symbol) when the
  transfer is done.

- It can make duplicates of all files, even if they are hidden or system.

  Optionally, all files (even hidden and system files) are copied, and
  the copies also can retain the source's exact attributes.

- It only requires 68 KB of conventional memory
- The executable file is very small: only about 2 KB
- BPCOPY is handle oriented; you can even copy to devices (e.g. LPT1, COM1)

  You can print out a file, for example, by copying it to "PRN" (the default
  printer name). XCOPY and some other copying utilities don't allow copying
  to reserved DOS devices.

- Detailed ERRORLEVELs from bP Copy help batch programers control copying


=============
INSTRUCTIONS

bP Copy functions just like DOS's regular COPY command, except that you type
"BPC" instead of typing "COPY". The other known differences are listed below:
(please read carefully!)

1. BPC must have a source and destination parameters. This version does not
   assume the current directory (.) when the second parameter is omitted.

2. The switches which COPY uses (/A and /B) are not needed in BPC to specify
   if you are copying an ASCII or binary file. Both types are copied in the
   same way. The /V (verify) switch is also not used in BPC, which uses DOS's
   internal verify flag (from the prompt type VERIFY ON or VERIFY OFF).

3. The "/Y" switch exists in BPC, as in COPY, to mean that files are replaced
   during copying without asking. The opposite switch, "/-Y", does not exist
   in BPC because asking for overwriting permission is the default anyway.

4. To append one file to the end of another file, simply copy over the file,
   but answer "P" (aPpend) when prompted for the action to take. i.e.
   "BPC source dest". Do not use /Y, because the file will be overwritten.
   You won't ever get the error message "File cannot be copied onto itself";
   it is perfectly okay under BPC to copy/append a file to itself.

5. Unless you use BPC's /T (true attribute) switch, only files that are not
   hidden or system will be copied (this default action is the same as DOS's
   COPY command).  With the /T switch, hidden and system files will be copied
   and the files will keep their original attributes. For example (with the
   /T switch), if you copy a file off of a CD-ROM onto your hard drive, the
   attribute of the copy will also be read-only.

6. Unlike DOS's COPY command, the destination which you enter into BPC may
   not contain wildcards.  For example, with COPY you could have typed
   "COPY *.TXT *.BAK", but with BPC you will get an error message.

7. When the destination drive is different than the current drive, BPC makes
   the target directory in the copy procedure the new current directory for
   that drive.  So for example, after issuing the command "BPC A:*.* C:\TEMP" 
   from the A or B drive, the new current directory on drive C will be \TEMP.
   This can save you time in your batch files because you can be sure that
   switching back to "C:" will land you in the \TEMP directory.

======
USAGE

BPC source dest [/y] [/t] [/?]

"Source" is a DOS file specification, with or without wildcard, and "dest" is
a DOS file name, device, drive name or directory.

/y = Overwrite files without asking; auto-"yes"
/t = Copy true attributes with files (includes hidden and system)
/? = Display instructions


=========
EXAMPLES

BPC *.* A: /Y /T

	Copies all the files (which may include hidden or system files) from
the current directory to the default directory on drive A while automatically
overwriting destination files that may already exist.

BPC C:\WINDOWS\*.INI C:\BACKUP

	Copies all of the INI files from the C:\WINDOWS directory to the file
named "BACKUP" in the C:\ directory, or into the directory named "C:\BACKUP",
if it exists.

BPC ORIGINAL COPY /T

  Makes a copy of the file named "ORIGINAL" called "COPY", which will have
the exact attributes of the ORIGINAL file.


==============
SPECIAL NOTES

- To abort a copying procedure, you should press CTRL+BREAK (The Ctrl key
  plus the Pause key).  Actually, you can press any key to abort a large
  copy procedure (one greater than 128 KB, when the bar graph appears).
  Remember that BPC will only notice the interruption key the next time
  it updates the bar graph (which is every 64 KB of the copy procedure.
  This might represent a substantial wait if you are copying to a disk.)

- A special note to users who have write caching enabled on their systems:
  Write caching is a software trick in which data which is supposed to be
  saved to the disk is temporarily held in memory.  This speeds up disk
  access because your software thinks it is saving to a disk whereas it is
  really saving to memory, which is much faster than a disk.  When the system
  has some time, it writes the data to the disk.  Because of all this, when
  you are using BPC to copy large files you will usually notice that the bar
  graph moves very quickly from 0 to 100%, then the disk light flashes on as
  the data is written to the disk.  Essentially, write caching eliminates
  the effectiveness of the bar graph.  I would recommend disabling write
  caching because of this, and also because write caching is very dangerous.
  If the power fails (or if you turn off your computer) before the cache
  software saves the data to your disk, you will permanently lose the data.


==================================
The ERRORLEVEL values of bP Copy:

Copying successfull/no errors   0
No parameters/instructions      1
File not found while copying    2
Invalid path in specification   3
User requested stop of copying  4
Access denied while copying     5
Invalid handle (system error)   6
Disk full; copy aborted         7
Insufficient memory (need 68K)  8
Unknown/unidentified error     255
