[nlist-mcc] Re: Recent WPAA implementation for OS3

  • From: Ilkka Lehtoranta <ilkleht@xxxxxxxxxxx>
  • To: nlist-mcc@xxxxxxxxxxxxx
  • Date: Mon, 25 Feb 2008 23:58:14 +0200 (EET)

On Mon, 25 Feb 2008, Thore [ISO-8859-15] Böckelmann wrote:

> Hi Ilkka!
> 
> Am 22.02.2008 schrieb Ilkka Lehtoranta:
> 
> > Custom WPAA() is included only in 68k builds. I dont know how it could 
> > cause compiler errors. Confusion, possibly. Could be perhaps moved to 
> > extrasrc.
> 
> It causes confusion, because a library function with exactly the same name
> exists. Of course the compiler cannot know if that library function is usable 
> or
> not and hence the custom implementation must be used.

I dont see problem here. YAMOS has got similar cases (ExamineObject(), 
AllocSysObject() etc).

> I think it is quite senseless to implement WPAA by a custom function, because
> the requirements are far too high. And if all requirements are fullfilled, 
> then
> the user also has a graphic board and a suitable combination of CGX and
> picture.datatype to use CGX's WPAA function. Additionally I think bringing 
> full

The point is that there is no WPAA() in CGX/68k. It is only available in 
MorphOS and OS4/CGX emulation library. Old WritePixelArray() does not 
support alpha channel at all.

> alpha channel support to AGA will dramatically slow down the blitting process
> while gaining only very very tiny piece of eye-candy. Some users will scream 
> out

It is not only about eye candy. Without WPAA() it is not possible blit 
images in ARGB format to screen and have transparency. Your only option is 
using BltBitMap#?() family functions and build mask plane. And of course 
it means that you must use bitmaps rather than ARGB arrays complicating 
68k build even more. WPAA() eliminates need for difficult bitmap handling 
and joins MorphOS and 68k code to same sections reducing #if..#endif 
directives.

On the other hand if NBitmap.mcc can not do transparency in OS3 we could 
remove OS3 support altogether. Without transparency support it is useless.

AGA users probably dont 

> for sure, because NBitmap.mcc uses the slow WPAA function on AGA screen, 
> while a
> fast bitmap blit would have given almost the same image, but many times 
> faster.
> Displaying images with lots of colors is a real PITA on a plain AGA system, 
> and
> alpha channel blitting will make things even worse.

I dont think WPA() is much faster to AGA users, if it can be used for 
blitting to AGA screens at all.

As far as NBitmap.mcc is concerned I am not even sure can it be used on 
AGA at all.


  Ilkka

-- 
_______________________________________________________________________
NList classes mailing list  -   //www.freelists.org/list/nlist-mcc
Listserver help...: mailto:nlist-mcc-request@xxxxxxxxxxxxx?subject=HELP
Unsubscribe: mailto:nlist-mcc-request@xxxxxxxxxxxxx?subject=UNSUBSCRIBE
Bugtracker: http://sourceforge.net/tracker/?group_id=112474&atid=662281

Other related posts: