Commit dd982376 authored by James Simmons's avatar James Simmons

Major fixes for the software accel functions. We have the penguin back.

parent 4ffc21e2
This diff is collapsed.
......@@ -23,38 +23,38 @@ int cfb_cursor(struct fb_info *info, struct fbcursor *cursor)
struct fb_image image;
static char data[64];
image.bg_color = cursor->index->entry[0];
image.fg_color = cursor->index->entry[1];
if (cursor->enable) {
switch (cursor->rop) {
case ROP_XOR:
for (i = 0; i < size; i++)
data[i] = (cursor->image[i] &
cursor->mask[i]) ^
cursor->dest[i];
break;
case ROP_COPY:
default:
for (i = 0; i < size; i++)
data[i] =
cursor->image[i] & cursor->mask[i];
break;
}
} else
memcpy(data, cursor->dest, size);
if (cursor->depth == 1) {
if (cursor->enable) {
switch (cursor->rop) {
case ROP_XOR:
for (i = 0; i < size; i++)
data[i] = (cursor->image[i] &
cursor->mask[i]) ^
cursor->dest[i];
break;
case ROP_COPY:
default:
for (i = 0; i < size; i++)
data[i] =
cursor->image[i] & cursor->mask[i];
break;
}
} else
memcpy(data, cursor->dest, size);
image.dx = cursor->pos.x;
image.dy = cursor->pos.y;
image.width = cursor->size.x;
image.height = cursor->size.y;
image.depth = cursor->depth;
image.data = data;
if (info->fbops->fb_imageblit)
info->fbops->fb_imageblit(info, &image);
image.bg_color = cursor->index->entry[0];
image.fg_color = cursor->index->entry[1];
}
image.dx = cursor->pos.x;
image.dy = cursor->pos.y;
image.width = cursor->size.x;
image.height = cursor->size.y;
image.depth = cursor->depth;
image.data = data;
if (info->fbops->fb_imageblit)
info->fbops->fb_imageblit(info, &image);
return 0;
}
......
This diff is collapsed.
This diff is collapsed.
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment