
              NOVELL TECHNICAL INFORMATION DOCUMENT

TITLE:              NetWare Btrieve v6.10b Upgrade
DOCUMENT ID:        TID
DOCUMENT REVISION:  A
DATE:               17SEP93
ALERT STATUS:       Yellow
INFORMATION TYPE:   Symptom Solution
README FOR:         BTR61.EXE

NOVELL PRODUCT and VERSION:
NetWare Btrieve NLM 6.10

ABSTRACT:
This file contains BTRIEVE.NLM v6.10 and all necessary components for
utilizing the product.  The installation manual for this product is
available in ASCII format in the file BTR61M.EXE.  BTR61.EXE is intended
for use as a Btrieve user upgrade.  The 6.10 development utilities,
interfaces and API documentation can be purchased as the Btrieve 6.10 SDK
through the Professional Developers' Program.
_________________________________________________________________

DISCLAIMER
THE ORIGIN OF THIS INFORMATION MAY BE INTERNAL OR EXTERNAL TO NOVELL. 
NOVELL MAKES EVERY EFFORT WITHIN ITS MEANS TO VERIFY THIS INFORMATION. 
HOWEVER, THE INFORMATION PROVIDED IN THIS DOCUMENT IS FOR YOUR INFORMATION
ONLY.  NOVELL MAKES NO EXPLICIT OR IMPLIED CLAIMS TO THE VALIDITY OF THIS
INFORMATION.
_________________________________________________________________

CONTENTS:

   Btrieve v6.x in the NetWare Environment
   Before You Begin
   Installation Procedure
   Btrieve v6.x Upgrade Information
      Btrieve v6.x File Repair
      Btrieve v6.x File Format
      Btrieve v6.x Record Locking
      Btrieve v6.x Operations
      Btrieve v6.x Utilities
      Btrieve v6.x Requesters
      Btrieve v6.x Communications Programs
      Btrieve v6.x Status Codes
   Btrieve v6.x Program Files
   Btrieve Documentation
      Documentation Updates
      Printing Btrieve Documentation
      Associated Documents
   Novell Fulfillment


BTRIEVE V6.X IN THE NETWARE ENVIRONMENT:

The NetWare v3.11 or v4.0 operating system provides a nonpreemptive,
multitasking environment.  NetWare Loadable Modules (NLMs) reside in server
memory with the NetWare operating system.

IMPORTANT:  In a NetWare v4.0 environment, NetWare Btrieve v6.1 runs at the
highest privilege level (domain 0), with direct access to the NetWare
operating system.  You cannot run NetWare Btrieve v6.1 in protected mode
(domain 1, 2, or 3).

You can run NetWare Btrieve v6.1 in a NetWare v3.11 or v4.0 environment. 
The list of NetWare products with which you can run NetWare Btrieve v6.1
will be updated as the products become available and are tested.


BEFORE YOU BEGIN:

Before you proceed with the installation procedure in the next section,
perform these preliminary steps:

1. If you have an earlier version of Btrieve loaded on your system, unload
it before you install Btrieve v6.10b.

2. If you have an earlier version of CLIB.NLM loaded on your system, unload
it before you load the new version of CLIB.NLM.

3. If you have a later (more recent) version of CLIB.NLM on your system,
use that version rather than installing the version that comes with this
release of Btrieve.


INSTALLATION PROCEDURE:

To upgrade your existing NetWare Btrieve program files in a NetWare v3.11
or v4.0 environment, follow the installation procedure outlined in the
following table.  An "X" in either of the first two columns indicates that
the step applies to that NetWare environment.

