Return to BSD News archive
Path: sserve!newshost.anu.edu.au!munnari.oz.au!news.Hawaii.Edu!ames!agate!howland.reston.ans.net!europa.eng.gtefsd.com!uunet!mcsun!news.funet.fi!klaava!klaava!not-for-mail From: lukka@klaava.Helsinki.FI (Tuomas J Lukka) Newsgroups: comp.os.386bsd.development Subject: Re: V86 mode & the BIOS (was Need advice: Which OS to port to?) Date: 16 Aug 1993 14:44:55 +0300 Organization: University of Helsinki Lines: 29 Message-ID: <24nrvn$3vc@klaava.Helsinki.FI> References: <hastyCBLnIF.Cyq@netcom.com> <kjb.745145142@manda.cgl.citri.edu.au> <1993Aug13.042831.15754@fcom.cc.utah.edu> <108738@hydra.gatech.edu> NNTP-Posting-Host: klaava.helsinki.fi In article <108738@hydra.gatech.edu> gt8134b@prism.gatech.EDU (Howlin' Bob) writes: >In <1993Aug13.042831.15754@fcom.cc.utah.edu> terry@cs.weber.edu (A Wizard of Earth C) writes: >2048x1536 mode offered by your new ZGA card? Well, you can >(hopefully) get the programming information from the vendor, put together >an LKM with the mode setting magic, and simply add a new mode to your X >server's mode list. Now, let's say it's a command-oriented card, >like the S3. IN fact, it's worse than that: you have no access >to the video memory except through commands. Insert any other >VGA-incompatible card architecture here, but the point is that >by the time you've added all the primitives needed to effiently use >it (get/put pixel, get block of video ram, put block of video ram, >circle, square, palette, etc) you've written a fairly large kernel >service. Don't forget that these operations must be supported >on *all* the cards. So, you have to write the circle,square, etc. >code for all the cards. > >That's a little too complex for my kernel, thank you. Except that the modules could be made on a plug-in basis: get the kernel, get the correct video module for your card, untar and compile. It all doesn't need to be in the kernel if one's not using it... also, a user-space interface might be reasonable enough, and also lessening non-pageable memory: a special device, and an ioctl that hangs until a mode change is needed. This way, all the duplicated code would be avoided. Tjl