Several fixes to ieee1275 and big-endian video.
This commit is contained in:
parent
813c16222f
commit
a8905e8ae8
18 changed files with 655 additions and 72 deletions
|
@ -528,7 +528,11 @@ grub_jpeg_ycrcb_to_rgb (int yy, int cr, int cb, grub_uint8_t * rgb)
|
|||
dd = 0;
|
||||
if (dd > 255)
|
||||
dd = 255;
|
||||
#ifdef GRUB_CPU_WORDS_BIGENDIAN
|
||||
rgb[2] = dd;
|
||||
#else
|
||||
*(rgb++) = dd;
|
||||
#endif
|
||||
|
||||
/* Green */
|
||||
dd = yy - ((cb * CONST (0.34414) + cr * CONST (0.71414)) >> SHIFT_BITS);
|
||||
|
@ -536,7 +540,11 @@ grub_jpeg_ycrcb_to_rgb (int yy, int cr, int cb, grub_uint8_t * rgb)
|
|||
dd = 0;
|
||||
if (dd > 255)
|
||||
dd = 255;
|
||||
#ifdef GRUB_CPU_WORDS_BIGENDIAN
|
||||
rgb[1] = dd;
|
||||
#else
|
||||
*(rgb++) = dd;
|
||||
#endif
|
||||
|
||||
/* Blue */
|
||||
dd = yy + ((cb * CONST (1.772)) >> SHIFT_BITS);
|
||||
|
@ -544,7 +552,12 @@ grub_jpeg_ycrcb_to_rgb (int yy, int cr, int cb, grub_uint8_t * rgb)
|
|||
dd = 0;
|
||||
if (dd > 255)
|
||||
dd = 255;
|
||||
#ifdef GRUB_CPU_WORDS_BIGENDIAN
|
||||
rgb[0] = dd;
|
||||
rgb += 3;
|
||||
#else
|
||||
*(rgb++) = dd;
|
||||
#endif
|
||||
}
|
||||
|
||||
static grub_err_t
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue