From 4b865c28099ddd365062f46dd1ad83c03b2468eb Mon Sep 17 00:00:00 2001 From: Mark Cave-Ayland Date: Wed, 5 Apr 2017 09:02:46 +0100 Subject: tcx: ensure tcx_set_dirty() also invalidates the 24-bit plane and cplane Signed-off-by: Mark Cave-Ayland Reviewed-by: Gerd Hoffmann --- hw/display/tcx.c | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'hw/display') diff --git a/hw/display/tcx.c b/hw/display/tcx.c index d24466f59d..6817bd207d 100644 --- a/hw/display/tcx.c +++ b/hw/display/tcx.c @@ -96,6 +96,13 @@ typedef struct TCXState { static void tcx_set_dirty(TCXState *s, ram_addr_t addr, int len) { memory_region_set_dirty(&s->vram_mem, addr, len); + + if (s->depth == 24) { + memory_region_set_dirty(&s->vram_mem, s->vram24_offset + addr * 4, + len * 4); + memory_region_set_dirty(&s->vram_mem, s->cplane_offset + addr * 4, + len * 4); + } } static inline int tcx24_check_dirty(TCXState *s, ram_addr_t page, -- cgit v1.2.3