9fans - fans of the OS Plan 9 from Bell Labs
 help / color / mirror / Atom feed
* Re: [9fans] What a poor VGA support !
@ 2002-06-13 14:21 presotto
  2002-06-14 11:08 ` Agnelo de la Crotche
  0 siblings, 1 reply; 23+ messages in thread
From: presotto @ 2002-06-13 14:21 UTC (permalink / raw)
  To: 9fans

> Simple, because it is supported by the 28 other
> operating systems I managed to install on that machine.

My interest is clearly piqued.  What are those 28 OS's and
what to you use to boot them all?

> But , please, tell me, because I'm curious : Why is it so difficult, so
> impossible to add some kind of minimum VGA support  ?

We used to have minimum support, i.e., 640x480x{1,2,4}.  Those modes are
standard and normally grey scale.  You can use a color map with them
but 16 or fewer colors doesn't make for great viewing, red letters on
a blue backround was my favorite headache producer.

We nuked support for the standard modes because
a) it was very odd to implement especially after we changed
  graphics models.  It doesn't really fit the
  model of a frame buffer.  Instead you had to do odd things
  to write the different bits to diferent planes.
b) it was made clear to us that supporting 640x480x4 grey scale
  was so inferior to what people wanted that it wasn't worth the
  effort.

All other modes are non-standard, i.e., different from card type
to card type.  There are a smaller number of VGA chips than cards
though even that number is unwieldy.  How the differenty
card manufacturers map the chips and plug them together varies.
Often the only extra info we have to know about a card is how to
recognize it.  PCI is helping there though in the past we had to
look at the onboard BIOS and look for patterns; half of /lib/vgadb
is just trying to figure out what's there.  If you wc /sys/src/cmd/aux/vga
you'll see that the ammount of code per chip type is pretty small
(often with an equivalent amount in the kernel to support
cursors and such).  However figuring out that code is hard:

- documentation is usually poor or non-existant.  Drivers from
 more popular OS's (or X) are often the only documentation
- Some registers bits lock out other registers; just reading the
 settings used by windows and rewriting them back is usually
 impossible.
- setup requires writing values into MANY registers, most of
 which are different from chip to chip.  The values are dependent
 on clock speed, bit depth, screen size, and chip version.  Just
 getting them working on one machine doesn't ensure they'll work
 on another.  In some cases it takes futzing with a number of
 machines and board revs to get a `stable' implementation.

Our most popular laptop is the T23 (because of a company deal with
IBM) and we set it up by being careful not to touch too many registers
since we have no idea what the LCD extension registers do.

In our group, we have one person, jmk, who sepnds a considerable amount
of time just getting the cards we have working.  However, that's
in addition to what he's supposed to be doing, not what he's paid
for.  Some of the community is also nice enough to send us the /lib/vgadb
info + drivers to get other cards working.  However, because the
Plan 9 distribution is a 'free time' effort at the Labs we can't
aim one person to doing full time VGA support.  If the community
were larger, we'ld probably get enough contributions to cover a
larger percentage of the cards or if Plan 9 were actually popular
we might be able to get manufacturers to write drivers.

It would be useful if the manufacturers could get together and
come up with another VGA standard so that we would waste less
time and angst.  However, there's no real motivation for this.
To first order, there's only one OS for PC's, and to second order
only two.  It's not that hard for a manufacturer to put together
drivers for their new board for 2 OS's.  I'm pretty impressed that
there are 26 others that manage to support all cards.

Besides, if you ever got your ATI Xpert (Rage Pro) working,
we'ld have to go through this conversation again explaining why
we don't have a web browser worth using.


^ permalink raw reply	[flat|nested] 23+ messages in thread
* Re: [9fans] What a poor VGA support !
@ 2002-06-14 15:51 Russ Cox
  0 siblings, 0 replies; 23+ messages in thread
From: Russ Cox @ 2002-06-14 15:51 UTC (permalink / raw)
  To: 9fans

> I will say, though, that Plan 9 would be a lot more widely useful
> if it contained a "generic" VESA driver in order to support new
> video cards as soon as they appear.  Xfree86 has one that perhaps
> could serve as the starting point for a Plan 9 driver.

don't let me stop you!

russ


^ permalink raw reply	[flat|nested] 23+ messages in thread
* Re: [9fans] What a poor VGA support !
@ 2002-06-14 14:42 andrey mirtchovski
  0 siblings, 0 replies; 23+ messages in thread
From: andrey mirtchovski @ 2002-06-14 14:42 UTC (permalink / raw)
  To: 9fans

>> I will say, though, that Plan 9 would be a lot more widely useful
>> if it contained a "generic" VESA driver in order to support new
>> video cards as soon as they appear.  Xfree86 has one that perhaps
>> could serve as the starting point for a Plan 9 driver.

i had a look at the X86 vesa driver -- at the time it seemed like this
is the only way to get the SiS630 on-board vga going...

waht stopped me from investigating further was the lack of hardware
cursor...  i simply gave up...



