Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 06 Mar 2012 08:49:14 -0700
From:      Ian Lepore <freebsd@damnhippie.dyndns.org>
To:        Brandon Falk <bfalk_bsd@brandonfa.lk>
Cc:        freebsd-hackers@freebsd.org
Subject:   Re: Graphical Terminal Environment
Message-ID:  <1331048954.32194.5.camel@revolution.hippie.lan>
In-Reply-To: <4F562C38.4010203@brandonfa.lk>
References:  <CAGSJxJ7yRZJydw7fNGyTnsykfsJf2Q0VzoFbKX-%2BSgNspiOhoA@mail.gmail.com> <4F55A0EA.8000300@gmail.com> <CAGSJxJ5BBPkrjwGFLomFvoj%2Bh_qaEmqT%2Bi6tVx__tBVf4yZDYg@mail.gmail.com> <CA%2BtpaK3Fp8m%2B0ccAjiAAKj_JJ1nQEYRBSwg_sYEPqOoWJgUfog@mail.gmail.com> <CAGSJxJ7i-fiNQieACQcKVd%2BvrKvL7eMiwHBq60rUKB=8i5vQiQ@mail.gmail.com> <4f5635d4.5Qp6ViEgiFLUuPKI%perryh@pluto.rain.com> <4F562C38.4010203@brandonfa.lk>

next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, 2012-03-06 at 10:24 -0500, Brandon Falk wrote:
> On 3/6/2012 11:05 AM, perryh@pluto.rain.com wrote:
> > Brandon Falk <bfalk_bsd@brandonfa.lk> wrote:
> >
> >> I havent tried tmux yet, but on my system im only able to get
> >> 80x40 with vidcontrol on one monitor. But with xterm in xorg
> >> i can get 319x89 per monitor ...
> >
> > To get higher resolution than what vidcontrol provides, you'll most
> > likely need to run the display in graphic mode (which is what X11
> > does) rather than in text mode.  That means that you will need to
> > either use, or reinvent, the lowest levels of X (display driver,
> > window mapping) and at least part of the xterm/rxvt application
> > (terminal emulation, font rasterizing, perhaps scrolling).  You
> > could, however, eliminate the X practice of using the network to
> > connect the terminal emulator to the display; this would give you
> > an architecture resembling SunView (and its predecessor, SunTools).
> >
> > I _think_ SunTools/SunView were proprietary, although it's possible
> > that Sun released the source code at some point.  You could try
> > doing some research with Google and/or the Internet Archive.
> 
> That's pretty much my plan. To write some lower level drivers to put the system
> in a graphics mode. I have 4 monitors and there is no other way to get multiple
> monitors without a GPU specific driver (at least from my VGA OSDev experience).
> My goal will be to make a driver that will be able to be runnable by any other
> driver easily. Instead of having to use Xorg, just calls to the video driver to
> set the mode to graphics, then some primitive functions to draw lines and dots.
> 
> I don't see why Xorg should dominate the drivers completely, I really wish it
> was a matter of having an open, well documented, easy to use API that you can
> just give direct commands to.
> 
> >From my understanding, this is the current model:
> 
> [  Apps   ]
>     |
>     v
> [  Xorg   ]
>     |
>     v
> [  Driver ]
>     |
>     v
> [  GPU    ]
> 
> I think it should be the following:
> 
> [ Apps ]
>    |
>    v
> [ Xorg ]       [ Apps ]
>    |              |
>    v              v
> [        Driver          ]
>            |
>            v
> [          GPU           ]
> 
> Does this make sense to anyone else? I really want to get this idea across
> because I think it would be really beneficial.
> 
> -Brandon

With that model and your statement that the driver should support only
primitive functions to draw lines and dots, that leaves the non-trivial
problem of font rendering to the app.  Given your original goal, font
rendering is pretty much the bulk of what you want to do, is the app
layer the right place for it?

-- Ian





Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1331048954.32194.5.camel>