home *** CD-ROM | disk | FTP | other *** search
/ Monster Media 1994 #1 / monster.zip / monster / PROG_PAS / TPPCX256.ZIP / JCS_READ.ME < prev    next >
Text File  |  1993-12-21  |  38KB  |  784 lines

  1. Notes on the Super VGA BGI Drivers      Document Version 3.07
  2. ----------------------------------
  3. The contents of this disk or file are
  4.  
  5.     copyright (C) 1990,1991 by Peter F. Jones
  6.           ALL RIGHTS RESERVED
  7.  
  8. Contents
  9. --------
  10.  
  11. If you have obtained these files from the self extracting file BGI.EXE,
  12. you will only have crippled versions of the Super VGA BGI drivers. Note that
  13. the crippled drivers have the same files names as the fully functional
  14. versions. For further details see the description of BGI.EXE in "b)" below.
  15. BGI.EXE will however have a FULLY OPERATIONAL 320x200 256 color MCGA/VGA
  16. called MCVGA256.BGI. This driver is faster that the one Borland has released,
  17. and has a working floodfill function. You are free to use and distribute
  18. MCVGA256.BGI as long as you dont charge for it, include the copyright notice,
  19. and include the complete file BGI.EXE with it.
  20.  
  21. If you have purchased one or more BGI drivers, this disk will contain two
  22. groups of files: a) The fully functional BGI drivers and b) Other Files: Demo
  23. programs and autodetect source code that can be incorporated in your programs.
  24.  
  25. a) BGI Drivers
  26.    Only the drivers which you have ordered will be on the disk. The current
  27.    selection of drivers includes:
  28.  
  29.  
  30.    File Name                        Description
  31.  
  32.    MCVGA256.BGI  A 256 color BGI driver for use with regular MCGA and
  33.                  VGA systems. This driver is faster that the one Borland
  34.                  has released, and has a working floodfill function. You are
  35.                  free to use and distribute MCVGA256.BGI as long as you 1)dont
  36.          charge for it, 2)include the copyright notice, and 3) include
  37.          the complete file BGI.EXE with a note that the file has
  38.                  additional information about bgi drivers.
  39.  
  40.                  Possible graphics modes offered by this driver are:
  41.  
  42.                  Mode#     Description
  43.  
  44.                    0     320x200 256 Color
  45.  
  46.        ***************************************************************
  47.        ****MCVGA256.BGI is NOT CRIPPLED and is included in BGI.EXE.***
  48.        ***************************************************************
  49.  
  50.    MCVGA480.BGI  A 256 color BGI driver that gets higher than normal resolution
  51.                  with regular MCGA and VGA systems. This driver reprograms the
  52.                  VGA registers to create a non-standard 360x480 resolution
  53.                  video mode. It should allow most users stuck with standard
  54.                  VGA Cards or IBM PS/2s to get better graphics images without
  55.                  changing hardware on the system. Because this driver changes
  56.                  the VGA registers, it may not work with some VGA cards that
  57.                  are not fully register compatible.
  58.  
  59.                  Possible graphics modes offered by this driver are:
  60.  
  61.                  Mode#     Description
  62.  
  63.                    0     360x480 256 Color
  64.  
  65.  
  66.    ATIVW256.BGI  The 256 color BGI driver for use with the ATI VGA WONDER.
  67.                  Possible graphics modes offered by this driver are:
  68.  
  69.                  Mode#     Description
  70.                    0     320x200 256 Color
  71.                    1     640x400 256 Color
  72.                    2     640x480 256 Color  (requires 512K on card)
  73.                    3     800x600 256 Color  (requires 512K on card)
  74.                    4     1024x768 256 Color (requires 1M on card)
  75.  
  76.    ATIVW768.BGI  The 16 color BGI driver for use with the ATI VGA WONDER.
  77.                  Possible graphics modes offered by this driver are:
  78.  
  79.                  Mode#     Description
  80.                    0     1024x768 16 Color  (requires 512K on card)
  81.  
  82.    TRI256.BGI    The 256 color BGI driver for use with TRIDENT 8800CS
  83.                  and 8900 cards.
  84.                  Possible graphics modes offered by this driver are:
  85.  
  86.                  Mode#     Description
  87.                    0     320x200 256 Color
  88.                    1     640x400 256 Color
  89.                    2     640x480 256 Color  (requires 512K on card)
  90.                    3     800x600 256 Color  (requires 512K and 8900 chip set)
  91.                    4    1024x768 256 Color  (requires 512K and 8900 chip set)
  92.  
  93.    TRIBR256.BGI  The 256 color BGI driver for use with TRIDENT 8800BR cards.
  94.                  Possible graphics modes offered by this driver are:
  95.  
  96.                  Mode#     Description
  97.                    0     320x200 256 Color
  98.                    1     640x400 256 Color
  99.                    2     640x480 256 Color  (requires 512K on card)
  100.                    3     800x600 256 Color  (requires 512K on card and 8900 chip set)
  101.                    4    1024x768 256 Color  (requires 512K on card and 8900 chip set)
  102.  
  103.    VESA256.BGI   The 256 color BGI driver for use with VESA compatible cards.
  104.                  VESA is the "Video Electronics Standards Association"
  105.                  (San Jose, CA) which has produced a Super VGA standardized
  106.                  bios specification. It is hoped that Super VGA card
  107.                  manufacturers will support this standard. If we do not
  108.          have a driver specifically for your card, contact the
  109.                  card's manufacturer and see if the card is VESA compatible,
  110.                  or if they have a VESA driver for it. If so, then this
  111.                  driver can probably be used with your card (depending on
  112.                  the VESA modes you card supports).
  113.  
  114.                  Possible graphics modes offered by this driver are:
  115.  
  116.                  Mode#     Description
  117.                    0     640x400 256 Color
  118.                    1     640x480 256 Color  (requires 512K on card)
  119.                    2     800x600 256 Color  (requires 512K on card)
  120.                    3    1024x768 256 Color  (requires 768K on card)
  121.                    4   1280x1024 256 Color  (requires 1M on card)
  122.  
  123.    PAR256.BGI    The 256 color BGI driver for use with Paradise (Western
  124.          Digital) cards.
  125.  
  126.          Possible graphics modes offered by this driver are:
  127.  
  128.                  Mode#     Description
  129.                    0     320x200 256 Color
  130.                    1     640x400 256 Color
  131.            2     640x480 256 Color  (requires 320K on card)
  132.            3     800x600 256 Color  (requires 512K on card)
  133.                  Note: mode 3 is not supported on all cards.
  134.  
  135.    TSNG4256.BGI  The 256 color BGI driver for use with TSENG ET4000
  136.          chip set based cards. We have tested it on the
  137.                  STB Powergraph VGA card.
  138.  
  139.          Possible graphics modes offered by this driver are:
  140.  
  141.                  Mode#     Description
  142.                    0     320x200 256 Color
  143.                    1     640x350 256 Color
  144.                    2     640x400 256 Color
  145.            3     640x480 256 Color
  146.                    4     800x600 256 Color
  147.                    5     1024x768 256 Color
  148.  
  149.                    Note: the actual modes available will depend
  150.                    on the particular VGA card, memory and monitor.
  151.  
  152.  
  153.    TSNG3256.BGI  The 256 color BGI driver for use with TSENG ET3000
  154.          chip set based cards. We have tested it on the
  155.                  STB EVGA 16 VGA card.
  156.  
  157.          Possible graphics modes offered by this driver are:
  158.  
  159.                  Mode#     Description
  160.                    0     320x200 256 Color
  161.                    1     640x350 256 Color   (requires 512K on card)
  162.            2     640x480 256 Color   (requires 512K on card)
  163.                    3     800x600 256 Color   (requires 512K on card)
  164.  
  165.                    Note: the actual modes available will depend
  166.                    on the particular VGA card, memory and monitor.
  167.  
  168. b) Other Files
  169.  
  170.    These  programs and autodetect source code that can be incorporated in your
  171.    programs.
  172.  
  173.  
  174.    File Name                        Description
  175.  
  176.    READ.ME         This file.
  177.  
  178.    VGADEMO.PAS     Borland's sample program to demonstrate the use of the
  179.                    drivers and autodetect functions in Pascal. Must be
  180.                    compiles with Turbo Pascal to run.
  181.  
  182.    VGADEMO.EXE     Compiled version of VGADEMO.PAS. (not included -
  183.                    you must use Turbo Pascal to compile VGADEMO.PAS
  184.                    to create this file.)
  185.  
  186.    VGATEST.C       Sample program to demonstrate the use of the drivers and
  187.                    autodetect function in C. (Much simpler program than
  188.                    VGADEMO.PAS)
  189.  
  190.    VGATEST.MAK     Makefile to create VGATEST.EXE. To create VGATEST.EXE,
  191.                    type
  192.  
  193.                    make -fvgatest.mak
  194.  
  195.                    followed by pressing the 'Enter' or 'Return' key. See your
  196.                    Turbo C manual for details on how to use the 'make'
  197.                    program which is included with Turbo C. Note: this makefile
  198.                    assumes you have your path set to the Turbo C directory,
  199.                    and that the Turbo C directory is C:\tc. If your compiler
  200.                    is in some other directory, you will have to modify the
  201.                    paths in teh makefile.
  202.  
  203.    CHOOSE.PAS      Subroutine that allows the user to select which driver
  204.                    to try from all the drivers on the disk, and after a
  205.                    driver has been selected, the user is then given a choice
  206.                    of which graphics mode to use. It uses the standard
  207.                    autodetect functions to tell the user which drivers and
  208.                    modes should work with the existing hardware, but allows
  209.                    the user to override the standard autodetect routines and
  210.                    provides a dummy autodetect routine to force the use of
  211.                    a questionable video mode. This may be useful when trying
  212.                    the drivers with hardware that is similer - but not
  213.                    identical to the hardware for which the drivers were
  214.                    written.
  215.  
  216.    CHOOSE.C        C version of CHOOSE.PAS.
  217.  
  218.    RGBPALET.PAS    Subroutines which use register level operations to
  219.                    read and write the red,green and blue components
  220.                    of the 256 color VGA DAC registers. Operation
  221.                    is much the same as turbo's setRGBpalette subroutine
  222.                    except that because registers are used instead of interupts,
  223.                    the time to update a palette entry is reduced. However,
  224.                    some VGA boards may experiance snow so you are advised
  225.                    to test the set routines with your particular hardware.
  226.                    In addition to "register_setrgbpalette", there is also
  227.                    "register_getrgbpalette" which can be used to read the
  228.                    current rgb values of the DAC palette entries, and
  229.                    "register_setallrgbpalette" which can be used to set
  230.                    a number of sucessive DAC palette values. In particular,
  231.                    when used with the constant array default_VGA_palette[],
  232.                    "register_setallrgbpalette(default_VGA_palette,0,16)"
  233.                    can be used to reset the first 16 colors to the standard
  234.                    VGA colors. This can be used to reset the DAC palette
  235.                    after changing their values, or to initialize the first
  236.                    16 colors on VGA boards that do not automatically do this
  237.                    when a VGA graphics mode is entered.
  238.                    ******  This file is not included with the demo ******
  239.                    ******  versions of the drivers. It is included ******
  240.                    ******  on the disk when any of our BGI drivers ******
  241.                    ******  are purchased.                          ******
  242.  
  243.  
  244.  RGBPALET.C        C version of RGBPALET.PAS
  245.                    ******  This file is not included with the demo ******
  246.                    ******  versions of the drivers. It is included ******
  247.                    ******  on the disk when any of our BGI drivers ******
  248.                    ******  are purchased.                          ******
  249.  
  250.  
  251.  
  252.    BGI.EXE         A self extracting archive file that holds crippled
  253.                    versions of the drivers. You may freely distribute this file
  254.                    to others without special license agreements. Note: the
  255.                    crippled version of the drivers have the same name as the
  256.                    working version. DO NOT GET THEM MIXED - only run BGI.EXE
  257.                    in a different disk / directory.
  258.  
  259.                    The crippled BGI drivers will be fully functional for
  260.            approximately 2 minutes after being loaded by the
  261.            application program. After that period, some
  262.                    functions (such as linedraw etc) will fail. However you
  263.                    should be able to test the driver with your hardware
  264.                    and software in that period of time. If you run out of time,
  265.                    just restart your software (or reload the driver).
  266.  
  267.            This crippled .BGI drivers are slightly slower and larger
  268.            in file size than the fully functional versions.
  269.  
  270.    BGI.TXT         A short description of BGI.EXE. It is intended for use
  271.                    in the file description section of some BBSs.
  272.  
  273.  
  274.    ATIVW.C         Subroutines to be used with  ATIVW256.C and ATIVW768.C
  275.    ATIVW.OBJ       Compiled and assembled version of ATIVW.C
  276.    ATIVW.H         Header with function prototype for ATIVW.C.
  277.  
  278.    ATIVW256.PAS    Pascal autodetect for ATI VGA Wonder 256 color modes.
  279.    ATIVW256.C      Turbo C version of ATIVW256.PAS.
  280.    ATIVW256.H      Header with function prototype for ATIVW256.C.
  281.  
  282.    ATIVW768.PAS    Pascal autodetect for ATI VGA Wonder 1024x768 16 color mode.
  283.    ATIVW768.C      Turbo C version of ATIVW768.PAS.
  284.    ATIVW768.H      Header with function prototype for ATIVW768.C.
  285.  
  286.    TRI256.PAS      Pascal autodetect for TRIDENT 8800CS/8900 256 color modes.
  287.    TRI256.C        Turbo C version of TRI256.PAS.
  288.    TRI256.H        Header with function prototype for TRI256.C.
  289.  
  290.    TRIBR256.PAS      Pascal autodetect for TRIDENT 8800BR 256 color modes.
  291.    TRIBR256.C        Turbo C version of TRIBR256.PAS.
  292.    TRIBR256.H        Header with function prototype for TRIBR256.C.
  293.  
  294.    MCVGA256.PAS    Pascal autodetect for MCGA and VGA Cards.
  295.    MCVGA256.C      Turbo C version of MCVGA256.PAS.
  296.    MCVGA256.H      Header with function prototype for MCVGA256.C.
  297.                    Note: use this as teh autodetect function for
  298.                    both MCVGA256.BGI and MCVGA480.BGI.
  299.  
  300.    VESA256.PAS     Pascal autodetect for VESA compatible VGA cards.
  301.    VESA256.C       Turbo C version of VESA256.PAS.
  302.    VESA256.H       Header with function prototype for VESA256.C.
  303.    VESA256.OBJ     Compiled version of VESA256.C.
  304.  
  305.    PAR256.PAS      Pascal autodetect for Paradise 256 color modes.
  306.    PAR256.C        Turbo C version of PAR256.PAS.
  307.    PAR256.H        Header with function prototype for PAR256.C.
  308.  
  309.    TSNG4256.PAS      Pascal autodetect for TSENG ET4000 based cards.
  310.    TSNG4256.C        Turbo C version of TSNG4256.PAS.
  311.    TSNG4256.H        Header with function prototype for TSNG4256.C.
  312.  
  313.    TSNG3256.PAS      Pascal autodetect for TSENG ET3000 based cards.
  314.    TSNG3256.C        Turbo C version of TSNG3256.PAS.
  315.    TSNG3256.H        Header with function prototype for TSNG3256.C.
  316.  
  317. Note: the autodetect files listed above are included even if you did
  318. not order the corresponding driver. You you can still test code that
  319. uses these routines by extracting the crippled versions of these drivers
  320. from BGI.EXE.
  321.  
  322.  
  323. READ THIS
  324. ---------
  325.  
  326. All files on this disk or in this archive file except the fully functional
  327. Super VGA BGI drivers may be used or incorporated in your software provided
  328. the copyright notices and JONES COMPUTER SUPPLIES' address is included and is
  329. clearly visible to any potential user. If you intend to include any
  330. individual files from this disk - the autodectect source code or the low
  331. resoultion MCGA/VGA driver MCVGA256.BGI for example - you must also include
  332. an unmodified version of the file BGI.EXE.
  333.  
  334. The fully functional Super VGA BGI drivers may only be used as outlined by
  335. your license agreement - if you wish to distribute them with your software,
  336. you must obtain a special license agreement from JONES COMPUTER SUPPLIES.
  337.  
  338. In order that we can continue to provide BGI drivers at low cost, please
  339. help us by distributing the self extracting file BGI.EXE (which holds a
  340. crippled demonstration version of the drivers) to anyone (or BBS) that might
  341. be interested.
  342.  
  343.  
  344. COMPATIBILITY LIST
  345. -------------------
  346.  
  347. Here is a list of manufacturers and VGA cards that may help you select
  348. a BGI driver:
  349.  
  350. VGA CARD/Chip Set           DRIVER             COMMENTS
  351. --------                    ------             --------
  352. Acr Computers               try "ATI VGA Wonder"
  353. ALR Computers               try "Paradise VGA1024"
  354. AST Computers               try "Paradise VGA1024"
  355. AT&T Computers              try "Paradise VGA1024"
  356. ATI VGA Edge                ATIVW256.BGI       Should work
  357. ATI VGA Wonder              ATIVW256.BGI       Tested and Works
  358.                             ATIVW768.BGI       Tested and Works
  359. ATI VGA Wonder XL           ATIVW256.BGI       Tested and Works
  360.                             ATIVW768.BGI       Tested and Works
  361. ATI VGA Wonder+             ATIVW256.BGI       Should work
  362.                             ATIVW768.BGI       Should work
  363. ATI VGA Integra             ATIVW256.BGI       Should work
  364.                             ATIVW768.BGI       Should work
  365. ATI 18800 Chip Set          ATIVW256.BGI       Should work
  366.                             ATIVW768.BGI       Should work
  367. ATI 18810 Chip Set          ATIVW256.BGI       Should work
  368.                             ATIVW768.BGI       Should work
  369. Austin Computers            try "TSENG ET3000" or "TSENG ET4000"
  370. Compuadd Computers          try "TSENG ET3000" or "TSENG ET4000"
  371. Dell Computers              try "Paradise VGA1024"
  372. Diamond Speedstar VGA       TSENG4256.BGI      Used by one of our customers
  373.                                                We have not tested it
  374.                                                Need to set VMODE to "Custom"
  375.                                                monitor to make Diamond work.
  376. Gateway Computers           try "Diamond Speedstar VGA"
  377. HP (Hewlett-Packard) Cards  try "Paradise VGA1024"
  378. Hyundai Computers           try "ATI VGA Wonder"
  379. IBM PS/2                    MCVGA256.BGI       All MCGA/VGA systems
  380.                             MCVGA480.BGI       Should work on most systems
  381. Logix 2000                  TRI256.BGI         Used by one of our customers
  382.                                                We have not tested it
  383. NEC Computers               try "Paradise VGA1024"
  384. Orchid Prodesigner          TSENG3256.BGI      Should work
  385. Orchid Prodesigner II       TSENG4256.BGI      Used by one of our customers
  386.                                                We have not tested it
  387. Paradise VGA1024            PAR256.BGI         Tested and Works
  388. Paradise Professional VGA   PAR256.BGI         Should work
  389. Paradise WD90C00 Chip set   PAR256.BGI         Should work
  390. Quadram Spectra             TSENG3256.BGI      Should work
  391. Sigma VGA Legend            TSENG4256.BGI      Should work
  392. Sota VGA/16                 TSENG3256.BGI      Should work
  393. STB VGA EM-16               TSENG3256.BGI      Should work
  394. STB VGA Extra               TSENG3256.BGI      Should work
  395. STB EVGA-16                 TSENG3256.BGI      Tested and Works
  396. STB Powergraph              TSENG4256.BGI      Tested and Works
  397. Swan/Tussey Computers       try "TSENG ET3000" or "TSENG ET4000"
  398. Trident Version 1 cards     TRIBR256.BGI       Tested and Works
  399. Trident Version 2 and above TRI256.BGI         Tested and Works
  400. Trident 8800BR Chip set     TRIBR256.BGI       Tested and Works
  401. Trident 8800CS Chip set     TRI256.BGI         Tested and Works
  402. Trident 8900 Chip set cards TRI256.BGI         Tested and Works
  403. Tseng ET4000 based cards    TSENG4256.BGI      Should work on most cards
  404. Tseng ET3000 based cards    TSENG3256.BGI      Should work on most cards
  405. Unisys Computers            try "Paradise VGA1024"
  406. VESA                        VESA256.BGI        Should work on most cards
  407. Western Digital             see Paradise
  408. Willow Publishers VGA       TSENG3256.BGI      Should work
  409. TrueTech HiResVGA           TRI256.BGI         Should work
  410. Zeos Computers              try "Diamond Speedstar VGA"
  411. ZyMOS POACH51 VGA Chip set  TRI256.BGI         Should work on most cards.
  412.  
  413. For computer manufactures such as ALR. AST etc, this lists which cards
  414. are likely to be in machine. However, there is no guarantee that this
  415. is the case and you will have to try the drivers.
  416.  
  417. "Should work" means that compatibility information indicates that the
  418. drivers will probably work, but we have not tested that particular hardware.
  419. You should test the appropriate crippled drivers before ordering.
  420.  
  421. IF your video card is not listed above, see if it supports the VESA video
  422. standard and then try VESA256.BGI. Some VGA manufacturers have tsr routines
  423. that makes their cards VESA compatible. Also see if you can identify
  424. the chip set or manufacturer of your card, and then try drivers supporting
  425. that chip set or other cards from the same manufacturer - it may work!
  426. You can also run MCVGA480.BGI on most VGA and Super VGA cards that are fully
  427. VGA register compatible. MCVGA480.BGI will give you 360x480 resolution
  428. which is not Super VGA, but is better than standard VGA 320x200 in 256 colors.
  429. Finally, if nothing else works, MCVGA256.BGI will work on all VGA compatible
  430. systems, but of course you are limited to IBM's standard 320x200 in 256 colors.
  431.  
  432.  
  433. We would be pleased to hear from people who have tried the drivers on
  434. any of the above cards so we update this list. We would also be pleased
  435. to include the names of other cards that our drivers work with.
  436.  
  437.  
  438. ORDERING INFORMATION
  439. --------------------
  440.  
  441. Orders and inquiries should be sent to:
  442.  
  443.          Jones Computer Supplies
  444.          Attention: Peter Jones
  445.                 RR # 3
  446.          Perth, Ontario  K7H 3C5
  447.                 Canada
  448.   Tel (613)267-6704   Fax (613)264-0372
  449.  
  450. Current drivers include:
  451.  
  452.    ATIVW256.BGI  The 256 color BGI driver for the ATI VGA WONDER.
  453.    ATIVW768.BGI  The 1024x768 16 color BGI driver for the ATI VGA WONDER.
  454.    TRI256.BGI    The 256 color Super VGA BGI driver for TRIDENT 8800CS/8900 cards.
  455.    TRIBR256.BGI  The 256 color Super VGA BGI driver for TRIDENT 8800BR cards.
  456.    VESA256.BGI   The 256 color Super VGA BGI driver for VESA cards.
  457.    PAR256.BGI    The 256 color Super VGA BGI driver for Paradise cards.
  458.    TSNG4256.BGI  The 256 color Super VGA BGI driver for TSENG ET4000 cards (STB Powergraph etc).
  459.    TSNG3256.BGI  The 256 color Super VGA BGI driver for TSENG ET3000 cards (STB EVGA-16 etc).
  460.    MCVGA480.BGI  The 256 color 360x480 BGI driver for MCGA and VGA.
  461.    MCVGA256.BGI  The 256 color 320x200 BGI driver for MCGA and VGA.
  462.                  MCVGA256.BGI is included in working form in the demonstration
  463.                  disk or file. It is also included when any of the other drivers
  464.                  are ordered.
  465.  
  466. A disk with all the drivers listed above is available for US $25.00. Please
  467. specify 5.25" or 3.5" disk size when ordering. Shipping and handling to USA
  468. and Canada is included in the above prices. Add US $5.00 per order for shipping
  469. and handling to other destinations. Add $15 for overnight delivery in USA or Canada.
  470. Ontario residents add 8% sales tax. Canadian residents add 7% GST.
  471.  
  472. Terms: VISA, Money Order, Certified Check or COD ($3 extra, Canada only).
  473. We accept VISA orders by telephone, mail or fax. We wil also accept purchase
  474. orders for government agencies or major companies with suitable references.
  475. Site licences and quantity discounts are also avialable. Please contact us for
  476. further details.
  477.  
  478. You may also order the  latest verson of the demonstration disk with
  479. crippled Super VGA BGI drivers and the fully functional MCVGA256.BGI
  480. driver for $5.00. Terms are identical to those described above.
  481.  
  482.  
  483.  
  484. IF YOU WOULD LIKE A DRIVER FOR OTHER GRAPHICS CARDS, please send us the
  485. name/model/version of the card, manufacturer, address/telephone/fax of
  486. the manufacturer, and the graphics modes you wish to use. If there is enough
  487. demand, we will make a BGI driver for it.
  488.  
  489.  
  490. The Crippled Drivers
  491. --------------------
  492.  
  493. The crippled drivers are provided so that you can test the operation of
  494. the BGI drivers with your particular hardware. BEFORE ORDERING a driver,
  495. make sure that the crippled version will run on your system. The crippled
  496. drivers are almost identical to the fully functional ones except that some
  497. graphics operations will cease to function after approximatly 2 minutes from
  498. when the driver was first used. This is enough time to run VGADEMO.EXE and
  499. VGATEST.EXE. If you need more time, simply reload the driver (ie restart your
  500. program) and you will have another two minutes. The crippled drivers are
  501. slightly larger in size and slower in operation than the fully functional
  502. drivers.
  503.  
  504. Because the crippled drivers are identical in name to the fully functional
  505. drivers, you can use write programs that use them even if you do not have
  506. the fully functional drivers yet. When you get the fully functional drivers,
  507. simply copy them over the crippled ones and your programs will run normally
  508. (without the 2 minute limit before the crippled drivers fail.)
  509.  
  510.  
  511.  
  512. PROGRAMMING NOTES
  513. -----------------
  514.  
  515.  
  516. Note: Discussions here refer to Turbo Pascal. These comments
  517. apply to Turbo C, where graphics commands are similar if not
  518. identical. See the Turbo C manual for details.
  519.  
  520.  
  521. The driver should be used as outlined in "InstallUserDriver" of
  522. "Chapter 16 - Turbo Pascal Reference Lookup" of the "Turbo Pascal
  523. Reference Guide" for Turbo Pascal Version 5.0. It has been tested
  524. with both Turbo C V2.0 and Turbo Pascal V5.0. VGADEMO.PAS is an
  525. example of how to use it in pascal. VGATEST.C is an example of
  526. how to use the driver in C. (Note: VGADEMO requires the use
  527. of Borland's font files (ending in .CHR) which are with the
  528. turbo compilers. Copy them to the current directory before using
  529. VGADEMO. If you do not, VGADEMO will only use the 8x8 default font).
  530.  
  531.  
  532. Available Modes
  533. ---------------
  534.  
  535. Graphics modes that are available depend on the BGI driver and your video
  536. card and monitor. The possible video modes for each driver are listed above
  537. under "CONTENTS - a)BGI Drivers".
  538.  
  539. Some of these modes may not be available depending on the video
  540. monitor  you are using and amount of memory on the graphics card.
  541. See the card's manual for details.
  542.  
  543. The function "getmaxmode" in Turbo pascal can be used to
  544. determine the highest allowable mode for your system. All
  545. current hardware configuration support all modes from 0 to
  546. "getmaxmode". ie If getmaxmode = 2, modes 0,1,2 are allowed.
  547. Requesting any other mode will generate a "graphresult" error and
  548. leave the system in an undefined graphics state. If this occurs,
  549. getgraphmode can be used to determine the mode number that the
  550. system has defaulted to. However, it is highly recommended that
  551. the "setgraphmode(mode)" be used to reset the system to a valid
  552. mode.
  553.  
  554.  
  555. IN THE EVENT THAT FUTURE HARDWARE COMBINATIONS MAY not support
  556. a continuous series of modes read this:
  557.  
  558. The BGI kernel supplied by Borland does not seem to pass on errors
  559. that occur if a mode in the range 0..getmaxmode is not supported.
  560. ie say getmaxmode = 3, and modes 0,1,3 are valid and mode 2 is not
  561. supported. Doing "setgraphmode(2)" will not cause a "graphresult"
  562. error and "getgraphmode" will indicate the desired mode change was
  563. achieved. In fact the system system will be in an undefined graphics
  564. mode.
  565.  
  566. In Turbo Pascal, to test if the desired video mode has been
  567. selected use "getmaxx" and "getmaxy" to see if the current mode has
  568. the resolution of the desired video mode. If it does not, the desired
  569. mode was not selected and "setgraphmode()" should be attempted with a
  570. new mode number until a valid mode is found. This does not work in
  571. Turbo C 2.0. See the "BUGS and SUGGESTIONS" section.
  572.  
  573.  
  574.  
  575. If you just want the highest resolution mode available, use the
  576. autodetect functions (such as ATIVW256.PAS, ATIVW256.C, ATIVW768.PAS,
  577. ATIVW768.C,  TRI256.PAS, TRI256.C etc)as illustrated in VGADEMO.PAS
  578. and the system will start in the highest valid mode. Note that this will not
  579. work with TSENG ET4000 or ET3000 based cards since it is not possible for
  580. the autodetect routine to determine which modes are valid - you will have
  581. test which modes work on yout system and then modify the TSENG4000
  582. autodetect routine to start in this mode.
  583.  
  584.  
  585.  
  586. IF YOU HAVE PROBLEMS WITH ANY VIDEO MODES that the driver supports and you
  587. think the hardware should be able to support, use test programs included with your
  588. video graphics card to see if a mode of the same resolution and number of
  589. colors works. If not, you may need to add additional video memory or change
  590. the video monitor.
  591.  
  592. Palettes
  593. --------
  594.  
  595. Borland provides two general classes of Palette commands:
  596.      1) SetRGBPalette
  597.      2) SetAllPalette, SetPalette, GetPalette
  598.  
  599. Most video modes support one or both of these two groups of palette commands.
  600.  
  601. SetRGBPalette allows direct control of the individual red, green and blue
  602. values that make up each palette entry.
  603.  
  604. SetAllPalette, SetPalette, GetPalette allows you to assign one of
  605. a number of standard colors to each palette enry.
  606.  
  607. As a general rule, 256 color drivers use SetRGBPalette and 16 color drivers
  608. use SetAllPalette, SetPalette, GetPalette. However, this is not always the
  609. case. Here is a list of drivers and which functions are supported:
  610.  
  611.     Driver              Supported Palette Commands
  612.  
  613.    ATIVW256.BGI             SetRGBPalette
  614.    ATIVW768.BGI             SetRGBPalette
  615.    TRI256.BGI               SetRGBPalette
  616.    TRIBR256.BGI             SetRGBPalette
  617.    MCVGA256.BGI             SetRGBPalette
  618.    MCVGA480.BGI             SetRGBPalette
  619.    VESA256.BGI              SetRGBPalette
  620.    PAR245.BGI               SetRGBPalette
  621.    TSNG4256.BGI             SetRGBPalette
  622.    TSNG3256.BGI             SetRGBPalette
  623.  
  624. IBM8514 BGI driver Compatibility with 256 Color Drivers
  625. -------------------------------------------------------
  626. The 256 color drivers support a 640x480 mode of similar resolution to
  627. a IBM8514 mode.
  628.  
  629. Similarities:
  630.  
  631. Use SetRGBPalette(ColorNum, Red, Green, Blue : word) as outlined
  632. in the Turbo Pascal 5.0 manual for setting the palette.
  633. Do not use SetAllPalette, SetPalette, GetPalette.
  634.  
  635. Differences:
  636.  
  637. FloodFill WORKS with the 256 color drivers. (Borland's IBM8514.BGI does NOT
  638. provide floodfill operations). Depending on your video card and monitor, the
  639. maximum resolution may not be the same as for Borland's 8514 driver.
  640. (Borland's 8514 driver provides two 256 modes : 648x480 and 1024x768).
  641.  
  642.  
  643.  
  644.  
  645. Speed Optimization
  646. ------------------
  647.  
  648. The high resolution modes use large amounts of graphics memory.
  649. This slows down graphics operations. I have tried to optimize
  650. this driver for speed of some critical operations instead of driver
  651. size - it therefore consumes a little more memory than some drivers.
  652.  
  653. In order to keep your applications as fast as possible:
  654.  
  655. -  For rectangular bars, solid bars are MUCH faster than
  656.    patterned bars. Try using some colors instead of patterns
  657.    to distinguish between areas if possible.
  658.  
  659. -  Getimage and Putimage(,,,copyput) are fast. Other putimage
  660.    functions are fast - but not as fast.
  661.  
  662. -  For lines, SOLID HORIZONTAL LINES are very fast. SOLID
  663.    VERTICAL LINES are about half the speed of horizontal lines.
  664.    Patterned, thick  and diagonal lines are slowest.
  665.  
  666.  
  667.  
  668.  
  669. BUGS and SUGGESTIONS
  670. --------------------
  671.  
  672. MOUSE USERS:   Note that the Super VGA modes that most of these drivers use
  673.                are not fully standardized between different manufacturers.
  674.                The mouse drivers supplied your mouse may not properly
  675.                support some or all of these modes. If you have difficulty with
  676.                your mouse, contact the manufacturers of your video card and/or
  677.                mouse - they may have updated mouse drivers to support these
  678.                graphics modes.
  679.  
  680. TSENG ET4000/ STB Powergraph: The first 16 colors of the palette for the
  681.                1024x768 mode appears to be intialized to colors different
  682.                from the 'standard' VGA colors. You may wish to reset these
  683.                palette entries using the setRGBPalette procedure.
  684.  
  685. COMPILER BUGS: Before deciding that there is a bug in the BGI driver, try
  686.                using a different version of the compiler to compile your
  687.                program. If the bug persists, try using an alternate language:
  688.                If you are using Turbo C, try Turbo Pascal. If the function
  689.                works in one compiler version or language and not in another,
  690.                it is probably a bug in the compiler. Compiler include:
  691.  
  692.  
  693. GetDriverName    - Turbo Pascal Version 5.0 bug: the function "GetDriverName"
  694. -------------    should return the name of the installed bgi driver. It does
  695.                  not work for drivers other than the standard ones provided
  696.                  with Turbo Pascal. Turbo C 2.0 handles this function
  697.                  correctly.  VGADEMO.PAS returns a blank name string when
  698.                  compiled with TP 5.0. VGATEST.C returns the name correctly
  699.                  when compiled with TC 2.0.
  700.  
  701.  
  702. getmaxx getmaxy  - In Turbo C 2.0, the "getmaxx" and "getmaxy" functions seem to
  703. ---------------  return values corresponding to the first mode that was
  704.                  selected, not the current mode. (To test if if these
  705.                  functions work in your version of Turbo C, do an initgraph
  706.                  with this driver, do setgraphmode() to a valid mode
  707.                  (such as 0), print the value of getmaxx(), do a setgraphmode()
  708.                  to another valid mode such as 1 and again print the value of
  709.                  getmaxx(). If they are the same and/or are not the correct
  710.                  values for either mode, the functions are not working
  711.                  correctly and should not be used to determine if a mode switch
  712.                  was sucessful.)
  713.  
  714.  
  715. setbkcolor       - In Turbo C 2.0 and Turbo Pascal 5.0, the background color
  716. ----------       is not always properly passed to the user installed BGI driver.
  717. cleardevice      As a result, you can not seem to reliably set the background
  718. -----------      color that cleardevice and other functions use. When the driver
  719.                  starts, backgroundcolor is set to 0 (black) - as long as you
  720.                  dont modify it will remain black. To clear the screen to
  721.                  another color, use setcolor(color) to define the color and then
  722.                  bar(0,0,getmaxx(),getmaxy()) to fill the screen. This should
  723.                  avoild setbkcolor(color).
  724.  
  725. If you find a bug, please document it and inform Peter Jones.
  726. If possible, documentation should consist of
  727.  
  728.    - the version number of this driver. To get the version, number,
  729.    see the section below "READING THE VERSION NUMBER"
  730.  
  731.    - a short description of the problem.
  732.    - a short description of how the same program runs with a Borland
  733.      supplied driver (assumed to be working correctly).
  734.    - a working program demonstrating the problem with my driver.
  735.    - a working program demonstrating the correct operation using a
  736.      Borland driver.
  737.    - Video card memory (256K, 512K etc)
  738.    - Video card Bios revision
  739.    - Video card hardware revision #, usually on the card itself.
  740.    - Computer Make, processor speed, DOS
  741.    - any other information you feel is necessary
  742.  
  743. This information should be mailed or faxed JONES COMPUTER SUPPLIES at
  744. the address shown under "Ordering Information".
  745.  
  746. If you have any suggestions for improvements, I would be pleased
  747. to hear from you. I would also be interested in requests for similar
  748. drivers for other cards. If I receive enough requests, I will produde
  749. more drivers.
  750.  
  751.  
  752. READING THE VERSION NUMBER
  753. --------------------------
  754.  
  755. For identification purposes, each driver and documentation (this file)
  756. are assigned a version number.
  757.  
  758. The document version number is on the first line of this file.
  759. The driver version number can be read by typing
  760.  
  761. TYPE drivername.BGI
  762.  
  763. followed by pressing the 'Enter' or 'Return' key, where 'drivername' is the
  764. name of the driver in question (ATIVW256, ATIVW768 etc). This will show the
  765. driver header which will appear something like this:
  766.  
  767. BGI Device Driver (MCVGA256) 2.20 - Oct 20 1990
  768. Copyright(c)1990 Peter Jones Tel(613)267-6704
  769.  
  770. The number 2.20 is the version number and will change from driver
  771. to driver as will the name ( 'MCVGA256' in this case) and the date.
  772.  
  773. Crippled drivers can be identified by a 'C' after the version number
  774. (only for versions 2.20 and later). An example of a crippled driver
  775. header might be:
  776.  
  777. BGI Device Driver (MCVGA256) 2.20C- Oct 20 1990
  778. Copyright(c)1990 Peter Jones Tel(613)267-6704
  779.  
  780. When reporting bugs, it is very important to include the driver version
  781. number and documentation version so that we know exactly which driver
  782. you are dealing with.
  783.  
  784.