| (Extract of release notes of August 1998)
 As Logitech Modula-2 3.40 continues to be used for a number
    of large projects, TERRA compiled some first M2V3 Library Support
    Releases in February and June 1997. However, after checking out
    the system for year 2000 compliance in 1998, some year 2000 and
    also year 2028 problems became apparent. The TERRA M2V3 Library Support Release 2.0 resolves these
    problems for the library itself. While maintaining full compatibility
    with the original Logitech Modula-2 library, the M2V3 Library
    Support also provides some additional functionality, that allows
    customers to address year 2000 problems in their Logitech Modula-2
    application programs. For details, please refer to the corresponding
    section below, and to the document provided in file M2DOC\YEAR2000.TXT. The M2V3 Library Support Release also includes fixes for the
    other major problems known to exist in the original Modula-2
    V3.40 Library and Run-Time Support. In addition, the descriptions
    of the known compiler problems, as well as a few TERRA utility
    modules have been included into the M2V3 Library Support. Note, however, that the M2V3 Library Support does not
    address the year 2000 problems that have been identified in the
    Logitech Modula-2 V3.40 compiler. Due to the significant
    efforts required to fix those problems, the corrected compiler
    (TERRA Version 3.41 or later) is available separately from TERRA. CompatibilityThe M2V3 Library Support is compatible with Logitech Modula-2
    V3.40 and all TERRA products for Logitech Modula-2 V3. In particular,
    this includes the TERRA Standard and Protected Mode ROM Tools
    V3.50, the TERRA Large System Tools V1.50/W95, the Logitech/TERRA
    Real Time Kernel, and the TERRA Support Library for using Logitech
    Modula-2 V3 together with the DOS extender DOS/16M (by Tenberry
    Inc.). InstallationThe M2V3 Library Support may be installed by setting the current
    drive and directory to the one where the distribution files reside
    and running the INSTALL.BAT program. You will be prompted for the target drive and directory where
    to install the files. We recommend to install the update into
    the same directories where your original Modula-2 V3.40 system
    resides, causing the new files to replace those of the previous
    version. Note:Logitech Modula-2 V3 offers several alternatives for linking
    programs that use REAL (floating point) arithmetic. The default
    is to compile for the emulator (option /E). The M2L linker implicitly
    uses the library M2REAL.LIB, which by default is identical to
    the pure emulator library E87LIB.LIB. Users may also copy one
    of the two other floating point libraries (C87LIB.LIB or M87LIB.LIB)
    to M2REAL.LIB.
 Because the M2V3 Library Support provides corrected versions
    of the floating point libraries, file M2REAL.LIB must also be
    replaced accordingly. Before starting the installation, you should
    check out (e.g. by means of the DOS command COMP) and note, which
    one of the floating point libraries is identical to M2REAL.LIB
    in the M2LIB\LIB sub-directory of your Modula-2 V3 installation
    directory. The installation procedure will ask you whether it should
    copy M87LIB.LIB or C87LIB.LIB instead of the default E87LIB.LIB
    to M2LIB\LIB\M2REAL.LIB. Answering "N" to the two corresponding
    questions causes the pure emulator library E87LIB.LIB to be copied.
    If you do not use the default REAL emulator library (i.e. if
    on your system M2REAL.LIB (in the M2LIB\LIB sub-directory) is
    either identical to C87REAL.LIB or M87REAL.LIB), then you will
    want to answer "Y" to one of the these two questions. Year 2000/2028 Compliance of Library and Application ProgramsThe original Logitech Modula-2 V3.40 library contains some
    year 2000 and 2028 problems and limitations. A number of modules
    had to be changed in order to remove these. Note well:Due to the nature of these problems, and due to the fact that
    full compatibility to the original library version must be maintained
    by the M2V3 Library Support Release, the year 2000/2028 compliance
    of your application programs (with regard to using the library)
    cannot simply be achieved by relinking after installation
    of the corrected library.
 You will probabely need to scan your source code and you may
    need to modify some of it. Usually, only very few modifications
    will be required. Please refer to the document provided in file M2DOC\YEAR2000.TXT
    for more precise hints on these issues. You may also want to
    take a look at the extended TERRA version of module "TimeDate",
    which is provided by the M2V4 Support Release (and replaces the
    corresponding Logitech original). Its definition module can be
    found in file M2LIB\DEF\TIMEDATE.DEF. Contents of M2V3 Library Support Release 2.0Standard Library:Correction of major problems known, support for year 2000 compliance.
 New Library Modules:Two small sets of useful modules.
 Run-Time Support:TERRA version 3.50 RTS (same as used with TERRA Run-Time Monitor
    TRTM).
 Bug Documentation:Descriptions of the known compiler problems, based on TERRA's
    compiler release V3.41 or later. (The year 2000 problems of the
    original Logitech V3.40 compiler have been corrected in that
    version, and, therefore, are not described.)
 Sub-directory M2DOC: The files BUILDLIB.TXT, LIBSUP-2.TXT (this file), RTSREAD.ME
    and YEAR2000.TXT are provided. BUILDLIB.TXT contains information on recompiling/assembling
    library modules and replacing their object files in the corresponding
    library files. RTSREAD.ME provides information on the Run-Time Support and
    on rebuilding the RTS libraries. YEAR2000.TXT provides information on the year 2000/2028 problems
    and limitations of the original Logitech library, on TERRA's
    library extensions and modifications for fixing these, as well
    as hints and tips for checking your application programs with
    regard to these problems. Sub-directory M2BUGS: This (new) sub-directory contains descriptions of the known
    compiler (and some Point editor, Debugger, and library) problems. Sub-directory M2LIB\TERRA1: This sub-directory contains TERRA replacement modules for
    the standard library modules "Calendar", "Chronometer",
    and "DurationOps".See file READ.ME in that sub-directory for more information.
 
 Sub-directory M2LIB\TERRA2:
 This sub-directory contains the TERRA utility modules "FreeStorage"
    (computation of free memory) and "QuickSort" (sorting
    of arrays and records given by an array of pointers). M2LIB sub-directories ASM, DEF, LIB, MOD, RTS, and SYM: The files provided in the M2LIB sub-directories ASM, DEF,
    LIB, MOD, RTS and SYM with this TERRA Support for LOGITECH Modula-2
    V3.40 contain the modified V3.40 library and the TERRA 3.50 RTS
    files as they are in use at TERRA. The V3.40 sources of the following modules have been modified/corrected,
    and their OBJ files (compiled with /f-/r-/t-/s-/nod, assembled
    with /ml) have been replaced in the appropriate libraries: 
      Calendar - Correction of bug TB-901120.5, problems with comparison
      functions.DebugPMD - Correction of problems on network drives.
