3. Super VGA support for TDW
============================

  TDW handles most of the popular 2, 4, 16 and 256-color high-resolution
  Super VGA modes. If your card isn't supported correctly or if you want
  to debug in a 256-color mode, you need to use a special SuperVGA DLL.

  Currently, the following DLLs are supplied with your language
  compiler to support these SVGA cards and modes:

    SVGA.DLL     - This is a generic DLL that makes Windows do most of
                   the work and thus will work in ANY mode of ANY video
                   card.  The drawback is that overall preformance is
                   slower than with the mode-specific DLLs.  If in
                   doubt, or the other DLLs don't support your
                   card/mode, then use this DLL.  Coprocessor cards like
                   TIGA and XGA work well with this DLL. For more info
                   on this DLL see the file README.SVG

    ATI.DLL      - ATI VGA Wonder and XL cards in certain video modes

    DUAL8514.DLL - Any dual-screen 8514 cards.  This DLL is only for systems
                   that have two color monitors, one attached to the VGA
                   card and one attached to the 8415/A card.  This DLL
                   speeds up performance by preventing TDW from doing some
                   things that aren't required in dual monitor mode.

                   NOTE: Using this DLL is not the same as invoking TDW
                   with the -do parameter, which only specifies using a
                   monochrome screen.

    STB.DLL      - Multi screen based video cards, the STB dll has been
                   developed for use with the MVP2 and MVP4 series of
                   video cards.

    TDVESA.DLL   - Any compliant VESA based video card, the VESA emulation
                   is usually available through a TSR or is implemented on
                   board the video card.

                   NOTE: you can use the VESATEST.EXE program to see if
                   your system provides the proper VESA functions.
                   VESATEST.EXE can be run from either DOS or from Windows.

    TSENG.DLL    - TSENG ET-3000 /ET-4000 based cards in certain video modes

    ULTRA.DLL    - ATI Graphics or 8514 Ultra and Vantage cards or 8514 based
                   based cards with single monitor configuration.  This
                   DLL will work with the 8514/Ultra, 8514/Vantage,
                   Graphics/Ultra, and Graphics/Vantage cards.  It will
                   also work on most IBM 8514/A cards with single
                   monitors.

  From time to time we have new DLLs for new video cards. These DLLs,
  when available, can be downloaded from Compuserve, BIX, GEnie, and our
  local BBS (408-439-9096).  We are constantly creating new DLLs for new
  video cards and modes that appear on the market. If the card you use
  isn't supported by one of our DLLs, please contact Tech Support for
  the latest video DLL information.  Our main Tech Support phone number
  is 408-438-5300.

  To use a SuperVGA DLL, simply edit the TDW.INI file that the installation
  program puts in your main Windows directory.  You can modify TDW.INI
  with any ASCII text editor.  Under the section heading [TurboDebugger]
  there is an option called "VideoDLL".  This entry should equal the
  path and filename of the DLL you want to use for SVGA support (see the
  example later in this file).

  There are also options you can set for the current video DLL.  You list
  these options under the [VideoOptions] heading in any order you like.

  The following list shows all the video options:

    SaveWholeScreen    --    default = 'no'
    Int2FAssist        --    default = 'no'
    DebugFile          --    default = <blank>
    IgnoreMode         --    default = 'no'
    ATI                --    default = 'yes'
    Rows               --    default = 25
    RestoreTextScreen  --    default = 'yes'

  DebugFile can be either blank or set to a specific filename. The other
  four settings must be either 'yes' or 'no'.   Rows must be 25 or 50.

  SaveWholeScreen   (ATI, TSENG, TDVESA)
  ---------------
    This option, normally set to 'no', determines whether the entire screen
    (512k - 64k from 8 planes) is saved (the entire graphics screen is
    cleared when switching to it) or if only the top 32K of planes 0 through
    3 is saved (the entire screen is NOT cleared when switching modes.)

    Saving the whole screen is not usually necessary, but is provided
    in case you're using a nonstandard card that requires that the whole
    screen be saved.  It is also provides support for Alt-F5 when using
    the Int2FAssist mode.

  Int2FAssist  (ATI, TSENG)
  -----------
    This option, normally set to 'no', tells the dll to make a special
    Int 2F call before switching video modes. This call tells the current
    Windows screen driver what's happening. The desired side-effect of this
    call is to make Windows tell all of its child windows to repaint
    themselves. This option is provided mainly to support some ATI Wonder
    and TSENG chip set video modes.

  DebugFile   (ALL DLLs)
  ---------
    The video DLL normally doesn't log any debugging information. If
    you're having problems using a special DLL, you can use the DebugFile
    option to specify the path and filename of a log file. You can use
    the information logged to this file if you need to contact Borland's
    Technical Support.

    The information that gets logged is:

    o the date and time that you ran TDW
    o the version & location of the DLL
    o the name of the current Windows screen driver
    o the state of all TDW.INI options
    o a listing of all calls and parameters to the DLL's functions

  IgnoreMode   (ATI, TSENG)
  ----------
    This option only applies when the video DLL is ATI.DLL or TSENG.DLL.
    It tells the DLL to not do any mode or card checking and to force the
    Int2FAssist option on.  This option is useful for cards that aren't
    directly supported by an official DLL yet, such as Paradise, Video-7,
    Trident, or any other video card without a graphics coprocessor.
    With this option enabled, the functionality is identical to the
    temparory ALL.DLL that we offered in the past.

  ATI   (ULTRA)
  ---
    This option is only used by ULTRA.DLL and is on by default.  If you
    disable it, you can use this DLL on regular IBM 8514/A cards.

  ROWS  (ALL DLLs)
  ----
    This option is only used if you use a configuration file to set the number
    of rows to 43/50 from 25. If you select to have TDW start in 50 line mode,
    set the rows option to 50 in the TDW.INI file.


  RestoreTextScreen   (DUAL8514, STB)
  -----------------
    This option is only valid with the DUAL8514 and STB DLLs.  The valid
    options are:
       Yes    - restores the debugger's screen after exiting.
       No     - does not touch the debugger's screen at all.
       Clear  - forces the screen to clear upon exiting TDW.


  BitBlt    (SVGA)
  ------
    This option controls whether or not the DLL saves the entire screen
    with the BitBlt API call.  For more info see the file README.SVG

  ForceRepaint    (SVGA)
  ------------
    This option controls whether Windows should repaint the entire
    desktop when you return to your program.  For more info see the file
    README.SVG

  Upon loading, TDW first looks for a TDW.INI file in the same directory
  that it is running from.  If it doesn't find it here, it looks in the
  Windows directory.  Then it looks for the video DLL in the place
  specified in TDW.INI.  If it finds the file, TDW accesses the DLL as
  needed. TDW makes calls to the DLL to handle the entire video
  screen-switching context. The DLL accomplishes screen switching by
  allocating a buffer as it gets loaded. Graphic screen contents are
  then saved to this buffer when TDW enters text mode. The DLL restores
  the graphics screen from this buffer when TDW exits text mode. Memory
  allocated for the buffer is freed when the DLL is unloaded.

  If there is an error loading the DLL, or if the DLL doesn't support the
  selected card or mode, TDW reports the error in a Windows dialog box.
  When this happens, TDW unloads it and exits. If this situation occurs,
  remove the DLL's name from the VideoDLL line in the TDW.INI file
  or select a video mode that is supported by that DLL.

  NOTE: Some video modes may require some special handling. The
  Int2FAssist option allows these modes to work correctly on most
  systems. The behavior is as follows: When you set "Int2FAssist=yes",
  the DLL makes Windows tell all sub-windows on the screen to repaint
  themselves as the user application is running. This allows the user
  screen to be viewed when stepping, tracing, or running your
  application. It will not, however, switch to the user screen when you
  press <Alt-F5> because TDW is still in control (and TDW doesn't allow
  Windows to process any messages at this point.)

  If you also set "SaveWholeScreen=yes", then <Alt-F5> will show the
  user screen. (The DLL will now copy the screen back for you.) The
  drawback to enabling SaveWholeScreen is that it will take longer to
  step or trace if TDW needs to switch back to the user screen for that
  particular instruction. Also, extra messages will be passed to your
  application that normally would not be passed. This may affect the
  debugging of certain pieces of code (like finding a bug in an
  owner-draw control). In these cases, you won't want to use this
  option on the current video mode.


  Compatibility Chart
  -------------------

  All of these video DLLs assume that you are using the most current
  Windows screen drivers for your video card.  If you are not sure if
  you are using the latest drivers, contact your video card company for
  more information.

  TSENG.DLL only needs to be used in the 640*480*256 resolution. On all other
  cases TSENG.DLL is not required. The Int2FAssist should be set to "yes" when
  the video dll is used.

  ATI.DLL is required in all video modes except the 1024*768 range of modes.
  When the DLL is used the Int2FAssist should be set to "yes" when the video
  dll is used.

  TDVESA.DLL is required for VESA compliant video cards. These include the
  Video Seven VRAM II and the Weitek Power Windows range of video cards.
  Ensure that you load the VESA emulation before launching Windows. If the
  emulation is not loaded TDW will display an error message indicating that
  the video dll is not supported by the current configuration.  You can
  use the VESATEST.EXE program under Windows or DOS to determine if your
  card supports the proper VESA functions.


  ATI.DLL
  -------
  Using the latest ATI Drivers from ATI Technologies INC requires the
  following TDW.INI file amendments.


     Resolution   ATI.DLL Int2FAssist
   ----------------------------------
   | 640*480    | Yes    |   Yes    |
   ----------------------------------
   | 800*600    | Yes    |   Yes    |
   ----------------------------------
   | 1024*768   | No     |    No    |
   ----------------------------------


  TSENG.DLL
  ---------
  Using the latest TSENG Drivers that are availale from the Microsoft
  Windows Driver Library on Comp-U-Serve requires the following TDW.INI
  file amendments.


     Resolution   TSENG.DLL  Int2FAssist
   -------------------------------------
   | 640*480    | Yes       |   Yes    |
   -------------------------------------
   | 800*600    | No        |    No    |
   -------------------------------------
   | 1024*768   | No        |    No    |
   -------------------------------------



  TDVESA.DLL
  ----------

  The TDVESA.DLL has been tested with the following hardware configurations.


       Video Card         VESA TSR Required*  TDVESA.DLL
  --------------------------------------------------------
  |Video Seven VRAM II  |  Yes - V7VESA     |    Yes     |
  --------------------------------------------------------
  |Weitek Power Windows |  No               |    Yes     |
  --------------------------------------------------------

  * This TSR is supplied with Video Card

  SVGA.DLL
  --------
  Good uses include: Trident, Video-7, Oak Tech., Paradise, TIGA, XGA,...

