[comp.sys.ibm.pc] ATI EGA Wonder BIOS fix

franke@rwthinf.UUCP (Christian Franke) (12/07/89)

Hello!

The ATI EGA Wonder Card (BIOS 4.02) does'nt return the correct display
type (MCGA instead of EGA/VGA) on a call to to INT 10h, AH=1Ah. So we got
problem with some programs: 
WordPerfect 5.0 refuses to load the EGA*.FRS softfonts (problem mentioned
in a posting july '88).
The Norton 4.5 NCC Program refuses to set the EGA color palette. 

The following little TSR fixes this problem, it always returns 
BX = 0008h (VGA) on INT 10h, AH=1Ah.

begin 644 egafix.com
MZQ.</0`:=0>*Q+L(`)W/G>H`````N!`US2&)'A$!C`83`;@0);H"`<TAN``Q
%NA(`S2$:
`
end

Regards,

	Christian Franke

	Aachen University of Technology
	Lehrstuhl fuer Informatik I
	Ahornstrasse 55
	D-5100 Aachen
	Federal Republic of Germany
	Tel.: 0241 / 80-3586

	UUCP: franke@rwthinf.uucp ({...mcvax}!unido!rwthinf!franke)

andyross@ddsw1.MCS.COM (Andrew Rossmann) (12/08/89)

>Item: 7308 by franke at rwthinf.UUCP (0 responses)
>Author: [Christian Franke]
>  Subj: ATI EGA Wonder BIOS fix (REPOST)
>  Date: Thu Dec 07 1989 14:26 CST
>The ATI EGA Wonder Card (BIOS 4.02) does'nt return the correct display
>type (MCGA instead of EGA/VGA) on a call to to INT 10h, AH=1Ah. So we got
>problem with some programs: 
>The following little TSR fixes this problem, it always returns 
>BX = 0008h (VGA) on INT 10h, AH=1Ah.
>
>begin 644 egafix.com
>MZQ.</0`:=0>*Q+L(`)W/G>H`````N!`US2&)'A$!C`83`;@0);H"`<TAN``Q
>%NA(`S2$:
>`
>end
>
>Regards,
>	Christian Franke

  The above program is a TSR that returns the code. This is not really the
correct way to do things. If your card supports the 1Ah call, you should
use the following sequence:

MOV AH,1Ah   ; the command
MOV AH,1     ; set display combination code
MOV BH,0     ; inactive display code (leave 0 if only 1 display)
MOV BL,8     ; active is VGA analog color (7=mono, 4=EGA)
INT 10h      ; call it up

  Here is a UUENCODED program that does the above:

section 1 of uuencode 3.16 of file vgafix.com    by R.E.M.

begin 644 vgafix.com
/M!JP`;<`LPC-$+@`3,TAN
``
end
sum -r/size 42268/51 section (from "begin" to "end")
sum -r/size 46122/15 entire input file

  Andrew Rossmann
  andyross@ddsw1.MCS.COM

franke@rwthinf.UUCP (Christian Franke) (12/11/89)

In article <257f06b8:7308.1comp.ibmpc;1@ddsw1.MCS.COM>, andyross@ddsw1.MCS.COM (Andrew Rossmann) writes:
> [...]
>
>   The above program is a TSR that returns the code. This is not really the
> correct way to do things. If your card supports the 1Ah call, you should
> use the following sequence:
> 
> MOV AH,1Ah   ; the command
> MOV AH,1     ; set display combination code
> MOV BH,0     ; inactive display code (leave 0 if only 1 display)
> MOV BL,8     ; active is VGA analog color (7=mono, 4=EGA)
> INT 10h      ; call it up
> 
> [...]
> 
>   Andrew Rossmann
>   andyross@ddsw1.MCS.COM

This is ok for cards supporting the AX=1A01h (set DCC) call.
Unfortunately, the ATI EGA Wonder only supports the AX=1A00h (get DCC) call.
It returns AL=1Ah only on the get DCC call.
So, it seems to be necessary to use such a TSR to fix the problem.

The TSR I've posted is a quick hack designed to fix my specific problems
with WP 5.0 and NCC. 
A real fix should also correct the DCC values returned by the AH=1Bh
(get state info) at offset 25h,26h.

Regards,

	Christian Franke

	Aachen University of Technology
	Lehrstuhl fuer Informatik I
	Ahornstrasse 55
	D-5100 Aachen
	Federal Republic of Germany
	Tel.: 0241 / 80-3586

	UUCP: franke@rwthinf.uucp ({...mcvax}!unido!rwthinf!franke)

lmhg0369@uxa.cso.uiuc.edu (12/13/89)

Well, neither of the two posted fixes to the ATI EGA Wonder card work
for me.  Namely, with Turbo C/Pascal, I can't get the beastie to go
into 43-line mode.  And I have a game that still won't come out of
CGA graphics mode.  It seems that most programs where you insist that
you have an EGA card, like when you give it a command-line switch or
tell it in the setup program, things work fine.

In fact, after installing the TSR, when I go to TC, the screen just
switches to some unhealthy color and sits there.  I have to 'mode co80'
to get it back.

L. Haskins -- lmhg0369@uxa.cso.uiuc.edu