diff options
author | aliguori <aliguori@c046a42c-6fe2-441c-8c8c-71466251a162> | 2009-01-15 22:07:16 +0000 |
---|---|---|
committer | aliguori <aliguori@c046a42c-6fe2-441c-8c8c-71466251a162> | 2009-01-15 22:07:16 +0000 |
commit | 8927bcfd339510deedb89ff274ea9cd1d00a2668 (patch) | |
tree | 2a23e99e3cc6cdef2f5d2b18f4a35fac44645f73 /hw/tcx.c | |
parent | 9fd8d8d70db785c7a18fe6788a66dcf1c095a7ad (diff) |
remove bgr (Stefano Stabellini)
Do not handle bgr host displays in the backends.
Right now a bgr flag exists so that sdl can set it, if the SDL_Surface
is bgr.
Afterwards the graphic device (e.g. vga.c) does the needed conversion.
With this patch series is sdl that is responsible for rendering the format
provided by the graphic device that must provide a DisplaySurface
(ds->surface) in 16 or 32 bpp, rgb.
Afterwards sdl creates a SDL_Surface from the given DisplaySurface and
blits it into the main SDL_Surface using SDL_BlitSurface.
Everything is handled by sdl transparently, because SDL_BlitSurface is
perfectly capable of handling bgr displays by itself.
Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6335 c046a42c-6fe2-441c-8c8c-71466251a162
Diffstat (limited to 'hw/tcx.c')
-rw-r--r-- | hw/tcx.c | 23 |
1 files changed, 5 insertions, 18 deletions
@@ -61,22 +61,13 @@ static void update_palette_entries(TCXState *s, int start, int end) s->palette[i] = rgb_to_pixel8(s->r[i], s->g[i], s->b[i]); break; case 15: - if (s->ds->bgr) - s->palette[i] = rgb_to_pixel15bgr(s->r[i], s->g[i], s->b[i]); - else - s->palette[i] = rgb_to_pixel15(s->r[i], s->g[i], s->b[i]); + s->palette[i] = rgb_to_pixel15(s->r[i], s->g[i], s->b[i]); break; case 16: - if (s->ds->bgr) - s->palette[i] = rgb_to_pixel16bgr(s->r[i], s->g[i], s->b[i]); - else - s->palette[i] = rgb_to_pixel16(s->r[i], s->g[i], s->b[i]); + s->palette[i] = rgb_to_pixel16(s->r[i], s->g[i], s->b[i]); break; case 32: - if (s->ds->bgr) - s->palette[i] = rgb_to_pixel32bgr(s->r[i], s->g[i], s->b[i]); - else - s->palette[i] = rgb_to_pixel32(s->r[i], s->g[i], s->b[i]); + s->palette[i] = rgb_to_pixel32(s->r[i], s->g[i], s->b[i]); break; } } @@ -134,12 +125,11 @@ static inline void tcx24_draw_line32(TCXState *s1, uint8_t *d, const uint32_t *cplane, const uint32_t *s24) { - int x, bgr, r, g, b; + int x, r, g, b; uint8_t val, *p8; uint32_t *p = (uint32_t *)d; uint32_t dval; - bgr = s1->ds->bgr; for(x = 0; x < width; x++, s++, s24++) { if ((be32_to_cpu(*cplane++) & 0xff000000) == 0x03000000) { // 24-bit direct, BGR order @@ -148,10 +138,7 @@ static inline void tcx24_draw_line32(TCXState *s1, uint8_t *d, b = *p8++; g = *p8++; r = *p8++; - if (bgr) - dval = rgb_to_pixel32bgr(r, g, b); - else - dval = rgb_to_pixel32(r, g, b); + dval = rgb_to_pixel32(r, g, b); } else { val = *s; dval = s1->palette[val]; |