static void update_palette_entries(TCXState *s, int start, int end) { int i; for(i = start; i < end; i++) { switch(ds_get_bits_per_pixel(s->ds)) { default: case 8: s->palette[i] = rgb_to_pixel8(s->r[i], s->g[i], s->b[i]); break; case 15: s->palette[i] = rgb_to_pixel15(s->r[i], s->g[i], s->b[i]); break; case 16: s->palette[i] = rgb_to_pixel16(s->r[i], s->g[i], s->b[i]); break; case 32: if (is_surface_bgr(s->ds->surface)) 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]); break; } } if (s->depth == 24) { tcx24_set_dirty(s); } else { tcx_set_dirty(s); } }
static void update_palette_entries(TCXState *s, int start, int end) { DisplaySurface *surface = qemu_console_surface(s->con); int i; for (i = start; i < end; i++) { switch (surface_bits_per_pixel(surface)) { default: case 8: s->palette[i] = rgb_to_pixel8(s->r[i], s->g[i], s->b[i]); break; case 15: s->palette[i] = rgb_to_pixel15(s->r[i], s->g[i], s->b[i]); break; case 16: s->palette[i] = rgb_to_pixel16(s->r[i], s->g[i], s->b[i]); break; case 32: if (is_surface_bgr(surface)) { 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]); } break; } } if (s->depth == 24) { tcx24_set_dirty(s); } else { tcx_set_dirty(s); } }
static void tcx24_invalidate_display(void *opaque) { TCXState *s = opaque; tcx_set_dirty(s); tcx24_set_dirty(s); qemu_console_resize(s->ds, s->width, s->height); }
static int vmstate_tcx_post_load(void *opaque, int version_id) { TCXState *s = opaque; update_palette_entries(s, 0, 256); if (s->depth == 24) { tcx24_set_dirty(s); } else { tcx_set_dirty(s); } return 0; }