Set the changed memory region dirty after performed a 2D operation to
ensure that the screen is updated properly.
Signed-off-by: BALATON Zoltan <balaton@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