Subject: Re: Blitting
To: Chris Hopps <chopps@emunix.emich.edu>
From: Eduardo E. Horvath eeh@btr.com <eeh@btr.btr.com>
List: amiga-x
Date: 03/24/1994 20:02:22
On Thu, 24 Mar 1994, Chris Hopps wrote:

> Like I said the calls should be made and succeed always that way 
> the ddx layer doesn't need to worry about it.  /dev/view should support
> default CPU related functions to fill in for missing blitter capabilities
> in the specific graphic board.

I'm sorry, but I must disagree with you on this point.  CPU based 
rendering does not belong in the kernel.  Remeber that everything in the 
kernel is locked into memory *permanently* and cannot be paged out (at 
least until the kernel supports paging itself out).  

Since the X server is paged, any unreferenced code is simply never 
loaded.  It just takes up room on disk.  And if you really want, you can 
compile a server designed to take advantage of the specific capabilities 
of a particular device.

I prefer to have 5 different servers for different displays on disk and
then rm -f the ones I don't want than have 5-10K of extra code in the
kernel, especially if that is extra code I'm not using.  And if we're
talking about the full 16 X rendering functions that is going to be much
closer to 100K. 

It's also much easier to implement and debug code in the server.  You can 
use gdb and don't need to reboot each time you make a change.  It's also 
quite simple to make an X server that selects among different rendering 
routines on startup.

I'm very strongly of the opinion that if the hardware does not support an 
operation, then it should be emulated in the server, not in the kernel.

=========================================================================
Eduardo Horvath				eeh@btr.com
					..!{decwrl,mips,fernwood}!btr!eeh
	"Trust me, I am cognizant of what I am doing." - Hammeroid


------------------------------------------------------------------------------