From: ced@APOLLO.HP.COM (Carl Davidson)
Subject: Re: Do Trident drivers work with ATI? (the continuing saga) LONG
Date: Fri, 8 Jan 1993 15:32:48 GMT
Organization: Hewlett-Packard Company, Chelmsford, MA

Those of you who've followed the seemingly never-ending saga of the 
TRI32NEW drivers with the ATI VGA Wonder XL video card will recall that: 

In article <C0C5F8.KsD@apollo.hp.com> I wrote:
>But, as often happens, there is a fly in the ointment. In this case, the
>fly is that in 800x600 mode the top 1 1/8" (approximately) of the 8" high
>screen is repeated at the bottom 1 1/8" (approximately) of the screen such
>that the top row of icons in the WPS is repeated at the bottom of the screen.
>This not only occurs in the PM, but also with both seamless *and* full-screen
>Windoze apps. The 640x480x256 driver works fine. 

... and in article <3919@isgtec.isgtec.com>, ted@isgtec.com (Ted Richards)
wrote:
|> 2. You may not want to change the BVHSVGA.DLL or SVGADATA.PMI files.
|>    Leaving them alone solved a problem for me with a bad WPS display at
|>    1024x768 resolution.  Try replacing them first, and if it doesn't
|>    work right, try going back to the original (post-service pack) versions.

... and in article <3940@isgtec.isgtec.com>, ted@isgtec.com (Ted Richards)
writes:
|> I, too, have a 1 Meg Wonder XL, and I have no problems running SVGA ON.
|> I do have problems using the resulting file in 1024x768x256 mode, though.
|> Either SVGA.EXE does not store the correct information,, or no one has
|> written a driver that uses it properly.  I am currently still using
|> the SVGADATA.PMI from Joel's 1024x768x256 driver, but with the new
|> Trident drivers (so I get seamless Windows).

...and in article <3926@isgtec.isgtec.com>, ted@isgtec.com (Ted Richards)
wrote:
|> The fix, in my case, was to go back to the original BVHVSVGA.DLL (from
|> the SP) and SVGADATA.PMI (from Joel Armengaud's ati256c2.zip) for the
|> desktop, and to the full-screen Windows 3.0 driver from ATI, while
|> continuing to use the new IBMDEV32.DLL and IBMVGA32.DLL and the Trident
|> seamless Windows driver from tri32new.zip.
|> 
|> After that, everything worked just fine (in 1024x768x256).  I haven't
|> tried it at 800x600, but it's worth a try.

Well, armed with all this and the collective wisdom of all the others who
have posted here, I finally got my system to work. You will recall that I
had a 512K VGA Wonder XL. The fix was two-fold:

First, I spent $24 (US) for four 4x256 70ns DRAMS to upgrade the board to 
1M. Everyone I heard from told me that the Trident drivers wouldn't
work in less than 1M and I wanted the higher refresh rates that the
board can only support with the full complement of memory, so I 
spent the few necessary bucks. 

Even with the additional memory, OS/2 and the Trident drivers treated the 
board as if it had 512K of memory on it. In fact, the ATI utility which
configures and tests the board (VINSTALL.EXE) would report that 1024K (1M) 
of memory was installed if I booted DOS on power-up, but if I booted OS/2
with the Trident driver (still with the corrupted WPS display) and then did
a shutdown and booted DOS (without powering down, so the card didn't
re-initialize from EEPROM), VINSTALL.EXE would report that the board only had
512K installed! Apparently the driver was re-configuring the board somehow.

I figured it was time to replace the BVHSVGA.DLL and SVGADATA.PMI files as
Ted had done to get his system running. I took things one step at a time.
First, I put back the original BVHSVGA.DLL which I had saved when I installed 
the Trident version. No change. The BVHSVGA handler by itself had no effect on
the problem. I didn't have a copy of the SVGADATA.PMI file from Joel's 
ati256c2.zip, so I just used the saved copy of SVGA.EXE (from the SP) to 
create a new one (in a full-screen DOS session) and used it. Viola! No 
more corrupt WPS display! My problems are solved, right? Wrong. Now I had 
a "proper" display, but the refresh rate and other settings resulted in a
serious flicker problem and a reduced horizontal width to the display. Hmmmmm.
Maybe I really needed the Trident BVHSVGA.DLL after all, so I put it back.
Now my configuration was all files from TRI32NEW.ZIP except for the 
SVGADATA.PMI, which was one created by the SP version of SVGA.EXE. Still no 
change -- serious flicker. 

At this point, I figured it must be something in the SVGADATA.PMI generated
by the new SVGA.EXE must somehow be used by the system to configure the board 
to only use 512K of memory so I compared the section of SVGADATA.PMI 
pertaining to the 800x600x256 configuration. I compared the two versions of 
the file carefully and found a number of differences. Being determined to 
solve this no matter what level of hackery I had to stoop to, I decided to 
start with the new SVGADATA.PMI file (the one that gave me a corrupt WPS
display, but no flicker) and edit the file by hand (GASP! :-)) modifying 
one section at a time until I found the values that was causing it to only
use 512K. One difference between the two files was in the section marked
"[SetMode]". In the file with the corrupt WPS, the third line in this section 
started off "r176 = 0x31;", while in the other file it started off 
"r176 = 0x29;". On the off chance that this actually had something to do with 
memory config, I changed it. Viola! That one simple change, replacing "0x31" 
with "0x29" in that one line, made the corrupt WPS problem disappear. 
Everything else works right, too! Seamless Windoze apps run beautifully, DOS 
programs run both in windows and full screen and the display is rock stable.
 
If you've been waiting to try the Trident drivers with your ATI board, I
would encourage you to do so. Even with the troubles various people have
reported, it's worth the effort.

Now if someone could just explain what all those values in SVGADATA.PMI 
actually *mean* ....  Joel?

-- 
Carl Davidson  (508) 436-4361  |
Chelmsford System Software Lab | Microkernels: Where less is more.
The Hewlett-Packard Company    | 
DOMAIN: ced@apollo.hp.com      |
Newsgroups: comp.os.os2.misc