From a38127414bd007c5b6ae64c664d9e8839393277e Mon Sep 17 00:00:00 2001 From: BALATON Zoltan Date: Wed, 3 Jul 2019 12:56:50 +0200 Subject: ati-vga: Fix frame buffer endianness for big endian target The extended mode frame buffer should be little endian even when emulating big endian machine (such as PPC). This fixes color problems with MorphOS. Signed-off-by: BALATON Zoltan Message-id: 439aa85061f103446df7b42632d730971a372432.1562151410.git.balaton@eik.bme.hu Signed-off-by: Gerd Hoffmann --- hw/display/ati.c | 1 + 1 file changed, 1 insertion(+) (limited to 'hw/display/ati.c') diff --git a/hw/display/ati.c b/hw/display/ati.c index c1d9d1518f..590362ea56 100644 --- a/hw/display/ati.c +++ b/hw/display/ati.c @@ -89,6 +89,7 @@ static void ati_vga_switch_mode(ATIVGAState *s) DPRINTF("Switching to %dx%d %d %d @ %x\n", h, v, stride, bpp, offs); vbe_ioport_write_index(&s->vga, 0, VBE_DISPI_INDEX_ENABLE); vbe_ioport_write_data(&s->vga, 0, VBE_DISPI_DISABLED); + s->vga.big_endian_fb = false; /* reset VBE regs then set up mode */ s->vga.vbe_regs[VBE_DISPI_INDEX_XRES] = h; s->vga.vbe_regs[VBE_DISPI_INDEX_YRES] = v; -- cgit v1.2.3