VESA video support during boot.

VESA video support during boot.

Post by Kevin Cummin » Fri, 03 Jul 1992 05:41:48

I modified setup.S to do VESA detection (before looking for specific
VGA cards) based on the VESA spec published in DDJ a year or so ago.
I got it to work with my Diamond Stealth VRAM video card.  It should work
with any video card that supports the VESA BIOS extensions in its video BIOS
roms.  I have a few questions before I am ready to send the patches on to

My Stealth video card claims to be VESA 1.0 compliant, but it supports
a number of 02xx and 03xx video modes.  I could not find definitions
for these in the DDJ article.  And I could not find the capabilities tables
for these modes while scanning the video BIOS with DEBUG under DOS.
The BIOS returns no-information about these modes, but allows me to set
them via the set VESA mode function.  Is this Diamond not being fully compliant?
Or am I missing something (like some VESA-2 info?)

Can anyone tell me why the 132 x xx modes claim to be 1280 pixels wide
(instead of 1056 pixels wide) in the VESA mode capabilities tables?

Can anyone tell me how to do complicated 386 addressing using asm86.
I resorted to doing base+indexing+offset with inline code because I
couldn't figure out what syntax the assembler wanted.  A pointer to some
documentation will be sufficient.

How do I submit patches to Linus?  I don't want to send diffs unless
Linus wants them.  I modified an 0.96 version of this file.  Will this
create problems since Linus is currently at 0.96b-pl-2?

Kevin J. Cummings                       Prime Computer Inc.
20 Briarwood Road                       500 Old Connecticut Path
Framingham, Mass.                       Framingham, Mass.

Std. Disclaimer: "Mr. McKittrick, after careful consideration,
                  I've come to the conclusion that your new
                  defense system SUCKS..."   --  War Games


1. VESA video modes, revisited, and no room in boot image

I had been playing with setup.S to try and add back in the VESA
mode selection stuff (correctly so the Diamond stuff doesn't break
everyone else this time!).  What happened was setup overflowed
the 2048 bytes allocated to it.  As a workaround, I've #ifdef'd
out some of the VGA selections to get me some room back.  What's
the best way to go about getting more room for setup in the boot
image?  Can I just change the numbers in the header files?  Or
will that break things like LILO?

Currently I'm checking for my video card explicitly (Diamond Stealth
VRAM) and only doing the row/column hacks for this video card.  A
number of people complained that Diamond stores the row/column
numbers differently than they should.  I'm not sure if this is
a Diamond problem or a Diamond Stealth problem.  (Did any of you
Diamond Speedstar users have a chance to try out the VESA changes
that were in 0.96c and 0.97?)  In any case, it will be real easy to
add another card or change the runtime test if necessary (Most of
the cards that failed claimed to be VESA 1.1 compliant while my
card says it is Vesa 1.0 compliant.  Wish I had a copy of the VESA
specs to know who's right!)

Kevin J. Cummings                       PrimeService
20 Briarwood Road                       A Computervision Company
Framingham, Mass.                       500 Old Connecticut Path
                                        Framingham, Mass.

Std. Disclaimer: "Mr. McKittrick, after careful consideration,
                  I've come to the conclusion that your new
                  defense system SUCKS..."   --  War Games

2. GNU Finger 1.3.7?

3. video reset during kernel boot

4. Read-Copy Update 2.5.34

5. video card dies during boot - sometimes!

6. Yamaha SCSI & SIIG AP-10

7. VESA/PCI Motherboard EIDE Video etc.

8. A7M266-D + Slackware 8.1 + USB 2.0 PCI controller card

9. XF86Config for Diamond Stealth 64 VIDEO VRAM VESA

10. Problems with Trident VESA video adapter and x windows.

11. need a Orchid Farhenheit VESA video driver Xconfig file

12. trident 9440 VESA video card & atapi cdrom in linux

13. Is there a VESA video server for X?