From owner-freebsd-hackers Sat Nov 15 16:34:23 1997 Return-Path: Received: (from root@localhost) by hub.freebsd.org (8.8.7/8.8.7) id QAA06914 for hackers-outgoing; Sat, 15 Nov 1997 16:34:23 -0800 (PST) (envelope-from owner-freebsd-hackers) Received: from d198-232.uoregon.edu (d198-232.uoregon.edu [128.223.198.232]) by hub.freebsd.org (8.8.7/8.8.7) with ESMTP id QAA06907 for ; Sat, 15 Nov 1997 16:34:19 -0800 (PST) (envelope-from mini@d198-232.uoregon.edu) Received: (from mini@localhost) by d198-232.uoregon.edu (8.8.5/8.8.5) id QAA15844; Sat, 15 Nov 1997 16:34:00 -0800 (PST) Message-ID: <19971115163359.29992@micron.mini.net> Date: Sat, 15 Nov 1997 16:33:59 -0800 From: Jonathan Mini To: hackers@freebsd.org Subject: VESA VBE 1.2 and 2.0 library Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Mailer: Mutt 0.85e X-files: The Truth is Out There Sender: owner-freebsd-hackers@freebsd.org X-Loop: FreeBSD.org Precedence: bulk I am developing a library which will provide VESA VBE 1.2 and 2.0 support for FreeBSD. It works as follows : 1) There is a device in the kernel which provides memory mappings for the video card, and (if needed) a virtual framebuffer mapping in kernel memory. (this ensures that the framebuffer won't get swapped out) 2) a vm86 daemon which contains mappings to the virtual framebuffer (if in use) and io privelege to the video card's I/O space. This daemon has two purposes : one, it performs VBE calls requested by the vesa device and returns the results (often data tables) where the vesa device can reach them to pass back to the caller. 3) A library which acts as a front-end for the vesa device and hides the whole interface between the vesa device and userland. It also will manage contention against syscons, if enabled. (For example, it will handle switching between vtys, changing the keyboard mode, etc) This provides support for all VESA VBE video modes on any card which supports 1.2 or better of the spec. (I have never seen a card which did not suport at least VBE 1.2, and this is including old 8 bit VGA wanna-be cards that are so slow you would never want to use one) It will also use a linear framebuffer if the card provides it, and if not, a virtual frambuffer will be made available. The virtual framebuffer is much slower, but it works. So, I am officially requesting a major number to be assigned to me for the device 'vesa' which provides the memory mappings needed for this system to work. -- Jonathan Mini Ingenious Productions Software Development P.O. Box 5693, Eugene, Or. 97405 "A child of five could understand this! Quick -- Fetch me a child of five."