{
/* FIXME */
//DPRINT1("DIB_24BPP_Bitblt: Unhandled BltInfo->XlateSourceToDest for 16 -> 16 copy\n");
- return DIB_16BPP_BitBltSrcCopy(BltInfo);
+ // return DIB_16BPP_BitBltSrcCopy(BltInfo);
+ sx = BltInfo->SourcePoint.x;
+ sy = BltInfo->SourcePoint.y;
+
+ for (j=BltInfo->DestRect.top; j<BltInfo->DestRect.bottom; j++)
+ {
+ sx = BltInfo->SourcePoint.x;
+ for (i=BltInfo->DestRect.left; i<BltInfo->DestRect.right; i++)
+ {
+ DWORD pixel = DIB_24BPP_GetPixel(BltInfo->SourceSurface, sx, sy);
+ DIB_24BPP_PutPixel(BltInfo->DestSurface, i, j, XLATEOBJ_iXlate(BltInfo->XlateSourceToDest, pixel));
+ sx++;
+ }
+ sy++;
+ }
}
break;