
WARNING!
     Microsoft's QuickBASIC compilers versions 3.0 - 4.0 have bugs in them
     that affect ADVBAS users!



QuickBASIC 3.0:
     If you compile a program using ADVBAS in the programming environment
     with the compile-to-BCOM30 option, the results will be unreliable at
     best.  If you need to generate stand-alone programs, do not use the
     programming environment with compile-to-BCOM30.  Instead, compile
     from the command line.  Check your QuickBASIC manual for more
     information if you are unfamiliar with that method.  A typical syntax
     will be:

     QB filename/O;

     with a letter "O", not the number zero.  You may need additional
     switches besides the "/O", depending on your program.



QuickBASIC 4.0:
     If you compile a program using ADVBAS in the programming environment
     to an EXE file, your program will be much larger than it should be,
     if it is correctly created at all.  QB4 generates the wrong syntax
     for linking the file-- a frankly ludicrous mistake by Microsoft.
     Instead of using the environment to compile to EXE files, use the
     stand-alone BC.EXE compiler from the command line.  A typical syntax
     will be:

     BC filename;
     LINK filename/EX,,NUL,ADVBAS

     You can also use the standard switches with BC to produce different
     output: "/O" for stand-alone (as opposed to BRUN-dependent), "/D" for
     debug, "/ZI" for CodeView, and so forth.  Check your QB manual for
     more details.

     Also note that Microsoft has changed the internal handling of static
     arrays (not a bug as such, but certainly a nuisance), which
     means that GETSCREEN and PUTSCREEN will not work with QuickBASIC 4.0.
     Other array routines will work with the stand-alone version of the
     compiler, BC.EXE, but not in the programming environment provided by
     QB.EXE (due to a bug in QB.EXE).  So, you will be able to use all
     array routines except GETSCREEN and PUTSCREEN, but only in programs
     compiled using BC.EXE, not in the programming environment.  It is
     possible to get around this problem, which I have done with the
     commercial version of the library, ProBas.  However, the changes to
     the routines are fairly drastic, and I can't put them in ADVBAS
     without violating my contract with HCSI.  So, if you really need to
     use the array routines in the QB4 environment, get yourself a copy of
     ProBas (see the PROBAS.DOC file).  It's guaranteed to be a more
     effective solution than trying to get Microsoft to fix the problem!

     Microsoft has also done something really bizarre to communications.
     None of the ADVBAS comm routines will function properly under either
     of the QuickBASIC 4.0 compilers.  I'm still investigating this one.
