From patchwork Mon Jul 9 17:02:36 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: BALATON Zoltan X-Patchwork-Id: 941494 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=nongnu.org (client-ip=2001:4830:134:3::11; helo=lists.gnu.org; envelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=eik.bme.hu Received: from lists.gnu.org (lists.gnu.org [IPv6:2001:4830:134:3::11]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 41PXCy0Qqsz9rxs for ; Tue, 10 Jul 2018 03:20:46 +1000 (AEST) Received: from localhost ([::1]:43530 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fcZq7-0002pu-Pf for incoming@patchwork.ozlabs.org; Mon, 09 Jul 2018 13:20:43 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:40665) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fcZpf-0002oD-3J for qemu-devel@nongnu.org; Mon, 09 Jul 2018 13:20:16 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fcZpa-0004bO-4u for qemu-devel@nongnu.org; Mon, 09 Jul 2018 13:20:15 -0400 Received: from zero.eik.bme.hu ([2001:738:2001:2001::2001]:40170) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1fcZpZ-0004WU-Tz for qemu-devel@nongnu.org; Mon, 09 Jul 2018 13:20:10 -0400 Received: from zero.eik.bme.hu (blah.eik.bme.hu [152.66.115.182]) by localhost (Postfix) with SMTP id 6C6907456B1; Mon, 9 Jul 2018 19:20:05 +0200 (CEST) Received: by zero.eik.bme.hu (Postfix, from userid 432) id 5306274569D; Mon, 9 Jul 2018 19:20:05 +0200 (CEST) From: BALATON Zoltan Date: Mon, 9 Jul 2018 19:02:36 +0200 To: qemu-devel@nongnu.org Message-Id: <20180709172005.5306274569D@zero.eik.bme.hu> X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2001:738:2001:2001::2001 Subject: [Qemu-devel] [PATCH] sm501: Update screen on frame buffer address change X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell , Sebastian Bauer , Magnus Damm , Aurelien Jarno , David Gibson Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: "Qemu-devel" When the guest changes the address of the frame buffer we need to refresh the screen to correctly display the new content. This fixes display update problems when changing between screens on AmigaOS. Signed-off-by: BALATON Zoltan --- This fixes an annoying refresh problem in AmigaOS when changing or moving screens. The user could work around it by moving the mouse to repaint the screen but if it's possible to get this in before or during the freeze that could avoid this problem in the release. hw/display/sm501.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/hw/display/sm501.c b/hw/display/sm501.c index 3661a89..9ab29d3 100644 --- a/hw/display/sm501.c +++ b/hw/display/sm501.c @@ -1235,6 +1235,7 @@ static void sm501_disp_ctrl_write(void *opaque, hwaddr addr, if (value & 0x8000000) { qemu_log_mask(LOG_UNIMP, "Panel external memory not supported\n"); } + s->do_full_update = true; break; case SM501_DC_PANEL_FB_OFFSET: s->dc_panel_fb_offset = value & 0x3FF03FF0; @@ -1298,6 +1299,7 @@ static void sm501_disp_ctrl_write(void *opaque, hwaddr addr, if (value & 0x8000000) { qemu_log_mask(LOG_UNIMP, "CRT external memory not supported\n"); } + s->do_full_update = true; break; case SM501_DC_CRT_FB_OFFSET: s->dc_crt_fb_offset = value & 0x3FF03FF0;