10 void fb_hGfxBox(
int x1,
int y1,
int x2,
int y2,
unsigned int color,
int full,
unsigned int style)
13 unsigned char *dest, rot;
14 int clipped_x1, clipped_y1, clipped_x2, clipped_y2, w, h, bit;
16 if ((x2 < context->view_x) || (y2 < context->view_y) ||
28 w = clipped_x2 - clipped_x1 + 1;
29 h = clipped_y2 - clipped_y1 + 1;
30 dest = context->
line[clipped_y1] + (clipped_x1 * context->
target_bpp);
38 if (style != 0xFFFF) {
39 rot = (clipped_x1 - x1) & 0xF;
42 if (y2 < context->view_y + context->
view_h) {
46 for (w = clipped_x1; w <= clipped_x2; w++) {
48 context->
put_pixel(context, w, y2, color);
53 else if (style != 0xFFFF) {
54 rot = (clipped_x2 - clipped_x1 + 1) & 0xF;
57 if (style != 0xFFFF) {
58 rot = ((x2 - clipped_x2) + (clipped_x1 - x1)) & 0xF;
62 if (y1 >= context->
view_y) {
66 for (w = clipped_x1; w <= clipped_x2; w++) {
68 context->
put_pixel(context, w, y1, color);
73 else if (style != 0xFFFF) {
74 rot = (clipped_x2 - clipped_x1 + 1) & 0xF;
77 if (style != 0xFFFF) {
78 rot = ((x2 - clipped_x2) + (clipped_y1 - y1)) & 0xF;
81 if (x2 < context->view_x + context->
view_w) {
82 for (h = clipped_y1; h <= clipped_y2; h++) {
84 context->
put_pixel(context, x2, h, color);
88 else if (style != 0xFFFF) {
89 rot = (clipped_y2 - clipped_y1 + 1) & 0xF;
92 if (style != 0xFFFF) {
93 rot = ((y2 - clipped_y2) + (clipped_y1 - y1)) & 0xF;
96 if (x1 >= context->
view_x) {
97 for (h = clipped_y1; h <= clipped_y2; h++) {
99 context->
put_pixel(context, x1, h, color);
105 SET_DIRTY(context, clipped_y1, clipped_y2 - clipped_y1 + 1);