^ permalink raw reply	[flat|nested] 23+ messages in thread
* Re: [9fans] What a poor VGA support !
@ 2002-06-14  9:44 Fco.J.Ballesteros
  2002-06-14 13:50 ` Agnelo de la Crotche
  0 siblings, 1 reply; 23+ messages in thread
From: Fco.J.Ballesteros @ 2002-06-14  9:44 UTC (permalink / raw)
  To: 9fans

[-- Attachment #1: Type: text/plain, Size: 290 bytes --]

I think we all may agree with you, but putting Ronald message in a
different format, I'd say that it would be better if we all tried to
add the missing pieces or help to add them instead of complaining
about them not being there.  In that sense, I couldn't agree more with
Ronald.



[-- Attachment #2: Type: message/rfc822, Size: 1839 bytes --]

From: "Douglas A. Gwyn" <DAGwyn@null.net>
To: 9fans@cse.psu.edu
Subject: Re: [9fans] What a poor VGA support !
Date: Fri, 14 Jun 2002 08:45:43 GMT
Message-ID: <3D08DC19.9731EF3E@null.net>

Ronald G Minnich wrote:
> I hate it when people complain like this about stuff that costs them
> nothing.

I will say, though, that Plan 9 would be a lot more widely useful
if it contained a "generic" VESA driver in order to support new
video cards as soon as they appear.  Xfree86 has one that perhaps
could serve as the starting point for a Plan 9 driver.

^ permalink raw reply	[flat|nested] 23+ messages in thread
* Re: [9fans] What a poor VGA support !
@ 2002-06-13 14:47 Russ Cox
  0 siblings, 0 replies; 23+ messages in thread
From: Russ Cox @ 2002-06-13 14:47 UTC (permalink / raw)
  To: 9fans

> Our most popular laptop is the T23 (because of a company deal with
> IBM) and we set it up by being careful not to touch too many registers
> since we have no idea what the LCD extension registers do.

And the initial T23 support got written by guessing that
the card was like the other Savage-based cards and then
playing with one register at a time to figure out the rest.



^ permalink raw reply	[flat|nested] 23+ messages in thread
* Re: [9fans] What a poor VGA support !
@ 2002-06-13 13:16 forsyth
  2002-06-13 16:45 ` plan9
  0 siblings, 1 reply; 23+ messages in thread
From: forsyth @ 2002-06-13 13:16 UTC (permalink / raw)
  To: 9fans

>>But , please, tell me, because I'm curious : Why is it so difficult, so
>>impossible to add some kind of minimum VGA support  ?

because the only bit that is standard at the VGA register level
doesn't give you much, if you'd like some colour
(even 640x480x8 uses non-standard extensions).

there is a VESA bios interface that could be used to provide a card-independent
way of implementing a flat map but even several years ago
many cards didn't implement the 32-bit interface, and it could
only be activated from real mode.  things might have changed.
roger peppe had a version of (native) Inferno that tried the
real mode call (it wasn't easy), with some card-specific code as well,
and that worked reasonably well.  we've made that code available.

there's an amusing essay somewhere by the person at Be who
had to write the card support.   it wasn't straightforward.
how did they manage?  they had money (at the time) to throw at it,
at least one person, a fair number of machines and lots of cards
as samples.



^ permalink raw reply	[flat|nested] 23+ messages in thread
* [9fans] What a poor VGA support !
@ 2002-06-13  9:29 Agnelo de la Crotche
  2002-06-13 14:19 ` Ronald G Minnich
  0 siblings, 1 reply; 23+ messages in thread
From: Agnelo de la Crotche @ 2002-06-13  9:29 UTC (permalink / raw)
  To: 9fans

I don't know very much about Plan9. All I can tell is that it has the
poorest ( and highlest dangerous) VGA support I have never seen for an
operating system. Now somebody is going to ask ( or maybe even not )
: What kind of video adapter do you have ? Have you try to change this
or that in plan9.ini ? Do you see a red screen ?  ... as I was already
asked one year ago, and two years ago.
OK ! It's a bummer. I was starting to hope that something would have
changed with that last release. But you (?) definitely do not want to
support my video card.
But , please, tell me, because I'm curious : Why is it so difficult, so
impossible to add some kind of minimum VGA support  ?
Guess,  I have an ATI Xpert (Rage Pro). Why that one and why do I not
intend to replace it ? Simple, because it is supported by the 28 other
operating systems I managed to install on that machine. Nobody but Plan9
has trouble (and makes trouble ! Don't mention my old monitor ! ) with
it.
I 'm not a video  expert  (definitely not) but as much as I can see when
booting Plan9  with video auto detection (  At least,  I can boot in
console mode but to do what ? ),  something  is wrong or missing in the
Mach64 driver, which all other OS (i.e BeOS, QNX, AtheOS)  have solved.
Is there "definitely" no hope of a solution ?

agnelo


^ permalink raw reply	[flat|nested] 23+ messages in thread

end of thread, other threads:[~2002-06-19  8:45 UTC | newest]

Thread overview: 23+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2002-06-13 14:21 [9fans] What a poor VGA support ! presotto
2002-06-14 11:08 ` Agnelo de la Crotche
2002-06-14 14:26   ` Agnelo de la Crotche
2002-06-14 16:37   ` Lyndon Nerenberg
2002-06-14 20:16     ` Jason Gurtz
2002-06-15  0:27       ` Lyndon Nerenberg
2002-06-17  9:14         ` Douglas A. Gwyn
2002-06-16 22:41     ` Digby Tarvin
2002-06-19  8:45       ` Agnelo de la Crotche
2002-06-17  9:14     ` Agnelo de la Crotche
  -- strict thread matches above, loose matches on Subject: below --
2002-06-14 15:51 Russ Cox
2002-06-14 14:42 andrey mirtchovski
2002-06-14  9:44 Fco.J.Ballesteros
2002-06-14 13:50 ` Agnelo de la Crotche
2002-06-13 14:47 Russ Cox
2002-06-13 13:16 forsyth
2002-06-13 16:45 ` plan9
2002-06-13  9:29 Agnelo de la Crotche
2002-06-13 14:19 ` Ronald G Minnich
2002-06-13 17:46   ` Dan Cross
2002-06-14  8:45   ` Douglas A. Gwyn
2002-06-14 14:41     ` Ronald G Minnich
2002-06-14  8:45   ` Agnelo de la Crotche

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).