From: Timothy Miller <miller@techsource.com>
To: Helge Hafting <helgehaf@aitel.hist.no>
Cc: Geert Uytterhoeven <geert@linux-m68k.org>,
Jon Smirl <jonsmirl@gmail.com>,
Linux Kernel Mailing List <linux-kernel@vger.kernel.org>
Subject: Re: HARDWARE: Open-Source-Friendly Graphics Cards -- Viable?
Date: Fri, 29 Oct 2004 12:00:09 -0400 [thread overview]
Message-ID: <41826909.7070908@techsource.com> (raw)
In-Reply-To: <20041028090707.GA13523@hh.idb.hist.no>
Helge Hafting wrote:
> On Mon, Oct 25, 2004 at 11:47:51AM -0400, Timothy Miller wrote:
>
>>>I can't see how it is "vital", or even makes a difference at all.
>>>Other than upping the price a bit. The pc doesn't need VGA compatibility
>>>to boot - because you supply a video bios. The mainboard bios
>>>uses the video bios. (There have been pc's with ibm-incompatible
>>>displays before)
>>>Linux d(and other open os'es) doesn�'t need VGA at all, because
>>>you supply docs. You probably won't even have to write the driver
>>>yourself.
>>>Windows doesn't need VGA - if you supply a windows driver. That
>>>shouldn�'t be hard to do.
>>
>>
>>We have a number of cards which do not support VGA, and a few years ago,
>>I experimented with the idea of writing a VGA BIOS which emulated the
>>VGA text screen in software.
>>
>>What I discovered was that absolutely everything, including the DOS
>>shell, expects there to be REAL VGA (or CGA or whatever) hardware there,
>
>
> Remember who you're talking to. :-)
> VGA, (or at least CGA) may indeed be necessary to run dos.
> (Well, dos 2.11 ran fine on the incomptaible DEC rainbow...)
> So if you need dos compatibility - sure.
>
> But this is the linux kernel list - you asked what the
> open source community want. We _really_ don't care about dos.
> And I believe this is true for many others too - dos _is_ dead.
> Even the microsoft fans use windows exclusively.
> So don't worry about dos - it is such a niche os today.
Forget DOS. How about the BIOS configuration screen? How about all
those messages that come up before the boot-loader has even been fetched
from disk?
>
>
>>so hooking int 10 just did not do the job... it practically never got
>>called. What I ended up doing was hooking the timer interrupt and
>>comparing the text screen against a shadow copy. That worked very well
>>for most DOS applications... except for those which tried to do anything
>>in protected mode. The instant an OS switched to protected mode, the
>>interrupt handler got blown away and the display froze.
>
>
> Sure - but who's running dos these days? Is there any market share
> in _dos_? And there is freedos, for which the source code is
> available and free. So if you really need dos for something,
> (such as flashing mainboard bioses?) then add the necessary support
> to freedos.
Don't get stuck on DOS. What it does represents what lots of other
things do with regard to the display. They assume CGA-compatible
hardware is there and bang on the hardware directly.
Also, as countless people have said, it would be foolish to shut out
Windows users. Many people would like this card so that they can dual-boot.
>
>
>>Then we though we'd put a proper driver into the OS, but the problem is
>>that in Windows and Solaris, the console driver doesn't kick in until
>>WAY late in the boot process, so you end up with a useless console for
>>THE MAJORITY of the boot process.
>>
>>For Windows, there is a requirement for 640x480x4 and some 320x480x??
>>mode to be supported by the hardware using the standard VGA IO space
>>registers. That is, IF you want a console. Yes, you can boot without
>>VGA, but your screen is blank until the driver kicks in, so if there's a
>>PROBLEM, you're hosed.
>
>
> Sure - that could be a problem. This depends on how much you want to
> sell to windows users. We linux users, and other open source users,
> don't worry that much about windows console deficiencies.
> Particularly considering how the common windows user doesn't use his
> console anyway - ms hides everything behind a pretty "Please wait,
> windows is starting" screen. And they reinstall if something goes wrong :-/
I see a bit of irony in calling the card "platform agnostic" if it
doesn't work right with Windows.
>
> You are sure that an "early boot" console driver for windows is impossible?
> Ms provides no clue about replacing this thing? Rendering text onto vga
> must be done somewhere, possibly in a library that could be replaced.
Unfortunately, Microsoft dictates the rules here and they're not going
to change for us.
Remember the BIOS config screen.
>
>>VGA is so "expected" that pretty much everything just assumes it's there
>>and bangs on the hardware directly.
>
>
> So it is a question of what you want to support, and how numerous
> these VGA users are. Perhaps you won't have to implement _all_
> of VGA though - that might save space in your FPGA. Full VGA have some
> rarely used oddball modes and features - and backwards compatibility
> cruft. Who needs the EGA modes or ability to load textmode
> fonts for example - when all the user need is to see some
> boot messages before the real driver takes over.
Exactly. We need the absolute minimum. I'm thinking there's got to be
some way to do most of it by emulating it in the setup engine.
Big ROMs which contain lots of setup engine code are NOT a problem.
Consider this: POST configures the PC to see one of the framebuffer
apertures as the "screen" for 80x25 text or 640x480 VGA. The setup
engine just sits there and continuously translates from that to graphics
for the video controller.
There may be some issues with the "io space" accesses, but we'll just
have to design it so that the setup engine can intercept those (kinda
like it'll intercept pseudo-registers for 2D emulation).
> If you go for VGA, then I hope the VGA bits will be
> somewhat optional or possible to disable, so the VGA bits
> doesn�'t get in the way when trying to use several cards
> simultaneously. You may make cards that cooperate nicely with
> each other - but there may be other card(s) in the machine
> too that also mess with VGA registers at strange times.
At the very minimum, the host controller will have to have the logic
necessary to handle io space accesses. The thing is, for a non-console,
they won't get enabled at POST. Problem solved.
If necessary, we'll add a jumper to the board.
>
> If VGA is implemented entirely in the FPGA then perhaps there
> will be alternate FPGA firmwares for different purposes. (Surely
> cheaper than making different boards). One variant could
> be VGA-less, the space may then be used for other purposes. An
> extra 3D-unit of some sort perhaps. :-)
I want to minimize dedicated logic for VGA.
next prev parent reply other threads:[~2004-10-29 15:52 UTC|newest]
Thread overview: 165+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-10-20 22:02 HARDWARE: Open-Source-Friendly Graphics Cards -- Viable? Timothy Miller
2004-10-20 22:17 ` Andre Eisenbach
2004-10-21 1:31 ` Jon Valvatne
2004-10-21 16:09 ` Timothy Miller
2004-10-24 19:47 ` Pavel Machek
2004-10-20 22:19 ` HARDWARE: Open-Source-Friendly Graphics Cards -- Viable? [u] Martin Schlemmer [c]
2004-10-24 8:24 ` Tonnerre
2004-10-24 14:26 ` Martin Schlemmer [c]
2004-10-20 22:26 ` HARDWARE: Open-Source-Friendly Graphics Cards -- Viable? David Lang
2004-10-21 14:46 ` Timothy Miller
2004-10-21 17:25 ` David Lang
2004-10-21 18:15 ` Timothy Miller
2004-10-21 18:32 ` Antonio Vargas
2004-10-22 9:53 ` Raphael Jacquot
2004-10-24 9:03 ` Tonnerre
2004-10-25 1:33 ` Stephen Wille Padnos
2004-10-25 1:48 ` Stephen Wille Padnos
2004-10-25 2:29 ` Gene Heskett
2004-10-22 10:16 ` Christian Leber
2004-10-22 17:31 ` Timothy Miller
2004-10-21 19:30 ` Kendall Bennett
2004-10-22 17:05 ` Tobias Diedrich
2004-10-22 17:12 ` Timothy Miller
2004-10-26 2:36 ` Dave Airlie
2004-10-26 3:55 ` Jon Smirl
2004-10-20 22:28 ` Jim Nelson
2004-10-21 14:51 ` Timothy Miller
2004-10-21 22:03 ` Jim Nelson
2004-10-20 22:29 ` Kasper Sandberg
2004-10-21 14:53 ` Timothy Miller
2004-10-21 15:06 ` Simon Braunschmidt
2004-10-21 18:00 ` Timothy Miller
2004-10-20 23:10 ` Alan Cox
2004-10-21 15:10 ` Timothy Miller
2004-10-21 15:25 ` Jon Smirl
2004-10-21 18:03 ` Timothy Miller
2004-10-21 15:32 ` Alan Cox
2004-10-21 19:30 ` Kendall Bennett
2004-10-22 17:15 ` Timothy Miller
2004-10-21 1:08 ` Jon Smirl
2004-10-21 1:11 ` Jon Smirl
2004-10-21 2:00 ` Stephen Wille Padnos
2004-10-21 16:08 ` Timothy Miller
2004-10-21 16:34 ` Stephen Wille Padnos
2004-10-21 23:38 ` Jan Knutar
2004-10-22 4:30 ` Jan Rychter
2004-10-22 17:00 ` Timothy Miller
2004-10-22 17:00 ` Chris Friesen
2004-10-22 18:47 ` Jeff Garzik
2004-10-22 19:22 ` Timothy Miller
2004-10-22 19:33 ` Jeff Garzik
2004-10-22 19:56 ` Timothy Miller
2004-10-22 20:43 ` Jeff Garzik
2004-10-22 20:27 ` Alan Cox
2004-10-23 17:20 ` Francois Romieu
2004-10-23 21:17 ` Alan Cox
2004-10-24 0:06 ` Francois Romieu
2004-10-22 20:51 ` Jeff Garzik
2004-10-22 19:32 ` Roland Dreier
2004-10-24 10:40 ` Helge Hafting
2004-10-25 15:39 ` Timothy Miller
2004-10-21 21:57 ` J.A. Magallon
2004-10-22 9:48 ` Raphael Jacquot
2004-10-21 20:23 ` "Fernando O. Korndörfer"
2004-10-22 9:02 ` Raphael Jacquot
2004-10-21 15:13 ` Timothy Miller
2004-10-21 15:36 ` Shaun Kruger
2004-10-21 18:05 ` Timothy Miller
2004-10-21 19:30 ` Kendall Bennett
2004-10-22 8:49 ` Adrian Cox
2004-10-22 20:10 ` Geert Uytterhoeven
2004-10-23 13:17 ` Adrian Cox
2004-10-22 20:10 ` Geert Uytterhoeven
2004-10-22 22:07 ` Timothy Miller
2004-10-24 10:45 ` Helge Hafting
2004-10-25 15:47 ` Timothy Miller
2004-10-28 9:07 ` Helge Hafting
2004-10-29 16:00 ` Timothy Miller [this message]
2004-10-21 1:48 ` HARDWARE:Graphics Cards or TOE? Nuno Silva
2004-10-26 20:50 ` Timothy Miller
2004-10-21 2:29 ` HARDWARE: Open-Source-Friendly Graphics Cards -- Viable? Kurt Wall
2004-10-21 16:10 ` Timothy Miller
2004-10-21 16:22 ` Pascal Patry
2004-10-21 12:20 ` Adrian Bunk
2004-10-21 13:14 ` Simon Braunschmidt
2004-10-21 17:34 ` Jurriaan
2004-10-21 16:26 ` Timothy Miller
2004-10-21 17:42 ` Alan Cox
2004-10-21 19:09 ` Timothy Miller
2004-10-21 17:53 ` Tobias Diedrich
2004-10-21 23:02 ` Florian Schmidt
2004-10-24 1:04 ` Lee Revell
2004-10-22 1:08 ` Rene Herman
2004-10-23 5:40 ` Kevin Puetz
2004-10-23 17:02 ` Rene Herman
2004-10-23 22:19 ` Lee Revell
2004-10-24 11:10 ` Rene Herman
2004-10-22 10:57 ` Helge Hafting
2004-10-22 19:47 ` Giuseppe Bilotta
2004-10-22 20:15 ` Giuseppe Bilotta
2004-10-25 15:29 ` Tonnerre
2004-10-25 15:53 ` Timothy Miller
2004-10-25 16:32 ` Giuliano Pochini
2004-10-28 9:37 ` Helge Hafting
2004-10-28 11:40 ` Geert Uytterhoeven
2004-10-28 12:21 ` David Greaves
2004-10-29 16:04 ` Timothy Miller
2004-10-22 22:27 ` Clemens Schwaighofer
2004-10-23 14:36 ` Markus Törnqvist
2004-10-24 8:18 ` Tonnerre
2004-10-25 11:54 ` Stuart Longland
2004-10-25 16:38 ` Lars Roland
2004-10-25 17:08 ` Timothy Miller
2004-10-26 21:02 ` Helge Hafting
2004-10-26 21:38 ` Timothy Miller
2004-10-25 22:52 ` Tonnerre
-- strict thread matches above, loose matches on Subject: below --
2004-10-20 23:48 Timothy Miller
2004-10-21 0:30 ` J.A. Magallon
2004-10-21 0:47 ` Timothy Miller
2004-10-22 20:09 ` Geert Uytterhoeven
2004-10-21 1:25 ` Zan Lynx
2004-10-21 15:52 ` Timothy Miller
2004-10-21 4:48 Albert Cahalan
2004-10-21 16:19 ` Timothy Miller
2004-10-21 15:54 John Ripley
2004-10-21 18:09 ` Timothy Miller
2004-10-21 21:32 ` Baruch Even
2004-10-25 23:30 ` Werner Almesberger
2004-10-21 17:08 Greg Buchholz
2004-10-22 2:18 ` Tim Connors
2004-10-21 17:44 John Ripley
2004-10-21 18:26 ` Timothy Miller
2004-10-21 21:36 ` Greg Buchholz
2004-10-21 22:40 ` Timothy Miller
2004-10-21 23:25 ` Jon Smirl
2004-10-21 23:40 ` Greg Buchholz
2004-10-22 16:48 ` Timothy Miller
2004-10-22 16:50 ` Chris Friesen
2004-10-22 17:41 ` Timothy Miller
2004-10-25 23:10 ` Tonnerre
2004-10-26 0:32 ` Werner Almesberger
2004-10-22 15:59 ` Troy Benjegerdes
2004-10-22 3:47 Roy Butler
2004-10-22 17:04 ` Timothy Miller
2004-10-24 18:17 ` Mail Lists
2004-10-25 12:17 ` Bernd Eckenfels
2004-10-22 10:31 John Ripley
2004-10-22 12:58 ` Moritz Muehlenhoff
2004-10-22 17:33 ` Timothy Miller
2004-10-22 17:15 Stephen Lewis
2004-10-23 4:45 ` Gene Heskett
2004-10-23 7:06 ` Stephen Lewis
2004-10-23 19:06 Bodo Eggert
2004-10-25 1:44 ` Stephen Wille Padnos
2004-10-25 8:23 ` Vojtech Pavlik
[not found] <6.1.2.0.1.20041026082223.0231edd8@mail.javagear.com>
2004-10-26 15:44 ` Timothy Miller
2004-10-26 16:35 ` Jesper Juhl
2004-10-26 16:57 ` Jeff Garzik
2004-10-26 21:14 ` Helge Hafting
2004-10-26 21:41 ` Timothy Miller
2004-11-17 14:35 Sid Boyce
2004-11-17 14:46 ` Chris Wedgwood
2004-11-23 13:47 ` Karel Kulhavy
2004-11-23 22:48 ` Timothy Miller
2004-11-24 1:22 ` Sid Boyce
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=41826909.7070908@techsource.com \
--to=miller@techsource.com \
--cc=geert@linux-m68k.org \
--cc=helgehaf@aitel.hist.no \
--cc=jonsmirl@gmail.com \
--cc=linux-kernel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).