NOTE:  The following installation procedure replaces the NetWare INSTALL
procedure documented in Chapter 3 in the "Btrieve Installation and
Operation" manual.  Upon completion of this installation procedure, refer
to "Configuring Btrieve" in Chapter 3 in the "Btrieve Installation and
Operation" manual.

 NetWare    NetWare
  v3.11       v4.0      Installation Procedure
 -------    -------    ----------------------------------

		     From the NetWare Btrieve v6.10b Upgrade
		     source media:

 X		     1. Copy the AFTER311.NLM, CLIB.NLM, and
		     NWSNUT.NLM files in the \NW311 directory
		     to the \SYSTEM directory on the NetWare
		     server.

		     NOTE:  NetWare v4.0 includes these files,
		     therefore, you do not need to copy them.
		     If you use these NetWare v3.11-specific
		     files in a NetWare v4.0 environment, a
		     server abend may occur.

 X	     X	     2. Copy all the .NLM files and
                     corresponding .HLP files in the \SYSTEM
                     directory to the \SYSTEM directory (or to
                     the appropriate subdirectory for your
                     configuration) on the NetWare server.

 X	     X	     3. Copy the BSTART.NCF and BSTOP.NCF files
                     in the \SYSTEM directory to the \SYSTEM
		     directory (or to the appropriate
		     subdirectory for your configuration) on
		     the NetWare server.

 X	     X	     4. Copy all the program files in the 
                     \PUBLIC directory to the \PUBLIC directory
                     (or to the appropriate subdirectory for
                     your configuration) on the NetWare server.

 X		     NOTE: Copy the NWLOCALE.DLL file in the
		     \PUBLIC\OS2 or \PUBLIC\WIN directory to
		     the appropriate subdirectory on the
		     NetWare server or on the hard drive
		     of the client workstation.

		     NetWare v4.0 includes these files,
		     therefore, you do not need to copy them.

	     X	     5. Copy the .MSG files in the \SYSTEM and
		     \PUBLIC directories to the appropriate
		     language subdirectory in \SYSTEM\NLS
		     on the NetWare server.

 X	     X	     6. Use the Btrieve Setup utility to
		     configure Btrieve according to your
		     application's requirements.  For more
		     information about the Setup utility,
		     see Chapter 3, "Installing and
		     Configuring Btrieve" in the "Btrieve
		     Installation and Operation" manual.


BTRIEVE V6.X UPGRADE INFORMATION:

For a description of the enhancements to NetWare Btrieve v6.1, refer to
Chapter 1 of the "Btrieve Installation and Operation" manual.

Before you start NetWare Btrieve v6.1, read the following sections in this
document.

- Btrieve v6.x File Recovery -- Outlines how to ensure uncorrupted files
when upgrading to Btrieve v6.10b.

- Btrieve v6.x File Format -- Addresses some of the differences between the
Btrieve v6.1, v6.0, and v5.x file formats.

- Btrieve v6.x Record Locking -- Describes the new implementation of record
locking within concurrent transactions.

- Btrieve v6.x Operations -- Highlights the new Btrieve v6.1 chunk
operations and the restrictions that apply when using Btrieve v6.0 to
operate on records larger than 64 KB.

- Btrieve v6.x Utilities -- Provides important notes on Btrieve's logging
feature.

- Btrieve v6.x Requesters -- Highlights the new Btrieve v6.1 configuration
options for the DOS and OS/2 Requesters.

- Btrieve v6.x Communications Programs -- Describes the enhanced Btrieve
Message Router that provides Btrieve support for NLMs that need to run in
the IOEngine of a NetWare SFT III server.

- Btrieve v6.x Status Codes -- Discusses error conditions specific to
different versions of Btrieve.


BTRIEVE V6.X FILE RECOVERY:

If you have a previous version of Btrieve and you are upgrading to Btrieve
v6.10b, ensure that you have uncorrupted Btrieve files before continuing
any further.  To detect file corruption, perform either of the following
procedures for each Btrieve file immediately after installing Btrieve
v6.10b.

- Method 1 -- Implement this procedure if you have large files and are
interested in detecting PAT corruption only.

- Method 2 -- Implement this procedure if you are interested in detecting
PAT corruption as well as other types of file corruption.

NOTE:  Before you perform either procedure, make a backup of your Btrieve
files.


Method 1 -- Detecting PAT Corruption

1. Determine the page size of each Btrieve file using the BUTIL -STAT
command.

2. Use the BUTIL -SALVAGE command on each Btrieve file.

Note: The SALVAGE command does not recover records from your Btrieve file. 
Therefore, this repair procedure will not take as long to complete as when
using the BUTIL -RECOVER command.

 a. If the utility does not report PAT corruption, the file is fine.  You
do not have to take further corrective measures.

 b. If the utility reports PAT corruption, proceed to step 3.

3. The utility asks if you wish to repair the file.  Select Yes and provide
the page size that you recorded for the file in step 1.

4. Use the BUTIL -SALVAGE command a second time on each Btrieve file.

 a. If the utility fully recovers the PAT pages on the first run, it
reports no errors.  The file is fine.  You do not need to take further
corrective measures.

 b. If the utility again reports PAT corruption, proceed to step 5.

5. Make sure you have enough disk space to hold two copies of the Btrieve
file you are working with.

6. Use the BUTIL -CLONE command to create a duplicate empty Btrieve file.

7. Use the BUTIL -COPY command to recover records from the damaged file and
insert them into the new file.

8. You may now resume normal operation with your Btrieve application.


Method 2 -- Detecting PAT Corruption and Other Types of Corruption

1. Use the BUTIL -SALVAGE command on each Btrieve file.

 a. If the utility does not report PAT corruption, the file is fine.  You
do not need to take further corrective measures.

 b. If the utility reports PAT page corruption, proceed to step 2.