Decimals - Missing CASE label.
      DiskDirectory - Setting of last drive.
      DOSMemory - Correction of bug TB-901121.1, problem with process-specific
      block list.
      Exec - Correction of bug TB-901120.1, problems with command
      line arguments in procedure "Run".
      FileSystem Correction of bug TZ-90-07-25.1, direction-flag.
      LoadPath - History, formatting and comments re-introduced
      (no real change of code).
      LogiFile - Procedures and "status" changes corrected
      and improved.
      Overlay - Correction of bug TB-961118.1, problem with overlay
      sizes that are a multiple of 512 bytes.
      RealConversions - Correction of bug TZ-BJ-18/05/90, wrong
      addition of 1.00 in "RealToString".
      Strings - Correction in "CompareStr" for non-zero
      terminated string arguments.
      TimeDate - Extended TERRA version is included.
     As far as necessary, these and further standard libarary modules
    have also been updated for year 2000/2028 compliance. Due to the above corrections, the following Modula-2 library
    files have been modified and are updated in M2LIB\LIB with the
    corresponding corrected object files: 
      E87LIB.LIB, M87LIB.LIB, C87LIB.LIB
      M2REAL.LIB (Copy of E87REAL.LIB; you may want to copy M87LIB
      or C87LIB to M2REAL if you prefer.)
      M2LIB.LIB
      M2RTS.LIB, MCRTS.LIB, CMRTS.LIB (TERRA V3.50 RTS libraries)
     Technical Note on the New Symbol File for Module "TimeDate"The TERRA version of module "TimeDate" is compatible
    to the original Logitech version, but provides additional features.
    In order to make these available, its definition module had to
    be (re)compiled. In order to maintain the compatibility also on the level of
    symbol and object files generated by compilations prior to the
    installation of the M2V3 Library Support, the symbol key in TIMEDATE.SYM
    has been patch appropriately. Therefore, the installation of
    the M2V3 Library Support and the use of the this new symbol file
    does not force any recompilations. |