Lines Matching refs:target

115   /* Copy mode info from active render target.  */
201 /* Maps color name to target optimized color format. */
227 /* Maps RGB to target optimized color format. */
295 /* Maps RGBA to target optimized color format. */
334 /* Splits target optimized format to components. */
453 struct grub_video_fbblit_info target;
485 target.mode_info = &framebuffer.render_target->mode_info;
486 target.data = framebuffer.render_target->data;
489 mapped to target format so we can make assumptions based on that. */
490 if (target.mode_info->blit_format == GRUB_VIDEO_BLIT_FORMAT_BGRA_8888)
492 grub_video_fbfill_direct32 (&target, color, x, y,
496 else if (target.mode_info->blit_format == GRUB_VIDEO_BLIT_FORMAT_RGBA_8888)
498 grub_video_fbfill_direct32 (&target, color, x, y,
502 else if (target.mode_info->blit_format == GRUB_VIDEO_BLIT_FORMAT_RGB_888)
504 grub_video_fbfill_direct24 (&target, color, x, y,
508 else if (target.mode_info->blit_format == GRUB_VIDEO_BLIT_FORMAT_RGB_565)
510 grub_video_fbfill_direct16 (&target, color, x, y,
514 else if (target.mode_info->blit_format == GRUB_VIDEO_BLIT_FORMAT_BGR_565)
516 grub_video_fbfill_direct16 (&target, color, x, y,
520 else if (target.mode_info->blit_format == GRUB_VIDEO_BLIT_FORMAT_INDEXCOLOR)
522 grub_video_fbfill_direct8 (&target, color, x, y,
528 grub_video_fbfill (&target, color, x, y, width, height);
536 common_blitter (struct grub_video_fbblit_info *target,
549 if (target->mode_info->blit_format == GRUB_VIDEO_BLIT_FORMAT_RGBA_8888)
551 grub_video_fbblit_replace_directN (target, source,
556 else if (target->mode_info->blit_format == GRUB_VIDEO_BLIT_FORMAT_BGRA_8888)
558 grub_video_fbblit_replace_BGRX8888_RGBX8888 (target, source,
563 else if (target->mode_info->blit_format == GRUB_VIDEO_BLIT_FORMAT_BGR_888)
565 grub_video_fbblit_replace_BGR888_RGBX8888 (target, source,
570 else if (target->mode_info->blit_format == GRUB_VIDEO_BLIT_FORMAT_RGB_888)
572 grub_video_fbblit_replace_RGB888_RGBX8888 (target, source,
577 else if (target->mode_info->blit_format == GRUB_VIDEO_BLIT_FORMAT_INDEXCOLOR)
579 grub_video_fbblit_replace_index_RGBX8888 (target, source,
587 if (target->mode_info->blit_format == GRUB_VIDEO_BLIT_FORMAT_BGRA_8888)
589 grub_video_fbblit_replace_BGRX8888_RGB888 (target, source,
594 else if (target->mode_info->blit_format == GRUB_VIDEO_BLIT_FORMAT_RGBA_8888)
596 grub_video_fbblit_replace_RGBX8888_RGB888 (target, source,
601 else if (target->mode_info->blit_format == GRUB_VIDEO_BLIT_FORMAT_BGR_888)
603 grub_video_fbblit_replace_BGR888_RGB888 (target, source,
608 else if (target->mode_info->blit_format == GRUB_VIDEO_BLIT_FORMAT_RGB_888)
610 grub_video_fbblit_replace_directN (target, source,
615 else if (target->mode_info->blit_format == GRUB_VIDEO_BLIT_FORMAT_INDEXCOLOR)
617 grub_video_fbblit_replace_index_RGB888 (target, source,
625 if (target->mode_info->blit_format == GRUB_VIDEO_BLIT_FORMAT_BGRA_8888)
627 grub_video_fbblit_replace_directN (target, source,
635 if (target->mode_info->blit_format == GRUB_VIDEO_BLIT_FORMAT_INDEXCOLOR)
637 grub_video_fbblit_replace_directN (target, source,
645 if (target->mode_info->bpp == 32)
647 grub_video_fbblit_replace_32bit_1bit (target, source,
653 else if (target->mode_info->bpp == 24)
655 grub_video_fbblit_replace_24bit_1bit (target, source,
661 else if (target->mode_info->bpp == 16)
663 grub_video_fbblit_replace_16bit_1bit (target, source,
668 else if (target->mode_info->bpp == 8)
670 grub_video_fbblit_replace_8bit_1bit (target, source,
678 grub_video_fbblit_replace (target, source, x, y, width, height,
686 if (target->mode_info->blit_format == GRUB_VIDEO_BLIT_FORMAT_BGRA_8888)
688 grub_video_fbblit_blend_BGRA8888_RGBA8888 (target, source,
693 else if (target->mode_info->blit_format == GRUB_VIDEO_BLIT_FORMAT_RGBA_8888)
695 grub_video_fbblit_blend_RGBA8888_RGBA8888 (target, source,
700 else if (target->mode_info->blit_format == GRUB_VIDEO_BLIT_FORMAT_BGR_888)
702 grub_video_fbblit_blend_BGR888_RGBA8888 (target, source,
707 else if (target->mode_info->blit_format == GRUB_VIDEO_BLIT_FORMAT_RGB_888)
709 grub_video_fbblit_blend_RGB888_RGBA8888 (target, source,
714 else if (target->mode_info->blit_format == GRUB_VIDEO_BLIT_FORMAT_INDEXCOLOR)
716 grub_video_fbblit_blend_index_RGBA8888 (target, source,
727 if (target->mode_info->blit_format == GRUB_VIDEO_BLIT_FORMAT_BGRA_8888)
729 grub_video_fbblit_replace_BGRX8888_RGB888 (target, source,
734 else if (target->mode_info->blit_format == GRUB_VIDEO_BLIT_FORMAT_RGBA_8888)
736 grub_video_fbblit_replace_RGBX8888_RGB888 (target, source,
741 else if (target->mode_info->blit_format == GRUB_VIDEO_BLIT_FORMAT_BGR_888)
743 grub_video_fbblit_replace_BGR888_RGB888 (target, source,
748 else if (target->mode_info->blit_format == GRUB_VIDEO_BLIT_FORMAT_RGB_888)
750 grub_video_fbblit_replace_directN (target, source,
755 else if (target->mode_info->blit_format == GRUB_VIDEO_BLIT_FORMAT_INDEXCOLOR)
757 grub_video_fbblit_replace_index_RGB888 (target, source,
765 if (target->mode_info->blit_format
767 || target->mode_info->blit_format
770 grub_video_fbblit_blend_XXXA8888_1bit (target, source,
776 else if (target->mode_info->blit_format
778 || target->mode_info->blit_format
781 grub_video_fbblit_blend_XXX888_1bit (target, source,
787 else if (target->mode_info->blit_format
789 || target->mode_info->blit_format
792 grub_video_fbblit_blend_XXX565_1bit (target, source,
802 grub_video_fbblit_blend (target, source, x, y, width, height,
814 struct grub_video_fbblit_info target;
874 /* Limit drawing to source render target dimensions. */
888 target.mode_info = &framebuffer.render_target->mode_info;
889 target.data = framebuffer.render_target->data;
892 common_blitter (&target, &source, oper, x, y, width, height,
965 /* Limit drawing to source render target dimensions. */
1035 /* 3. Move data in render target. */
1036 struct grub_video_fbblit_info target;
1040 target.mode_info = &framebuffer.render_target->mode_info;
1041 target.data = framebuffer.render_target->data;
1043 linedelta = target.mode_info->pitch
1044 - width * target.mode_info->bytes_per_pixel;
1045 linelen = width * target.mode_info->bytes_per_pixel;
1050 dst = (void *) grub_video_fb_get_video_ptr (&target, \
1052 src = (void *) grub_video_fb_get_video_ptr (&target, \
1066 dst = (void *) grub_video_fb_get_video_ptr (&target, \
1069 src = (void *) grub_video_fb_get_video_ptr (&target, \
1084 if ((grub_addr_t) grub_video_fb_get_video_ptr (&target, src_x, src_y)
1086 && (grub_addr_t) grub_video_fb_get_video_ptr (&target, dst_x, dst_y)
1097 else if ((grub_addr_t) grub_video_fb_get_video_ptr (&target, src_x, src_y)
1099 && (grub_addr_t) grub_video_fb_get_video_ptr (&target,
1156 struct grub_video_fbrender_target *target;
1166 /* Allocate memory for render target. */
1167 target = grub_malloc (sizeof (struct grub_video_fbrender_target));
1168 if (! target)
1174 /* Mark render target as allocated. */
1175 target->is_allocated = 1;
1178 target->viewport.x = 0;
1179 target->viewport.y = 0;
1180 target->viewport.width = width;
1181 target->viewport.height = height;
1183 /* Setup render target format. */
1184 target->mode_info.width = width;
1185 target->mode_info.height = height;
1186 target->mode_info.mode_type = GRUB_VIDEO_MODE_TYPE_RGB
1188 target->mode_info.bpp = 32;
1189 target->mode_info.bytes_per_pixel = 4;
1190 target->mode_info.pitch = target->mode_info.bytes_per_pixel * width;
1191 target->mode_info.number_of_colors = framebuffer.palette_size; /* Emulated palette. */
1192 target->mode_info.red_mask_size = 8;
1193 target->mode_info.red_field_pos = 0;
1194 target->mode_info.green_mask_size = 8;
1195 target->mode_info.green_field_pos = 8;
1196 target->mode_info.blue_mask_size = 8;
1197 target->mode_info.blue_field_pos = 16;
1198 target->mode_info.reserved_mask_size = 8;
1199 target->mode_info.reserved_field_pos = 24;
1201 target->mode_info.blit_format = grub_video_get_blit_format (&target->mode_info);
1204 size = (width * target->mode_info.bytes_per_pixel) * height;
1206 target->data = grub_malloc (size);
1207 if (! target->data)
1209 grub_free (target);
1213 /* Clear render target with black and maximum transparency. */
1214 grub_memset (target->data, 0, size);
1216 /* TODO: Add render target to render target list. */
1219 *result = target;
1229 struct grub_video_fbrender_target *target;
1241 /* Allocate memory for render target. */
1242 target = grub_malloc (sizeof (struct grub_video_fbrender_target));
1243 if (! target)
1247 target->is_allocated = 0;
1248 target->data = ptr;
1250 grub_memcpy (&(target->mode_info), mode_info, sizeof (target->mode_info));
1253 target->viewport.x = 0;
1254 target->viewport.y = 0;
1255 target->viewport.width = mode_info->width;
1256 target->viewport.height = mode_info->height;
1258 /* Clear render target with black and maximum transparency. */
1260 grub_memset (target->data + mode_info->pitch * y, 0,
1264 *result = target;
1270 grub_video_fb_delete_render_target (struct grub_video_fbrender_target *target)
1272 /* If there is no target, then just return without error. */
1273 if (! target)
1276 /* TODO: Delist render target from render target list. */
1278 /* If this is software render target, free it's memory. */
1279 if (target->is_allocated)
1280 grub_free (target->data);
1282 /* Free render target. */
1283 grub_free (target);
1289 grub_video_fb_set_active_render_target (struct grub_video_fbrender_target *target)
1291 if (target == (struct grub_video_fbrender_target *)
1293 target = framebuffer.back_target;
1295 if (! target->data)
1297 "invalid render target given");
1299 framebuffer.render_target = target;
1305 grub_video_fb_get_active_render_target (struct grub_video_fbrender_target **target)
1307 *target = framebuffer.render_target;
1309 if (*target == framebuffer.back_target)
1310 *target = (struct grub_video_fbrender_target *) GRUB_VIDEO_RENDER_TARGET_DISPLAY;