home *** CD-ROM | disk | FTP | other *** search
/ Programming Languages Suite / ProgramD2.iso / Database / CLIPR502.DOS / README < prev   
Encoding:
Text File  |  1996-11-26  |  25.3 KB  |  613 lines

  1.  
  2. Please Read The AUTOEXEC.BAK & CONFIG.BAK And Place The Parameters As Given.
  3. Thank You.
  4.  
  5. ========================================================================
  6.    Welcome to CA-Clipper Version 5.2!
  7.    
  8.    Copyright (c) 1993, Computer Associates International, Inc.
  9.    All rights reserved.
  10.    
  11.    This file, README, contains information on issues that did not
  12.    make the printed or online documentation.  It also contains some
  13.    corrections to errors in the printed documentation.
  14.    
  15. ========================================================================
  16. 1. Contents
  17.    
  18.    The following topics are covered in this documentation file:
  19.    
  20.     1.  Contents
  21.     2.  Installation
  22.     3.  Online Documentation
  23.     4.  Drivers
  24.     5.  Error Handling
  25.     6.  New Error Messages
  26.     7.  Utilities
  27.     8.  Sample Programs
  28.     9.  Memory
  29.    10.  Compatibility Issues
  30.    11.  Errata
  31.    12.  Technical Reference
  32.    13.  Copyright
  33.  
  34. ========================================================================
  35. 2. Installation
  36.    
  37.    The interactive installation program, INSTALL.EXE, copies the
  38.    CA-Clipper 5.2 files to the appropriate directories and
  39.    subdirectories of your hard disk.  The installation procedure is
  40.    documented in Chapter 2 of the Getting Started Guide, but this
  41.    section contains additional information that you may need to
  42.    successfully install CA-Clipper 5.2.
  43.    
  44.    Important:  The CA-Clipper 5.2 installation program default
  45.    installation directory is \CLIPPER5.  If you have a previous
  46.    version of CA-Clipper installed into a directory with this name,
  47.    you will need to modify the install program default directory
  48.    (when prompted), otherwise your previous version of CA-Clipper
  49.    will be overwritten.
  50.    
  51.    ---------------------------------------------------------------------
  52.    2.1  Command Line Arguments
  53.    
  54.    The following table shows the command line arguments for
  55.    INSTALL.EXE.
  56.    
  57.    INSTALL.EXE Command Line Arguments
  58.    -----------------------------------------------------------
  59.    
  60.    Argument       Description
  61.    -----------------------------------------------------------
  62.    
  63.    /NOSWAP        Do not swap to EMS or disk
  64.    /BW            Monochrome for color display (for Laptops)
  65.    /MONO          Force monochrome display
  66.    -----------------------------------------------------------
  67.    
  68.    ---------------------------------------------------------------------
  69.    2.2  Default Directory Structure
  70.    
  71.    The CA-Clipper 5.2 directory structure created by the installation
  72.    procedure is as follows:
  73.    
  74.    \CLIPPER5        Master CA-Clipper 5.2 directory
  75.       \BIN             Executable (.EXE and .COM), batch (.BAT), and
  76.                        help (.hlp) files
  77.       \INCLUDE         Header (.CH and .H) files
  78.       \LIB             Library (.LIB) files
  79.       \PLL             Prelinked library (.PLL, .PLT, and .LNK) files
  80.       \OBJ             Object (.OBJ) files
  81.       \SOURCE          Master directory for source (.prg) files
  82.          \DBU             Database Utility source files
  83.          \PE              Program editor source files
  84.          \RL              Report and Label Utility source files
  85.          \SYS             Source files for runtime systems
  86.                           (Get system, Error system, runtime portions
  87.                           of the Report and Label system, and
  88.                           Rddsys.prg)
  89.          \SAMPLE          Sample program source files
  90.    \NG              The Guide to CA-Clipper files
  91.    
  92.    ---------------------------------------------------------------------
  93.    2.3  Modifying Your Environment Variables
  94.    
  95.    Certain environment variables (e.g., PATH, LIB, INCLUDE) should be
  96.    set for CA-Clipper 5.2.  If you elected to modify the AUTOEXEC.BAT
  97.    file during the installation process, your file should be up-to-
  98.    date.  Otherwise, the appropriate settings are written to a file
  99.    called AUTOEXEC.NEW located in the root directory of the boot
  100.    drive.  In either case, it is important that your AUTOEXEC.BAT
  101.    file contain these additional settings so that CA-Clipper 5.2 will
  102.    find your files.  The required settings are as follows:
  103.    
  104.    1. The PATH variable should include the directory where CA-Clipper
  105.       5.2 executable files reside (example: C:\CLIPPER5\BIN).
  106.       
  107.    2. The LIB variable should include the directory where CA-Clipper
  108.       5.2 library files reside (example: C:\CLIPPER5\LIB).
  109.       
  110.    3. The INCLUDE variable should include the directory where
  111.       CA-Clipper 5.2 include files reside (example:
  112.       C:\CLIPPER5\INCLUDE).
  113.       
  114.    4. The PLL variable should include the directory where CA-Clipper
  115.       5.2 prelinked library files reside (example: C:\CLIPPER5\PLL).
  116.       
  117.    For example:
  118.    
  119.    SET PATH=C:\CLIPPER5\BIN;%PATH%
  120.    SET LIB=C:\CLIPPER5\LIB
  121.    SET INCLUDE=C:\CLIPPER5\INCLUDE
  122.    SET PLL=C:\CLIPPER5\PLL
  123.    
  124.    You may also wish to set other environment variables.  For a
  125.    summary of environment variables used and supported by CA-Clipper
  126.    5.2, refer to Chapter 10 of the Quick Reference Guide.  For more
  127.    information on setting up and using the CA-Clipper development
  128.    environment, refer to the Programming and Utilities Guide.  For
  129.    general information about the DOS environment and setting
  130.    environment variables, refer to your DOS manual.
  131.    
  132.    The installation program modifies CONFIG.SYS to:
  133.    
  134.    FILES=25
  135.    BUFFERS=15
  136.    
  137.    If you choose to retain your current CONFIG.SYS the installation
  138.    program creates a file named CONFIG.NEW and places it in the root
  139.    directory of your boot drive.
  140.    
  141. ========================================================================
  142. 3. Online Documentation
  143.    
  144.    The online documentation consists of the Norton Instant Access
  145.    Engine (NG.EXE) and the following documentation databases:
  146.    
  147.    C52G01B.NG   The Guide To CA-Clipper
  148.                (CA-Clipper Language Reference and Tables)
  149.    C52G02B.NG   Error Messages
  150.                (Compiler, Linker, RMAKE, Runtime, and DOS errors)
  151.    C52G03B.NG   Technical Reference (not included)
  152.                (Available through the Computer Associates
  153.                 Supplemental Offer.  To order, refer to the enclosed
  154.                 slipcard)
  155.    C52G04B.NG   Utilities and Environment Variables
  156.                (Reference documentation for Utilities (Compiler,
  157.                 Linker, RMAKE, PE, DBU, RL, and CLD) and DOS (SET)
  158.                 Environment Variables)
  159.    C52G05B.NG   Release Notes
  160.                (Version Specific Information (i.e., Change Summaries)
  161.    C52G06B.NG   Sample Programs
  162.                (Sample Program Reference)
  163.    C52G07B.NG   CA-Clipper Drivers Documentation
  164.                (Complete Drivers Guide online)
  165.    
  166.    All of the documentation databases and the Instant Access Engine
  167.    are installed in the \NG directory, which exists at the same level
  168.    as the \CLIPPER5 directory.
  169.    
  170. ========================================================================
  171. 4. Drivers
  172.    
  173.    CA-Clipper 5.2 includes new replaceable database drivers (RDDs) as
  174.    well as enhanced functionality in the default DBFNTX and the
  175.    DBFNDX drivers.  The included database drivers are DBFNTX
  176.    (CA-Clipper indexes), DBFNDX (dBASE III compatible indexes),
  177.    DBFMDX (dBASE IV compatible multiple indexes), DBFCDX (FoxPro
  178.    compatible indexes) and DBPX (Paradox compatible tables).
  179.    
  180.    CA-Clipper 5.2 documentation includes a Drivers Guide that
  181.    describes the RDDs, their new and enhanced command set, and the
  182.    alternate Terminal drivers.
  183.    
  184.    Please note:  The online version of the DBFNTX Driver
  185.    documentation contains "new" information about DBFNTX's optional
  186.    new locking scheme.  Please be sure to refer to this section if
  187.    using the DBFNTX driver.
  188.    
  189.    ---------------------------------------------------------------------
  190.    4.1  Alternate Terminal Drivers Instructions
  191.    
  192.    The GT.OBJ supplied in the \CLIPPER5\OBJ directory must be used
  193.    with the Alternate Terminal Drivers PCBIOS and ANSITERM.  This
  194.    object replaces the default GT.OBJ that is contained in
  195.    CLIPPER.LIB.  Failing to link in this replacement GT.OBJ will
  196.    result in improper screen displays and possibly cause the computer
  197.    to hang when using the alternate drivers.
  198.    
  199.    Note:  GT.OBJ does not support the horizontal argument in the
  200.    SCROLL() function nor does it support _gtDispBegin(),
  201.    _gtDispEnd(), or _gtDispCount().
  202.    
  203.    ---------------------------------------------------------------------
  204.    4.2  Nantucket Tools II Instructions
  205.    
  206.    The CTUS.OBJ supplied in the \CLIPPER5\OBJ directory replaces the
  207.    NT2US50.OBJ object initially shipped with TOOLS II.  Use it with
  208.    CA-Clipper 5.2 applications that utilize TOOLS II.  This is not
  209.    necessary for users that do not have TOOLS II.
  210.    
  211.    ---------------------------------------------------------------------
  212.    4.3  Database Driver Interoperability
  213.    
  214.    When using the APPEND FROM and COPY TO commands with either
  215.    DELIMITED or SDF data, the allowable data types are limited to
  216.    valid CA-Clipper data types.  Drivers that support "extended" data
  217.    types will only be able to copy to and from DELIMITED or SDF data
  218.    using databases that contain only valid CA-Clipper data types.
  219.    
  220.    ---------------------------------------------------------------------
  221.    4.4  Addendum: to Drivers Reference Chapter
  222.    
  223.    Commands and functions that open indexes behave differently than
  224.    documented when using (.mdx) and (.cdx) indexes.  On these "multi-
  225.    tag" indexes, the index order is not automatically set to the
  226.    first tag in the index.  Instead, the order is set to 0 (natural
  227.    order).  Therefore, you must set the index order to the desired
  228.    tag before performing any action that requires an index (e.g.,
  229.    SEEK).  This affects the following commands and functions: SET
  230.    INDEX, DBSETINDEX(), and ORDLISTADD().
  231.    
  232.    ---------------------------------------------------------------------
  233.    4.5  DBFCDX Driver note
  234.    
  235.    EVAL and EVERY clauses of the INDEX ON command
  236.    
  237.    The EVAL clause functions differently in the DBFCDX driver than it
  238.    does in other RDDs.  The EVAL block is evaluated at the beginning
  239.    and at the end of each indexing process as well as at each record
  240.    as in other RDDs.  At the beginning of the index process both
  241.    BOF() and EOF() are true (.T.).  At the end of the indexing
  242.    process only EOF() is true (.T.).
  243.    
  244.    ---------------------------------------------------------------------
  245.    4.6.1  DBPX Driver Notes
  246.    
  247.    Creating Secondary Indexes
  248.    
  249.    The DBPX Driver automatically creates two index files of the same
  250.    name as the table whenever indexes are created.  These files have
  251.    the extensions (.x??) and (.y??) where "??" represents the ordinal
  252.    position of the key field.
  253.    
  254.    Example:
  255.    
  256.       USE Customer               // Contains fields Lastname
  257.                                  // and Phone
  258.       
  259.       INDEX ON Lastname TO Temp1 // Creates CUSTOMER.X01 and
  260.                                  // CUSTOMER.Y01.
  261.                                  // The name "Temp1" is ignored
  262.       
  263.       INDEX ON Phone TO Temp2    // Creates CUSTOMER.X02 and
  264.                                  // CUSTOMER.Y02.
  265.                                  // The name "Temp2" is ignored.
  266.       
  267.    ---------------------------------------------------------------------
  268.    4.6.2  Opening Secondary Indexes
  269.    
  270.    Since all secondary indexes take the name of the table, you open
  271.    and access them by the name of their key field.
  272.    
  273.    Example:
  274.    
  275.       // Continuing the example in 4.6.1:
  276.       
  277.       SET INDEX TO Lastname          // Open the index using the
  278.       
  279.                                      // name of the key field,
  280.                                      // not "Temp1"
  281.       
  282.       SET INDEX TO Lastname, Phone   // Open the indexes using the
  283.                                      // names of the key fields.
  284.       
  285.       ORDSETFOCUS("Phone")           // Set "Phone" as the
  286.                                      // controlling index
  287.       
  288. ========================================================================
  289. 5. Error Handling
  290.    
  291.    ---------------------------------------------------------------------
  292.    5.1  (b) LOCKERRHAN
  293.    
  294.    During abnormal program terminations or when the program is
  295.    canceled by Alt-C, CA-Clipper 5.2 produces a trace back of all the
  296.    functions active at the time of termination.  Users who are used
  297.    to this information will find a new item in the trace back that
  298.    looks like (b) LOCKERRHAN.  This is a special error handler that
  299.    is automatically installed as an INIT procedure.  This is normal.
  300.    Other error handlers installed by INIT procedures, created by
  301.    third-party vendors or applications developers will show up in
  302.    this manner as well.
  303.    
  304. ========================================================================
  305. 6. New Error Messages
  306.    
  307.    ---------------------------------------------------------------------
  308.    6.1  DBFCDX/1050  Create error
  309.    
  310.    Explanation:  The maximum number of Orders per Order Bag was
  311.    exceeded.  The allowable number of Orders that an Order Bag can
  312.    contain varies by database driver.  See the Drivers guide.
  313.    
  314.    Action:  Create a new Order Bag (index file).
  315.    
  316.    ---------------------------------------------------------------------
  317.    6.2  DBFMDX/1028  Create error
  318.    
  319.    Explanation:  The maximum number of Orders per Order Bag was
  320.    exceeded.  The allowable number of Orders that an Order Bag can
  321.    contain varies by database driver.  See the Drivers guide.
  322.    
  323.    Action:  Create a new Order Bag (index file).
  324.    
  325.    ---------------------------------------------------------------------
  326.    6.3  DBPX/306  Create error
  327.    
  328.    Explanation:  Insufficient memory for an operation like SORT.  It
  329.    is unlikely that this error will occur in the current version.
  330.    
  331.    Action:  Allocate more conventional memory.  Do this by removing
  332.    TSRs, using a 386 memory manager, etc.  Ensure that any C or
  333.    assembly language code in use is using the virtual memory system
  334.    if it is performing dynamic memory allocation.  Any memory
  335.    allocated using the Fixed Memory Allocator function (_xalloc() and
  336.    _xgrab()) reduces the amount of conventional memory available.
  337.    Free this memory as soon as possible after use.
  338.    
  339.    ---------------------------------------------------------------------
  340.    6.4  DBPX/503  Create error
  341.    
  342.    Explanation:  An error was encountered creating, reading or
  343.    writing a table, a lock file, or a temporary file.
  344.    
  345.    Action:  Make sure that sufficient disk space and directory
  346.    entries are available.  If the file exists, make sure it is not
  347.    marked read-only.  In a network environment, make sure the
  348.    application has the necessary rights to create the file.
  349.    
  350.    See Also:  INDEX command, Network Programming chapter in the
  351.    Programming and Utilities guide
  352.    
  353. ========================================================================
  354. 7. Utilities
  355.    
  356.    ---------------------------------------------------------------------
  357.    7.1  DBU Network Capable Features
  358.    
  359.    The DBU sample program has been updated to allow shared use of
  360.    databases.  By default, DBU now opens all databases in shared mode
  361.    and automatically performs the necessary record locks when writing
  362.    data.
  363.    
  364.    Additionally, anytime a database must be opened exclusively (e.g.,
  365.    CREATE INDEX, MODIFY STRUCTURE, ZAP) DBU automatically reopens the
  366.    file in exclusive mode.  Should opening the file in exclusive mode
  367.    fail, DBU attempts to reopen it in shared mode so that you can
  368.    continue.
  369.    
  370.    All operations are done transparently.  If an error occurs, the
  371.    user is notified and recovery is automatic.  In Browse mode,
  372.    changes made by another user are automatically reflected in your
  373.    Browse screen.
  374.    
  375. ========================================================================
  376. 8. Sample Programs
  377.    
  378.    ---------------------------------------------------------------------
  379.    8.1  SAMPLES.LIB
  380.    
  381.    Included in the \CLIPPER5\LIB directory is a new library called
  382.    SAMPLES.LIB.  It contains most of the samples in compiled, ready
  383.    to use form.  To use any of the sample functions you can include
  384.    SAMPLES.LIB in your link line as follows:
  385.    
  386.      RTLINK FI <appObjectList> LIB SAMPLES
  387.    
  388. ========================================================================
  389. 9. Memory
  390.    
  391.    9.1  Free Memory and Load size
  392.    
  393.    Free Memory is the amount of memory available to run applications.
  394.    You can find this value by using the MEM command in DOS version
  395.    5.0, or CHKDSK in earlier versions of DOS.
  396.    
  397.    Load Size is the amount of memory used by the application as it is
  398.    loaded into memory by DOS.  .RTLink reports this value (in
  399.    Kilobytes) at the end of a successful link.
  400.    
  401.    Applications require an amount of memory beyond Load Size, for
  402.    data storage.  The approximate total memory to run an application
  403.    is :
  404.    
  405.                                  minimum:    120K over load size
  406.           desirable for best performance:   +160K over load size
  407.    
  408.    ---------------------------------------------------------------------
  409.    9.2  Fixed Memory (FM) Usage
  410.    
  411.    To reduce the memory requirement of your application, you should
  412.    convert your C and ASM modules to use Virtual Memory instead of
  413.    Fixed Memory.  The VM.API headers accompany these files, but the
  414.    documentation will be available later (be sure to mail the
  415.    included card).
  416.    
  417.    ---------------------------------------------------------------------
  418.    9.3  CA-Clipper File Services
  419.    
  420.    You may reduce the load size of a CA-Clipper application by using
  421.    the built-in CA-Clipper file I/O services instead of the Microsoft
  422.    runtime services.  The FILESYS.API headers accompany these files,
  423.    but the documentation will be available later (be sure to mail the
  424.    included card).
  425.    
  426. ========================================================================
  427. 10.Compatibility Issues
  428.    
  429.    ---------------------------------------------------------------------
  430.    Compiler Kit for dBASE IV
  431.    
  432.    The dBASE IV Kit, version 1.10 is not compatible with CA-Clipper
  433.    5.2.  You can only use version 1.5 of the dBASE IV Kit with
  434.    CA-Clipper 5.2.
  435.    
  436. ========================================================================
  437. 11.Errata
  438.    
  439.    11.1  Reference Guide
  440.    
  441.    ---------------------------------------------------------------------
  442.    11.1.1  Page 2-62, (Compound Assign) operator
  443.    
  444.    The documentation states that the correct operator for doing
  445.    compound exponentiation/assignment is **=.  This is not correct.
  446.    The correct operator is ^=.  Thus, the syntax and all references
  447.    to **= must be changed to ^=.  There is also a note in this
  448.    entry that states:
  449.    
  450.    Note:  The exponentiation operator (^) does not have a
  451.    corresponding compound assignment operator.  The exponentiation
  452.    compound assignment operator is **=.
  453.    
  454.    Replace this paragraph with:
  455.    
  456.    Note:  The exponentiation operator (**) does not have a
  457.    corresponding compound assignment operator.  The exponentiation
  458.    compound assignment operator is ^=.
  459.    
  460.    ---------------------------------------------------------------------
  461.    11.1.2  Page 2-244, DBSETFILTER() function
  462.    
  463.    The description of the <cCondition> parameter should read:
  464.    
  465.    <cCondition> stores the filter condition as a character string
  466.    for later retrieval by the DBFILTER() function.  If you omit
  467.    this optional parameter, the DBFILTER() function will return an
  468.    empty string for the work area.
  469.    
  470.    ---------------------------------------------------------------------
  471.    11.1.3  Page 2-373, Get class
  472.    
  473.    Under the Examples heading, the last line of code:
  474.    
  475.       objGet:postBlock := { |cValue| !EMPTY(cValue) }
  476.       
  477.    should read:
  478.    
  479.       objGet:postBlock := { |oGet| !EMPTY(oGet:varGet()) }
  480.       
  481.    ---------------------------------------------------------------------
  482.    11.1.4  Page 2-479, OUTSTD() function
  483.    
  484.    The reference to SIMPLIO.CH in both the Description and Files
  485.    section of the OUTSTD() function entry should be SIMPLIO.CH.
  486.    
  487.    ---------------------------------------------------------------------
  488.    11.1.5  Page 2-525, REINDEX command
  489.    
  490.    The command syntax has too many square brackets at the end.  The
  491.    syntax should read:
  492.    
  493.       REINDEX [EVAL <lCondition>]
  494.          [EVERY <nRecords>]
  495.       
  496.    ---------------------------------------------------------------------
  497.    11.1.6  Page 2-416, LASTREC() function
  498.    
  499.    Because of the expanded functionality of RECNO() to encompass the
  500.    concept of "identity", we wish to state here that the LASTREC()
  501.    function continues to return only record numbers - not identities.
  502.    LASTREC() has no expanded functionality so it is not "identity
  503.    aware"
  504.    
  505.    ---------------------------------------------------------------------
  506.    11.2  Programming and Utilities Guide
  507.    
  508.    ---------------------------------------------------------------------
  509.    11.2.1.  Page 11-3,  RMAKE [/S] switch
  510.    
  511.    The RMAKE /S switch is no longer supported.
  512.    
  513.    ---------------------------------------------------------------------
  514.    11.3.  Quick Reference Guide
  515.    
  516.    ---------------------------------------------------------------------
  517.    11.3.1.  Page 7-7,  RMAKE [/S] switch
  518.    
  519.    The RMAKE /S switch is no longer supported.
  520.    
  521.    ---------------------------------------------------------------------
  522.    11.3.2.  Page 8-1,  PE [/E] switch
  523.    
  524.    PE has no switches.  It accepts only the filename as a
  525.    parameter.
  526.    
  527.    ---------------------------------------------------------------------
  528.    11.3.3.  Page 8-1,  DBU /e switch
  529.    
  530.    This switch is optional and not case-sensitive.
  531.    
  532.    ---------------------------------------------------------------------
  533.    11.4.  CA-Clipper Drivers Guide
  534.    
  535.    ---------------------------------------------------------------------
  536.    11.4.1.  Page 2-3,  RDDSYS.PRG
  537.    
  538.    The first line of code in RDDSYS.PRG (#include "rddsys.ch") should
  539.    be omitted.
  540.    
  541.    ---------------------------------------------------------------------
  542.    11.4.2.  Page 3-27,  ORDCREATE()
  543.    
  544.    In the ORDCREATE() syntax, the code block is not optional.  The
  545.    syntax should be:
  546.    
  547.       ORDCREATE( <cOrderBagName>,[<cOrderName>],
  548.          <cExpKey>, <bExpKey>, [<lUnique>]) --> NIL
  549.       
  550.    ---------------------------------------------------------------------
  551.    11.4.3  Page 8-6,  Primary Indexes
  552.    
  553.    To clarify the documentation on the creation of key violation
  554.    tables: a key violation table (KEYVIOL.DB) is created only on the
  555.    APPEND FROM command, when the source is a (.db) file and the
  556.    destination is a keyed (.db) file.
  557.    
  558.    ---------------------------------------------------------------------
  559.    11.4.4  Page 8-7,  Temporary Indexes
  560.    
  561.    This version of DBPX does NOT support Temporary (partial) indexes
  562.    
  563.    ---------------------------------------------------------------------
  564.    11.4.5  Page 8-7,  Secondary Indexes
  565.    
  566.    Secondary Indexes, contrary to the documentation, ARE maintained
  567.    the same way normal DBFNTX indexes are maintained.
  568.    
  569.    ---------------------------------------------------------------------
  570.    11.4.6  Page 8-8,  Passwords and Security
  571.    
  572.    The current Paradox driver, contrary to the documentation, does
  573.    NOT support Passwords and Security.
  574.    
  575.    Contrary to the documentation, you may have more than twenty-four
  576.    Paradox tables open at one time.  The number of files is
  577.    determined by the available memory.  You may have up to fifteen
  578.    secondary indexes open in any work area.
  579.    
  580. ========================================================================
  581. 12.Technical Reference
  582.    
  583.    The Technical Reference Guide which includes API (Advanced
  584.    Programming Interface) documentation on the Extend, Fixed Memory,
  585.    Virtual Memory, Terminal, Replaceable Database Driver, and several
  586.    additional APIs is available through the Computer Associates
  587.    Supplemental Offer.  To order, refer to the enclosed slipcard.
  588.    
  589. ========================================================================
  590. 13.Copyright
  591.    
  592.    The installation program used to install CA-Clipper 5.2, INSTALL,
  593.    is based on licensed software provided by Knowledge Dynamics Corp,
  594.    P. O. Box 1558, Canyon Lake, Texas 78130-1558 (USA).  INSTALL is
  595.    Copyrighted (c) 1987-1991 by Knowledge  Dynamics Corp which
  596.    reserves all copyright protection worldwide.  INSTALL is provided
  597.    to you for the exclusive purpose of installing CA-Clipper 5.2.
  598.    Computer Associates has made modifications to the software as
  599.    provided by Knowledge Dynamics Corp, and thus the performance and
  600.    behavior of the INSTALL program shipped with CA-Clipper 5.2 may
  601.    not represent the performance and behavior of INSTALL as shipped
  602.    by Knowledge Dynamics Corp.  Computer Associates is exclusively
  603.    responsible for the support of CA-Clipper 5.2, including support
  604.    during the installation phase.  In no event will Knowledge
  605.    Dynamics Corp be able to provide any technical support for
  606.    CA-Clipper 5.2.
  607.    
  608.    All trade names referenced herein are either trademarks or
  609.    registered trademarks of their respective companies.
  610.    
  611.  
  612.                               *  *  *
  613.