[haiku-development] Re: Boot Screen Not Displayed with Various Video Chips

  • From: "Axel Dörfler" <axeld@xxxxxxxxxxxxxxxx>
  • To: haiku-development@xxxxxxxxxxxxx
  • Date: Fri, 31 Oct 2008 10:53:38 +0100 CET

Gerald Zajac <zajacg@xxxxxxxxxxxxx> wrote:
> The VESA driver selects the same mode, and also does not display 
> anything because the monitor indicates the mode is out of range.  
> AFAIK, 
> no key strokes like BeOS has were ever implemented to allow setting a 
> lower resolution.

There is a key combination (currently F12 + left command + left control 
+ left shift) that would let you fall back to a safe mode, but it's not 
yet implemented to do anything.

> All the chips that I have tested that have this problem, are either 
> currently supported by the S3 driver, or will be supported by the ATI 
> driver when I complete it.  Thus, there is no need to blacklist them 
> because the VESA driver will not handle them correctly at 1280x1024.

They would only be blacklisted in the boot loader to select a better 
mode, and there, a driver is not available anyway.

> > Maybe we just choose the wrong mode option of several, though, as 
> > the 
> > chips are definitely capable of producing that resolution (and VESA 
> > modes should always come out with 60 Hz).
> VESA modes do not always produce 60 Hz refresh rate.  They usually do 
> with a laptop chip, but this not the case with other video chips.  
> For 
> example, the S3 Savage chips display the boot screen, but the refresh 
> rate is usually 75 Hz.

I remember they always used to do that, and this was a common complaint 
about them :-)
But apparently it's only a guide, and the VBE implementations can 
choose what to use.

> > It just looks so much better to use the native resolution.
> A 1024x768 boot screen on my 1280x1024 monitor looks very good.  
> Maybe 
> your monitor does a poor job of expanding a screen.  Laptops do a 
> particularly poor job of expanding a display image to fill the LCD 
> screen.  That is why the latest S3 driver no longer allows a laptop 
> chip 
> to expand a display image to fill the LCD screen.

Which best should be configurable via settings file or even better, the 
Screen preferences app.
But a scaled image looks always poor compared to a crisp native 
resolution one, no matter how good the scaling works.

> Another possible solution to this problem would be to limit the boot 
> screen resolution to 1024x768 if the chip is a VESA 2.0 chip.  These 
> chips are mostly older chips, and all chips that had this problem 
> IIRC 
> were VESA 2.0 chips.  Later chips at VESA 3.0 or later could continue 
> to 
> be handled as they are now.

That would be a viable solution. But before we do this, I want to 
experiment with the CRTCInfoBlock structure that you can provide mode 
switches with to set a specific timing.
If that doesn't help, I'm open for more generic solutions.

I've added the CRTC stuff in r28390, please tell me if that works for 
you.

Bye,
   Axel.


Other related posts: