baker@necssd.UUCP (10/28/87)
[] Before you determine what kind of card is present, you have to restrict the number of cards you are willing to detect. For instance, I don't think it is practical to try to detect each flavor of EGA clone, but it is realistic to expect to be able to detect whether an EGA, MGA or CGA is present. CGA and MGA The equipment interrupt (17) will supply you with a set of bits which are the power-up hardware settings. This includes two bits that indicate the presence of CGA or MGA (or compatible) cards. HGA I know of no "bios approved" way of determining the HGA presence. There is, apparently, a way to determine the difference between a MGA and a HGA from the way the display controller registers act (and their contents) once you've determined that a "MGA compatible" card is in place. EGA Again, there is apparently no documented way of determining the EGA presence (at least, not from the EGA technical documentation). You can probably do it by checking for predictable activity or responses from the EGA display registers, once you've determined that a "CGA compatible" card is in place from interrupt 17. ADDITIONAL READING There have been several very good articles in "Programmer's Journal" of late on programming (and detecting) the EGA at the assembly language level. They are exceptionally detailed and oriented toward a highly technical audience with a good understanding of assembly language programming. Look at the last 3 or 4 issues, the column called "Programming the EGA" or words to that effect. I, for one, would appreciate any other references to EGA-related articles at this level. Regards, Larry Baker
jimm@mitsumi.UUCP (Jim Mackraz) (10/30/87)
:: See current issue of Dr. Dobbs Journal for a two-page sidebar on determining display adapter, including Hercules. Amazing vudu. jimm -- Jim Mackraz Mitsumi Technology, Inc. 408/980-5422 {amiga,pyramid}!mitsumi!jimm