2. The utility asks if you wish to repair the file.  Select No.

3. Make sure you have enough disk space to hold two copies of the Btrieve
file you are working with.

4. Create a description file for each Btrieve file that must be recovered. 
(See Appendix A, "Description Files" in the "Btrieve Installation and
Operation" manual for instructions.)

5. Use the BUTIL -CREATE or -CLONE command to create a duplicate empty
Btrieve file.

6. Use the BUTIL -COPY command to recover records from the damaged file and
insert them into the new file.

7. You may now resume normal operation with your Btrieve application.


BTRIEVE V6.X FILE FORMAT:

When creating files, Btrieve v6.x uses a new file format that allows faster
data access than possible with versions of Btrieve prior to v6.0.  This new
file format, first introduced in Btrieve v6.0, has been slightly modified
in Btrieve v6.1.  For more information on the Btrieve v6.x file format,
refer to the "Btrieve Programmer's Manual" included in the NetWare Btrieve
v6.1 Developer's Kit Supplement, which is available through the
Professional Developers' Program (PDP).

When working with Btrieve files created with different versions of Btrieve,
consider the following.

- New file features supported by Btrieve v6.1 include:  multiple alternate
collating sequences (ACSs), locale-specific ACSs, Variable-tail Allocation
Tables (VATs), and the ability to mark a file as using index balancing.

Btrieve v6.1 returns a file version of 6.1 if the file specified in a Stat
operation or BUTIL -STAT command was created with multiple ACSs,
locale-specific ACSs, VATs, or the index balancing option.

NOTE:  Files created with any of these features are created in the Btrieve
v6.1 file format.  If Btrieve v6.1 creates a file without any of these
features, it creates the file in the Btrieve v6.0 file format by default. 
You can override the v6.0 default and create Btrieve v5.x files by using
the Setup utility.  Refer to Chapter 3, "Installing and Configuring
Btrieve" in the "Btrieve Installation and Operation" manual for more
information on the Setup utility.

- Btrieve v6.0 operates on a file created by Btrieve v6.1, unless the file
uses multiple ACSs, locale-specific ACSs, VATs, or the balanced index flag.
 That is, Btrieve v6.0 cannot open a file that uses the Btrieve v6.1 file
format.

NOTE:  Btrieve v6.0 returns a Status Code 30 (The file specified is not a
Btrieve file) when you attempt to open a file created in the Btrieve v6.1
file format.  (This is generally true whenever you use an earlier Btrieve
version to open a file that has a more recent Btrieve file format.)

- Btrieve v6.x can open files that were created with earlier versions of
Btrieve.  For example, Btrieve v6.0 can open files created with Btrieve
v5.x, and Btrieve v6.1 can open files created with Btrieve v5.x or v6.0. 
Additionally, Btrieve v6.x can write to files using the existing file
format.  In other words, Btrieve v6.x writes to v5.x files using the v5.x
file format and writes to v6.x files using the v6.x file format.

NOTE:  When Btrieve v6.x opens files from earlier versions, it does not
convert them automatically to the v6.x file format.  For example, if you
use Btrieve v6.1 to open a v6.0 file, Btrieve v6.1 does not convert the
v6.0 file to a v6.1 file format.  However, if an application uses Btrieve
v6.10a on a v6.0 file and creates an index which uses a second ACS or a
locale-specific ACS, the file format will be upgraded to a version 6.1,
thus preventing the file from being opened by an earlier Btrieve version,
which would not recognize these features.

If your database contains files created with versions of Btrieve prior to
v6.x, you may want to upgrade them to take advantage of the Btrieve v6.x
features.  The Btrieve Rebuild utility converts Btrieve data files to the
v6.x file format.  Refer to Chapter 3, "Installing and Configuring Btrieve"
in the "Btrieve Installation and Operation" manual for information on how
to rebuild your existing Btrieve files.

- Btrieve v5.x cannot open files that have a v6.x file format.

NOTE:  If you are using Btrieve v6.x and you need backward compatibility
with Btrieve v5.x, use the Btrieve Setup option Create Btrieve Files in Pre
v6.x Format.  This option allows you to create files with Btrieve v6.x and
use them with Btrieve v5.x.  (Keep in mind, however, that many of the
Btrieve v6.x features require the Btrieve v6.x file format.)  Refer to
Chapter 3, "Installing and Configuring Btrieve" in the "Btrieve
Installation and Operation" manual for more information on the Setup
utility.

- Btrieve v6.1 supports a longer STS data type than NetWare SQL.

NOTE:  Make sure that the length of the STS data type does not exceed 15
bytes if you plan to use the Btrieve v6.1 files with NetWare SQL.

- Btrieve v6.1 allows the creation of an STS data type index in files using
the Btrieve v6.0 file format.

IMPORTANT:  If you use Btrieve v6.00d or an earlier Btrieve version to
access a file with an STS data type index, a server abend may occur.


BTRIEVE V6.X RECORD LOCKING:

Btrieve v6.10b provides more concurrency by allowing true record-level
locking in concurrent transactions.  An explicit record lock (by adding a
bias to the Get and Step operations) does not lock the corresponding data
page; it only locks that particular record.  Additionally, Btrieve v6.10b
provides the ability to share locks between multiple cursors of the same
file in an application.

Successful locking of a record (inside or outside a transaction) guarantees
that no other client is able to update or delete that record.  In other
words, when a user performs an Update or Delete operation on a record that
he has previously locked, he will eventually succeed unless a deadlock
situation is detected.  A deadlock occurs when two or more clients are each
waiting on resources that one of the clients has not yet released.

If an application opens the same file multiple times, the locks issued by
different cursors do not block each other.  The cursors are still
independent in the sense that they cannot explicitly unlock (using an
Unlock operation) the records that were locked by the other cursors.  After
a cursor has read a record with a lock, a second cursor can update or
delete the record regardless whether this second cursor locked the record
or not.  The first cursor will not get an error until it tries to delete or
update that record.

In general, when implementing multiple cursors within a concurrent
transaction, locks obtained on a cursor before the application starts a
concurrent transaction are automatically released when the cursor becomes
an active participant of that transaction.  A cursor becomes an active
participant of a concurrent transaction if a lock is requested or an
Insert/Delete/Update operation is executed with that cursor.  The
transaction does not have any effect on the inactive cursors.  That is,
locks obtained before the transaction are still maintained after
ending/aborting the transaction of inactive cursors.


BTRIEVE V6.X OPERATIONS:

Btrieve v6.1 supports the following new Btrieve operations.  For more
information about these new operations, refer to the "Btrieve Programmer's
Manual" included in the NetWare Btrieve v6.1 Developer's Kit Supplement,
which is available through the Professional Developers' Program (PDP).

- Find Percentage and Get By Percentage -- Windows-oriented applications
can use these new operations for implementing scroll bars.

- Get Direct/Chunk and Update Chunk -- Btrieve v6.1 allows applications to
operate on portions of a record, called "chunks," rather than on the entire
record.	Through the new Get Direct/Chunk and Update Chunk operations,
Btrieve v6.1 supports records larger than 64 KB.

NOTE:  Applications can use the new chunk operations to build records
larger than 64 KB in files that use the Btrieve v6.0 file format.  When
Btrieve v6.0 operates on files containing records larger than 64 KB,
however, the following restrictions apply.

- If you use an Update Chunk operation in a file that uses the Btrieve v6.0
file format, one of the file's Free Space Lists may be left in a state that
can cause Btrieve v6.00d or an earlier Btrieve version to overwrite its own
cache; a server abend may occur.

- Btrieve v6.0 does not recognize the Get Direct/Chunk or Update Chunk
operations, and therefore can only perform operations that update or
retrieve entire records.  Those "entire record" operations can only
retrieve or update up to 64 KB of a record because the operations' data
buffer length parameter, which specifies the amount of data to update or
retrieve, can contain a maximum value of 64 KB.

- If you use an Update Chunk operation to create a record larger than 64 KB
in a file that uses the Btrieve v6.0 file format, Btrieve v6.0 (which can
only use operations to update or retrieve entire records) cannot retrieve
more than the first 64 KB of the record.

Btrieve v6.0 returns a Status Code 22 (The data buffer parameter is too
short) or a Status Code 97 (The communications buffer is too small) to
indicate that there is more data to be retrieved.

- Because Btrieve v6.0 does not recognize the Update Chunk operation, you
cannot use Btrieve v6.0 to modify a record that is larger than 64 KB and
still have the resulting record be larger than 64 KB.  You can use the
Update operation to shorten such a record.  The length of the resulting
record of a successful Update operation is defined by the operation's data
buffer length parameter, which has a maximum value of 64 KB.


BTRIEVE V6.X UTILITIES:

Btrieve Monitor utility (BTRMON.NLM) -- The Btrieve v6.x Monitor utility
(BTRMON.NLM) replaces the Btrieve v5.x Console utility (BCONSOLE.NLM).

IMPORTANT:  NLM applications that call Btrieve must issue a Btrieve Reset
before unloading.	Failure to do so may lead to a server abend when you try
to use the Btrieve Monitor utility to monitor the NLM application's
activity.

Rebuild utility (BREBUILD.NLM) -- This new Btrieve v6.x utility allows you
to upgrade files created with versions of Btrieve prior to v6.x.  Use this
utility to upgrade your files to take advantage of the Btrieve v6.x
features.  For more information about rebuilding your existing files, refer
to "Rebuilding Existing Btrieve Files" in Chapter 3 of the "Btrieve
Installation and Operation" manual.

NOTE:  Before running the Rebuild utility (either from the command line or
through the Setup utility), you must start Btrieve v6.x.

Roll Forward utilities (BROLLFWD.EXE, PBROLL.EXE, and WBROLL.EXE) -- When
using Btrieve's logging feature and the Roll Forward utility, consider the
following:

- Btrieve does not allow a log file to contain log entries created by
different versions of Btrieve.  That is, all entries in a log file must be
logged under the same version of Btrieve.  Otherwise, Btrieve displays a
system error message on the server console and ignores logging for the
Btrieve file.

- If you need to restart Btrieve, specify the same index balancing setting
that was used when you first loaded Btrieve (after a backup) and performed
logging.  Otherwise, you may receive a Status Code 43 (The specified record
is invalid) when you run the Roll Forward utility.

- If you need to run the Roll Forward utility (for example, after a system
crash), load the same version of Btrieve and specify the same index
balancing setting that was used during logging.  Otherwise, you may receive
a Status Code 43 (The specified record is invalid).

NOTE: If you want to switch to a different version of Btrieve or you want
to change the index balancing setting, first create a backup of the Btrieve
files to be logged and then delete the corresponding log files.

- If you attempt to create a log file for a Btrieve file that contains
records larger than 57 KB, you may receive a Status Code 43 (The specified
record is invalid) when you run the Roll Forward utility.

The Btrieve v6.1 BROLLFWD.EXE file replaces the Btrieve v6.0 DBROLL.EXE.


BTRIEVE V6.X REQUESTERS:

Btrieve Requester for UnixWare -- This new Requester provides UnixWare
clients with access to Btrieve data residing on a NetWare Btrieve
server.	For detailed information about this Requester, refer to the
separate Readme document, BTRUNIX.DOC, that is included in this upgrade.

Btrieve Requester for DOS -- This Requester has three new configuration
options.  For detailed information about this Requester, refer to Chapter 4
in the "Btrieve Installation and Operation" manual.

- NetWare Runtime Server Support (/C) -- Enables or disables NetWare
Runtime support.

- DOS Session Load (/L) -- Allows you to load another instance of the
Btrieve DOS Requester even if it is already loaded.  This option is useful
if you want to run Windows applications using the Btrieve DOS Requester
while running DOS VM applications that are also using the Requester.

- Real-Time Data Compression (/O) -- Helps reduce network traffic by
reducing the number of packets required to complete a request to Btrieve.

Btrieve Requester for OS/2 -- This Requester also provides Runtime Server
support.	For detailed information about the Btrieve OS/2 Requester, refer
to Chapter 4 in the "Btrieve Installation and Operation" manual.


BTRIEVE V6.X COMMUNICATIONS PROGRAMS:

An enhanced Btrieve Message Router (BROUTER.NLM) and a new communications
module (BTRVSTUB.NLM) are provided with NetWare Btrieve v6.10b to support
NLMs that need to run in the IOEngine of a NetWare SFT III server.
BROUTER.NLM redirects all Btrieve calls from the IOEngine to NetWare
Btrieve running in the MSEngine (Mirror Service Engine).

To run NLMs that require Btrieve in the IOEngine, perform the following
steps:

1. Load BTRIEVE.NLM and BSPXCOM.NLM in the MSEngine.  You can configure the
BSTART.NCF NetWare command file to load these NLMs.

NOTE:  Depending on the particular NLM that you will be running in the
IOEngine, you may need to increase BSPXCOM's data buffer size with the
Btrieve Setup utility (BSETUP.NLM). Consult the "Btrieve Installation and
Operation" manual for more information.

2. Load AFTER311.NLM in the IOEngine.

3. Load BTRVSTUB.NLM in the IOEngine.  This NLM provides Btrieve API names
so that BROUTER.NLM may be loaded.

4. Load BROUTER.NLM in the IOEngine.

NOTE:  Depending on the particular NLM that you will be running in the
IOEngine, you may need to increase BROUTER's data buffer size with the
Btrieve Setup utility (BSETUP.NLM). Consult the "Btrieve Installation and
Operation" manual for more information.


BTRIEVE V6.X STATUS CODES:

Status Code 11 (The specified filename is invalid) --  If you receive this
status code when you open a Btrieve file using the Btrieve OS/2 Requester
(BTRCALLS.DLL), make sure that you are using the latest NetWare OS/2
Requester.

Status Code 30 (The file specified is not a Btrieve file) -- Btrieve v6.0
returns this status code when you attempt to open a file that has the
Btrieve v6.1 file format.  (This is generally true whenever you use an
earlier Btrieve version to open a file that has a more recent file
format.)

Status Code 43 (The specified record address is invalid) -- The Btrieve
Roll Forward utility receives this status code when the address acquired
from the Free Space List of the Btrieve file during an Insert operation at
roll forward time is different from the one received at logging time.

The synchronization problem with Free Space Lists occurs when you use
different versions of Btrieve or the same Btrieve version but with a
different index balancing setting.

The following is a summary of the specific conditions for which Status Code
43 can be returned:

- During logging, you loaded Btrieve multiple times and did not specify the
same index balancing setting each time.

- You inserted or updated a record larger than 57 KB.

- At roll forward time, you loaded a different version of Btrieve or the
same Btrieve version but with a different index balancing setting from what
you used at logging time.  To correct the synchronization problem with Free
Space Lists, load the proper version of Btrieve with the proper index
balancing setting.

Status Code 44 (The specified key path is invalid) -- Btrieve v6.1 returns
this code for some situations, in which earlier versions of Btrieve
returned Status Code 82 (The application lost positioning).  These
situations can occur when you define the key attribute to be manual or null
(all-segment and any-segment).  If you have an existing Btrieve application
that checked for Status Code 82, you may want to rewrite the application to
check for Status Code 44 as well.

Refer to Chapter 2 in the "Btrieve Programmer's Manual" (included in the
NetWare Btrieve v6.1 Developer's Kit Supplement) for more information about
all-segment and any-segment null keys.

Status Code 102 (Insufficient stack space is available) -- Btrieve v6.1
requires 3 KB of stack space. If your NLM application receives this status
code, try increasing the size of your stack space.  You may need more than
3 KB of stack space if you are accessing files defined by NetWare SQL as
being under referential integrity (RI) constraints.  Because Btrieve uses
recursion when enforcing the constraints, you will need 3 KB of stack space
at the deepest level of recursion.


BTRIEVE V6.X PROGRAM FILES:

Self-Extracting File Name:  BTR61.EXE      Revision:  A

Files Included     Size     Date      Time

\
   BTR61.TXT             (This File)
\NW311\
    CLIB.NLM     267068   12-16-92    7:32a
  NWSNUT.NLM     160519   06-04-93    9:32a
AFTER311.NLM      25290   08-02-93    4:16p
\PUBLIC\      	         	    
  PBROLL.EXE      48500   01-29-93    3:08p
BREQUTIL.EXE      21775   01-30-93   12:32p
  WBROLL.EXE      47504   01-29-93    3:56p
BROLLFWD.EXE      76062   01-29-93    2:40p
   NOVDB.INI       2460   11-06-92   10:48a
WNDBCNVT.EXE      30926   01-30-93   12:08p
 NDBCNVT.EXE      18192   01-29-93    1:40p
PBTRVRES.DLL      13360   01-29-93    3:08p
WBROLLRS.DLL      11984   01-29-93    3:56p
WBTRVRES.DLL      22912   01-30-93   12:16p
 NDBCOMM.DLL      20343   08-25-93    3:40p
BROLLFWD.MSG       3717   01-29-93    2:40p
WBTRCALL.DLL      13131   05-13-93    4:00p
BREQUTIL.MSG        974   01-30-93   12:32p
BREQUEST.MSG       1180   08-05-93    2:24p
UNXCBTRV.O         1420   11-30-92   11:40a
 LIBBTRV.A        21432   02-05-93    6:08p
 LIBBTRV.SO       18268   02-05-93    6:08p
 LIBCOMM.A        19120   02-05-93    6:08p
 LIBCOMM.SO       18596   02-05-93    6:08p
 BTRUNIX.DOC      12231   06-23-93   10:08a
BTRCALLS.DLL      17944   06-11-93    9:32a
BREQUEST.EXE      58888   08-09-93   10:00a
\PUBLIC\OS2\  	         	    
NWLOCALE.DLL      34480   05-18-93    1:00p
\PUBLIC\WIN\  	         	    
NWLOCALE.DLL      38800   05-18-93    1:00p
\SYSTEM\
  BSETUP.NLM      72329   01-07-93   11:00a
BREBUILD.NLM      40745   08-26-93    1:32p
BSPXSTUB.NLM       1254   05-20-93    3:48p
 BROUTER.NLM      21101   08-27-93   10:24a
  BTRMON.NLM      75022   01-28-93    2:24p
 BDIRECT.NLM      15609   01-26-93    3:00p
 BROUTER.MSG        472   08-24-93    5:08p
 BSPXCOM.NLM      18384   05-05-93    1:00p
   BUTIL.NLM     200338   01-29-93    2:16p
RSPXSTUB.NLM       1743   05-20-93    3:48p
  BTRMON.HLP      37065   01-22-93    4:32p
  BSETUP.HLP      31141   12-18-92    9:08a
RSPXSTUB.MSG        243   05-05-93    1:24p
BREBUILD.MSG       5028   08-19-93    5:16p
 BSPXCOM.MSG       1716   05-05-93    1:00p
BDROUTER.MSG        472   05-17-93    3:48p
BSPXSTUB.MSG        235   05-05-93    1:24p
 BTRIEVE.MSG       2245   08-11-93    5:00p
 BDIRECT.MSG       3665   01-26-93    3:00p
 BTRIEVE.NLM     183697   08-16-93    1:32p
   BUTIL.MSG       9320   01-29-93    2:16p
  BTRMON.MSG       6468   01-28-93    2:24p
  BSTART.NCF         99   11-05-92    4:24p
   BSTOP.NCF         49   04-21-92    2:40p
  BSETUP.MSG       7972   11-25-92   11:48a
BDROUTER.NLM      22685   05-17-93    3:48p
BTRVSTUB.NLM        950   08-27-93   10:32a


The NetWare Btrieve v6.10b program files included in this upgrade can be
grouped into the following categories:

- Files related to the NetWare v3.11 environment
- Files related to server operations
- Files related to DOS workstation operations
- Files related to Windows workstation operations
- Files related to OS/2 workstation operations
- Files related to UnixWare workstation operations

The following lists describe the NetWare Btrieve v6.1 program files in each
category.

- Files related to the NetWare v3.11 environment:

 AFTER311.NLM   NLM that NetWare Btrieve v6.1 requires in a NetWare v3.11
environment.

 CLIB.NLM   C Library for the NetWare v3.11 environment.

 NWLOCALE.DLL   National Language Support DLL for the NetWare v3.11
environment. The /PUBLIC/WIN and /PUBLIC/OS2 directories each contain a
different NWLOCALE.DLL.

 NWSNUT.NLM   Graphics User Interface (GUI) NLM for the NetWare v3.11
environment.


- Files related to server operations:

 BDIRECT.NLM   Directory Services utility that allows you to install or
remove a Btrieve server object in a NetWare v4.0 environment.

 BDIRECT.MSG   Message file for BDIRECT.NLM (for the NetWare v4.0
environment).

 BDROUTER.NLM   NLM that provides Directory Services support in a NetWare
v4.0 environment.

 BDROUTER.MSG   Message file for BDROUTER.NLM (for the NetWare v4.0
environment).

 BREBUILD.NLM   Rebuild utility that lets you convert existing Btrieve v5.x
files to Btrieve v6.x format.

 BREBUILD.MSG   Message file for BREBUILD.NLM.

 BROUTER.NLM   NLM that allows server-based Btrieve applications to access
Btrieve databases on remote servers.

 BROUTER.MSG   Message file for BROUTER.NLM.

 BSETUP.NLM   Btrieve installation and configuration utility.

 BSETUP.MSG   Message file for BSETUP.NLM.

 BSETUP.HLP   Help file for BSETUP.NLM.

 BSPXCOM.NLM   SPX communications agent.

 BSPXCOM.MSG   Message file for BSPXCOM.NLM.

 BSPXSTUB.NLM   NLM that allows you to use the Btrieve Monitor utility
(BTRMON.NLM) when BSPXCOM.NLM is not loaded.

 BSPXSTUB.MSG   Message file for BSPXSTUB.NLM.

 BSTART.NCF   Batch file executed to start Btrieve.  This file also loads
BSPXCOM.NLM and BROUTER.NLM (if Btrieve is configured to do so).

 BSTOP.NCF   Batch file executed to stop Btrieve.  This file also unloads
BSPXCOM.NLM and BROUTER.NLM (if loaded).

 BTRIEVE.NLM   Btrieve Record Manager (database engine).

 BTRIEVE.MSG   Message file for BTRIEVE.NLM.

 BTRMON.NLM   Btrieve Monitor utility that lets you monitor the activity of
Btrieve files, users, and communications resources.

 BTRMON.MSG   Message file for BTRMON.NLM.

 BTRMON.HLP   Help file for BTRMON.NLM.

 BTRVSTUB.NLM   NLM that BROUTER.NLM requires and that provides Btrieve
support for NLMs that need to run in the IOEngine of a NetWare SFT III
server.

 BUTIL.NLM   Btrieve Maintenance utility, which is a command line utility
that allows you to create, manipulate, and recover Btrieve data files.

 BUTIL.MSG   Message file for BUTIL.NLM.

 RSPXSTUB.NLM   Module that resolves external references for the Btrieve
Monitor utility (BTRMON.NLM) when BSPXCOM.NLM is not loaded.  If you want
to use the Btrieve Monitor utility to monitor outgoing requests generated
by the Btrieve Message Router (BROUTER.NLM) to another server and you do
not want to load BSPXCOM.NLM, load RSPXSTUB.NLM instead of BSPXSTUB.NLM at
the server.

 RSPXSTUB.MSG   Message file for RSPXSTUB.NLM.


- Files related to DOS workstation operations:

 BREQUEST.EXE   Btrieve Requester for DOS.

 BREQUEST.MSG   Message file for BREQUEST.EXE.

 BREQUTIL.EXE   Btrieve Requester utility that allows you to stop the
Requester and to obtain the Requester's version number at a DOS
workstation.

 BREQUTIL.MSG   Message file for BREQUTIL.EXE.

 BROLLFWD.EXE   Roll Forward utility for the DOS operating environment. 
This utility recovers changes made to a Btrieve file between the time of
the last backup and a system failure.

 BROLLFWD.MSG   Message file for BROLLFWD.EXE.


- Files related to Windows workstation operations:

 WBROLL.EXE   Roll Forward utility for the Windows operating environment. 
This utility recovers changes made to a Btrieve file between the time of
the last backup and a system failure.

 WBROLLRS.DLL   Resource file for WBROLL.EXE.

 WBTRCALL.DLL   Btrieve Requester for Windows.

 WBTRVRES.DLL   Resource file for the Btrieve Windows Requester.

 WNDBCNVT.EXE   Windows Conversion utility that converts the client-based
Btrieve DLL (WBTRCALL.DLL) to WBTRLOCL.DLL.

 NOVDB.INI   Btrieve initialization file for the Btrieve Windows
Requester.


- Files related to OS/2 workstation operations:

 PBROLL.EXE   Roll Forward utility for the OS/2 operating environment. 
This utility recovers changes made to a Btrieve file between the time of
the last backup and a system failure.

 PBTRVRES.DLL   Resource file for PBROLL.EXE.

 BTRCALLS.DLL   Btrieve Requester for OS/2.

 NDBCOMM.DLL   Communications handler for the Btrieve Requester for OS/2.

 NDBCNVT.EXE     OS/2 Conversion utility that converts the client-based
Btrieve DLL (BTRCALLS.DLL) to BTRLOCL.DLL.


- Files related to UnixWare workstation operations:

 LIBBTRV.A   Archive Btrieve Interface Library.

 LIBCOMM.A   Archive Communications Interface Library.

 LIBBTRV.SO   Shared-object Btrieve Interface Library.

 LIBCOMM.SO   Shared-object Communications Interface Library.

 UNXCBTRV.O   C interface object file.

 BTRUNIX.DOC   Readme document that describes the Btrieve Requester for
UnixWare.


BTRIEVE DOCUMENTATION:

The NetWare Btrieve v6.10b Upgrade includes the "Btrieve Installation and
Operation" manual.  The following section describes the updates to this
manual. Currently, you can print this manual using the set of ASCII text
files included in this upgrade.

NOTE:  You can place an order for a printed manual through Novell
Fulfillment.  For ordering information, see the "Novell Fulfillment"
section below.


DOCUMENTATION UPDATES:

The following documentation updates apply to the "Btrieve Installation and
Operation" manual included in this upgrade.

Chapter 3, "Installing and Configuring Btrieve" -- Replace the installation
procedure in the "Using the NetWare INSTALL section with the infor
Utility" section with the information presented in the "Installation
Procedure" section of this Readme document.

Chapter 4, "Configuring and Using the Requesters" -- In the "Loading the
Windows Requester" section, change the name of the Windows import library
to WBTRCALL.LIB.


PRINTING BTRIEVE DOCUMENTATION:

You can print the "Btrieve Installation and Operation" manual in ASCII
format.

1. Uncompress (unzip) the zipped file, BTR61M.EXE, that contains the
document files.

2. Print the document files, using a print utility of your choice.

3. Photocopy the printed Btrieve manual as needed.


ASSOCIATED DOCUMENTS:

For information about the Btrieve v6.x file format and Btrieve operations,
refer to the "Btrieve Programmer's Manual."  This manual is a component of
the NetWare Btrieve v6.1 Developer's Kit Supplement, which is available
through the Professional Developer's Program (PDP).


NOVELL FULFILLMENT:

The NetWare Btrieve v6.10b upgrade is also available on diskettes (5.25"
and 3.5") and with a printed manual through Novell Fulfillment.  For
ordering and price information, call 1-800-UPDATE1 (domestic customers) or
317-364-7276 (international customers).  You can also place an order by fax
(317-364-0787).


**End of README.BTR**

