From owner-freebsd-hackers@FreeBSD.ORG Tue Mar 6 15:24:44 2012 Return-Path: Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id A0036106564A for ; Tue, 6 Mar 2012 15:24:44 +0000 (UTC) (envelope-from bfalk_bsd@brandonfa.lk) Received: from mail-yx0-f182.google.com (mail-yx0-f182.google.com [209.85.213.182]) by mx1.freebsd.org (Postfix) with ESMTP id 4E1C88FC1D for ; Tue, 6 Mar 2012 15:24:44 +0000 (UTC) Received: by yenl9 with SMTP id l9so2344057yen.13 for ; Tue, 06 Mar 2012 07:24:43 -0800 (PST) Received-SPF: pass (google.com: domain of bfalk_bsd@brandonfa.lk designates 10.236.115.105 as permitted sender) client-ip=10.236.115.105; Authentication-Results: mr.google.com; spf=pass (google.com: domain of bfalk_bsd@brandonfa.lk designates 10.236.115.105 as permitted sender) smtp.mail=bfalk_bsd@brandonfa.lk; dkim=pass header.i=bfalk_bsd@brandonfa.lk Received: from mr.google.com ([10.236.115.105]) by 10.236.115.105 with SMTP id d69mr33734392yhh.89.1331047483900 (num_hops = 1); Tue, 06 Mar 2012 07:24:43 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=brandonfa.lk; s=google; h=message-id:date:from:user-agent:mime-version:to:cc:subject :references:in-reply-to:content-type:content-transfer-encoding; bh=DchNjKYRQ/I0vOmKN867SiG+KDKeYhgeeVQ+2QoUTTM=; b=mSLEBbFBIgDbXfTEzgfZ1Eka3dNmmVlJ7fcVll4OhVNy/HZHB2whcOC/ZcBxY1so8I vA/cwrfhXTi9X8v5OHEfDWlI30HeGp/sViLDuBEeCoDSswps91kXSfJ/VO6EUqvGlfvN c+hXC5sv2cTSgBYmnVcYQUT2e4qA9/T4h16gg= Received: by 10.236.115.105 with SMTP id d69mr26757889yhh.89.1331047483798; Tue, 06 Mar 2012 07:24:43 -0800 (PST) Received: from [192.168.42.146] (wsip-184-183-177-134.dc.dc.cox.net. [184.183.177.134]) by mx.google.com with ESMTPS id z3sm1902212and.18.2012.03.06.07.24.42 (version=SSLv3 cipher=OTHER); Tue, 06 Mar 2012 07:24:43 -0800 (PST) Message-ID: <4F562C38.4010203@brandonfa.lk> Date: Tue, 06 Mar 2012 10:24:40 -0500 From: Brandon Falk User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:10.0.2) Gecko/20120216 Thunderbird/10.0.2 MIME-Version: 1.0 To: perryh@pluto.rain.com References: <4F55A0EA.8000300@gmail.com> <4f5635d4.5Qp6ViEgiFLUuPKI%perryh@pluto.rain.com> In-Reply-To: <4f5635d4.5Qp6ViEgiFLUuPKI%perryh@pluto.rain.com> Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit X-Gm-Message-State: ALoCoQl+U8PmJa/3Uxw2DnOsntq1WGL083cnTxvbH9ciLckY+9GDMUIj5EY14KRGxk+iu79mdizg Cc: freebsd-hackers@freebsd.org, amvandemore@gmail.com Subject: Re: Graphical Terminal Environment X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 06 Mar 2012 15:24:44 -0000 On 3/6/2012 11:05 AM, perryh@pluto.rain.com wrote: > Brandon Falk 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