Set the changed memory region dirty after performed a 2D operation to ensure that the screen is updated properly.
Signed-off-by: BALATON Zoltan <bala...@eik.bme.hu> --- hw/display/sm501.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/hw/display/sm501.c b/hw/display/sm501.c index a6232ed..e426d2f 100644 --- a/hw/display/sm501.c +++ b/hw/display/sm501.c @@ -774,6 +774,11 @@ static void sm501_2d_operation(SM501State *s) abort(); break; } + + memory_region_set_dirty(&s->local_mem_region, + s->twoD_destination_base & 0x03FFFFFF, + (dst_y + operation_height) * dst_width + + dst_x + operation_width); } static uint64_t sm501_system_config_read(void *opaque, hwaddr addr, -- 2.7.6