Rev 1993 | Rev 2015 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 1993 | Rev 1994 | ||
---|---|---|---|
Line 103... | Line 103... | ||
103 | static int byte0888_rgb(void *src) |
103 | static int byte0888_rgb(void *src) |
104 | { |
104 | { |
105 | return (*((int *) src)) & 0xffffff; |
105 | return (*((int *) src)) & 0xffffff; |
106 | } |
106 | } |
107 | 107 | ||
- | 108 | static void bgr_byte0888(void *dst, int rgb) |
|
- | 109 | { |
|
- | 110 | *((uint32_t *) dst) = BLUE(rgb, 8) << 16 | GREEN(rgb, 8) << 8 | RED(rgb, 8); |
|
- | 111 | } |
|
- | 112 | ||
- | 113 | static int byte0888_bgr(void *src) |
|
- | 114 | { |
|
- | 115 | int color = *(uint32_t *)(src); |
|
- | 116 | return ((color & 0xff) << 16) | (((color >> 8) & 0xff) << 8) | ((color >> 16) & 0xff); |
|
- | 117 | } |
|
- | 118 | ||
108 | static void rgb_byte888(void *dst, int rgb) |
119 | static void rgb_byte888(void *dst, int rgb) |
109 | { |
120 | { |
110 | uint8_t *scr = dst; |
121 | uint8_t *scr = dst; |
111 | #if defined(FB_INVERT_ENDIAN) |
122 | #if defined(FB_INVERT_ENDIAN) |
112 | scr[0] = RED(rgb, 8); |
123 | scr[0] = RED(rgb, 8); |
Line 400... | Line 411... | ||
400 | case VISUAL_RGB_0_8_8_8: |
411 | case VISUAL_RGB_0_8_8_8: |
401 | rgb2scr = rgb_byte0888; |
412 | rgb2scr = rgb_byte0888; |
402 | scr2rgb = byte0888_rgb; |
413 | scr2rgb = byte0888_rgb; |
403 | pixelbytes = 4; |
414 | pixelbytes = 4; |
404 | break; |
415 | break; |
- | 416 | case VISUAL_BGR_0_8_8_8: |
|
- | 417 | rgb2scr = bgr_byte0888; |
|
- | 418 | scr2rgb = byte0888_bgr; |
|
- | 419 | pixelbytes = 4; |
|
- | 420 | break; |
|
405 | default: |
421 | default: |
406 | panic("Unsupported visual.\n"); |
422 | panic("Unsupported visual.\n"); |
407 | } |
423 | } |
408 | 424 | ||
409 | unsigned int fbsize = scan * y; |
425 | unsigned int fbsize = scan * y; |