
            Microsoft BASIC Interpreter for XENIX 286 Personal Computers
                                    November, 1986

            
            This file contains information concerning corrections to the
            manual.
            
            ERRORS IN THE MANUAL:
            
              - Page 4:  The first bullet "Larger program work areas..."
              should be deleted.  The maximum program area is 64K Bytes.
              
              - Page 49: In lines 1020, 1060, and 1100, the INPUT
              statements should be LINE INPUT statements.  In addition,
              the note about "no commas" in lines 1060 and 1100 should
              be removed.
              
              - Page 55: In lines 1120, 1160, and 1200 the INPUT
              statements should be LINE INPUT statements.   In addition,
              the note about "no commas" in lines 1160 and 1200 should
              be removed.
              
              - Page 59:  Lines 110 and 120 should be reversed in order.
              
              - Page 73:  In the two assembly language code segments the
              instruction:
              
                                    ADD   SP,space
              
              statement should be:
              
                                    SUB  SP,space
              
              - Page 122:  The first paragraph in the REMARKS section
              references the BLOAD and BSAVE commands, which are not
              supported in this product.

              - Page 194:  In the REMARKS section.  The word "unsigned"
              should be removed from the last sentance in each
              paragragh.
              
              - Page 197:  Lines 1120 and 1140 should be reversed in
              order.  (ie: You should LOCK the file before doing the
              GET.
              
              - Page 229:  PRESET and PSET are not supported in this
              product.

              - Page 333:  The syntax indicates that the name of the
              data file is used as a parameter to the IOPEN#.  This
              parameter should be the address of a string contaning the 
              filename, i.e., VARPTR(filename$).

            ADDITIONS TO THE MANUAL:
              
              - BASIC comes with a new version of the linker.  This
              version has a new error message:
                  "Warning: __.SYMDEF out of date in xxx.a"
              
              This may occur on any library, even system libraries such
              as Mlibc.a, if the file was copied with cp this causes the
              creation date of the file to be changed to a time later
              than the internally stored date for __.SYMDEF.  If this
              message is displayed it will be necessary to run ranlib on
              the file in question. The linker is stored in /usr/bin/basic
              and will not affect other developers.
              
              
              - There was a restriction in earlier versions of ISAM
              which required that all users sharing a file be of the
              same effective user ID.  This is no longer the case.  The
              section in the BASIC User's Guide which discusses how to
              save the effective user ID can be removed.  Files are now
              created in 0666 mode.

              - BASIC will run on either Xenix System III or System V.
              In order to do this, it must be created under System III.
              During the installation of BASIC on System V, you will see
              messages including:

                   msinstall : setting file permissions
                  /etc/fixperm: bad version executable file: <filename>

              This is a result of BASIC's being created under System III
              and should be ignored.

-------------------------------------------------------------------------
I) ISAM Locking Problems on IBM PC XENIX 2.0 ( System V)
   
   You need to use the latest release of IBM PC Xenix 2.0, which includes
   fixes to a problem with record locking.  The problem manifests itself
   when an attempt is made to access a record that has been locked by
   another process.  The status code returned by the attempted access is
   incorrect.  It should return a non-zero status, indicatig the record
   is locked.  It returns zero, indicating that the record is not locked.

   Returning the IBM Warranty Registration card entitles PC-XENIX 2.0 users
   support on the product.  A packet of information is then supplied by IBM
   for reporting problems.  Report that you are using the MS-BASIC Interpreter
   and have the file locking condition, per the instructions with the IBM
   XENIX Support packet.  A fix was supplied and is available.

------------------------------------------------------------------------------
II) Random File Locking Problem on Santa Cruz Operation XENIX V2 (system V)
    and higher, running on IBM PC-AT hardware.

    There is a problem when using BASIC Random files and stacking "total"
    and "partial" LOCKs, on overlapping portions of the same file (see 
    page 195 of your manual for a discussion of "total" and "partial" LOCKs).

    It is strongly recommended that your programs do not attempt
    to mix "total" and "partial"  LOCKs on overlapping ranges of records.

------------------------------------------------------------------------
III) The following problems have been corrected in Xenix BASIC Interpreter
     Version 5.41:

1.  DATE$ and TIME$ used repetitively no longer cause memory fault.

2.  RETURN <linenumber> now works correctly.

3.  INPUT, INPUT$, EDIT now echo properly to the screen.

4.  32-bit record numbers now work correctly.

5.  A problem existed when a file was OPENed APPEND when it had previously
    been locked by another process.  This has been corrected.

6.  LLIST <range> now works correctly.

7.  INT and VAL now work correctly in the binary version of the interpreter.

8.  LOF now returns exact results.

9.  LOCATE following a LINE INPUT statement now works correctly.

