Homam Dabis wrote:
> We have written our own gfx driver. I have run df_dok and can see that
> acceleration is enabled for blitting.
>  
> I have the following situation where acceleration does not work Can
> anyone please explain:
>  
> 
> sdsc.flags = DSDESC_CAPS |
> 
> DSDESC_WIDTH |
> 
> DSDESC_HEIGHT |
> 
> DSDESC_PIXELFORMAT|
> 
> DSDESC_PREALLOCATED;
> 
> sdsc.caps = DSCAPS_SYSTEMONLY;
> 
> sdsc.preallocated[0].data = address;
> 
> sdsc.preallocated[0].pitch = Stride;
> 
> ret = s_dfb->CreateSurface( s_dfb, &sdsc, &secSurface );
> 
>  
> 
> I then call the following to see if acceleration is enabled:
> 
>  
> 
> DFBAccelerationMask mask;
> 
> dest->GetAccelerationMask( dest, source, &mask );
> 
> if (mask & func) {
> 
> fprintf(stderr,"Blitting is accelerated\n");
> 
> }
> 
> else {
> 
> fprintf(stderr,"Blitting is NOT accelerated\n");
> 
> }
> 
>  
> 
>  
> 
> The only difference I could see between the accelerated and non
> accelerated case is the DSDESC_PREALLOCATED;
> 
> sdsc.caps = DSCAPS_SYSTEMONLY;
> 
>  
> 
>  
> 
> Can anyone please explain...
> 
>  
> 
> Thanks
> 
>  
> 
> Homam.

Because DSCAPS_SYSTEMONLY means that the surface is stored (only) in
system (CPU's) memory, while a common graphic device requires it to be
in video (GPU's) memory.

-- 
Regards,
     Claudio Ciccani

[EMAIL PROTECTED]
http://directfb.org
http://sf.net/projects/php-directfb

_______________________________________________
directfb-users mailing list
[email protected]
http://mail.directfb.org/cgi-bin/mailman/listinfo/directfb-users

Reply via email to