[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RE: [Qemu-devel] [PATCH]Fix for minor video corruption under Windows
From: |
Dugger, Donald D |
Subject: |
RE: [Qemu-devel] [PATCH]Fix for minor video corruption under Windows |
Date: |
Wed, 10 May 2006 09:17:20 -0700 |
WD-
I see the problem here, `patch' got confused because my patch was
against a 0.8.0 tree and you applied it to a 0.8.1 tree. You wound up
making the change to `cirrus_hook_read_sr', where the Windows driver
attempts to read the mode register. The patch is supposed to apply to
the routine `cirrus_hook_write_sr', where the video mode is set.
I've attached a version of the patch that should apply cleanly against
the 0.8.1 tree. (Sorry about the attachment, IT policies force me to
use a broken mailer and I can only reply to you with an attachment.)
--
Don Dugger
"Censeo Toto nos in Kansa esse decisse." - D. Gale
address@hidden
Ph: (303)440-1368
>-----Original Message-----
>From: address@hidden
>[mailto:address@hidden
>] On Behalf Of WaxDragon
>Sent: Wednesday, May 10, 2006 8:27 AM
>To: address@hidden
>Subject: Re: [Qemu-devel] [PATCH]Fix for minor video
>corruption under Windows
>
>I tried out this patch (with CVS, after fixing it) with XP SP2 and 2k3
>SP1. It did address the corruption when changing bpp or resolution,
>but paints the screen white while the UI elements repaint themselves.
>Just a little disturbing, but I'll get used to it. Also, I had the
>leave the second chunk in, otherwise XP failed to paint much of the
>screen upon bootup.
>
>Index: hw/cirrus_vga.c
>===================================================================
>RCS file: /sources/qemu/qemu/hw/cirrus_vga.c,v
>retrieving revision 1.21
>diff -u -r1.21 cirrus_vga.c
>--- hw/cirrus_vga.c 30 Apr 2006 21:28:36 -0000 1.21
>+++ hw/cirrus_vga.c 10 May 2006 14:08:25 -0000
>@@ -1181,6 +1181,17 @@
> break;
> case 0x05: // ???
> case 0x07: // Extended Sequencer Mode
>+ /* Win2K seems to assume that the VRAM is set to 0xff
>+ * whenever VGA/SVGA mode changes
>+ */
>+ if ((s->sr[0x07] ^ *reg_value) & CIRRUS_SR7_BPP_SVGA)
>+ memset(s->vram_ptr, 0xff, s->real_vram_size);
>+ *reg_value = s->sr[0x07];
>+#ifdef DEBUG_CIRRUS
>+ printf("cirrus: handled outport sr_index %02x, sr_value %02x\n",
>+ reg_index, reg_value);
>+#endif
>+ break;
> case 0x08: // EEPROM Control
> case 0x09: // Scratch Register 0
> case 0x0a: // Scratch Register 1
>
>
>WD
>--
>ReactOS is a hub, follow the spokes and you'll
>immediately find absolutely everything you need
>to know about Windows. ReactOS is not just
>software, it's people.
> kjk_hyperion
>
>
>_______________________________________________
>Qemu-devel mailing list
>address@hidden
>http://lists.nongnu.org/mailman/listinfo/qemu-devel
>
patch-cirrus-0510.l
Description: patch-cirrus-0510.l