Author: jgardou
Date: Fri Aug 6 14:55:44 2010
New Revision: 48470
URL:
http://svn.reactos.org/svn/reactos?rev=48470&view=rev
Log:
[WIN32K, GENDIB]
- Did you know that we should ignore alpha channel of pattern in ROPs? You didn't, I
didn't, now we do.
[WIN32K]
- Use BGR palette as default for 24 and 32 bpp bitmaps.
Modified:
branches/reactos-yarotows/subsystems/win32/win32k/dib/dib.c
branches/reactos-yarotows/subsystems/win32/win32k/objects/palette.c
branches/reactos-yarotows/tools/gendib/gendib.c
Modified: branches/reactos-yarotows/subsystems/win32/win32k/dib/dib.c
URL:
http://svn.reactos.org/svn/reactos/branches/reactos-yarotows/subsystems/win…
==============================================================================
--- branches/reactos-yarotows/subsystems/win32/win32k/dib/dib.c [iso-8859-1] (original)
+++ branches/reactos-yarotows/subsystems/win32/win32k/dib/dib.c [iso-8859-1] Fri Aug 6
14:55:44 2010
@@ -150,6 +150,9 @@
0xF0F0F00F /* 1110 */,
0xF0F0F0F0 /* 1111 */,
};
+
+ /* Ignore alpha channel in Pattern */
+ Pattern &= 0x00ffffff ;
/* Optimized code for the various named rop codes. */
switch (Rop)
Modified: branches/reactos-yarotows/subsystems/win32/win32k/objects/palette.c
URL:
http://svn.reactos.org/svn/reactos/branches/reactos-yarotows/subsystems/win…
==============================================================================
--- branches/reactos-yarotows/subsystems/win32/win32k/objects/palette.c [iso-8859-1]
(original)
+++ branches/reactos-yarotows/subsystems/win32/win32k/objects/palette.c [iso-8859-1] Fri
Aug 6 14:55:44 2010
@@ -124,8 +124,8 @@
appalSurfaceDefault[BMF_4BPP] = gppalDefault;
appalSurfaceDefault[BMF_8BPP] = gppalDefault;
appalSurfaceDefault[BMF_16BPP] = &gpalRGB565;
- appalSurfaceDefault[BMF_24BPP] = &gpalRGB;
- appalSurfaceDefault[BMF_32BPP] = &gpalRGB;
+ appalSurfaceDefault[BMF_24BPP] = &gpalBGR;
+ appalSurfaceDefault[BMF_32BPP] = &gpalBGR;
appalSurfaceDefault[BMF_4RLE] = gppalDefault;
appalSurfaceDefault[BMF_8RLE] = gppalDefault;
appalSurfaceDefault[BMF_JPEG] = &gpalRGB;
Modified: branches/reactos-yarotows/tools/gendib/gendib.c
URL:
http://svn.reactos.org/svn/reactos/branches/reactos-yarotows/tools/gendib/g…
==============================================================================
--- branches/reactos-yarotows/tools/gendib/gendib.c [iso-8859-1] (original)
+++ branches/reactos-yarotows/tools/gendib/gendib.c [iso-8859-1] Fri Aug 6 14:55:44 2010
@@ -143,16 +143,16 @@
{ ROPCODE_NOTSRCCOPY, "NOTSRCCOPY", "~S", 0, 1, 0
},
{ ROPCODE_SRCERASE, "SRCERASE", "(~D) & S", 1, 1,
0 },
{ ROPCODE_DSTINVERT, "DSTINVERT", "~D", 1, 0, 0
},
- { ROPCODE_PATINVERT, "PATINVERT", "D ^ P", 1, 0, 1
},
+ { ROPCODE_PATINVERT, "PATINVERT", "D ^ (P &
0x00ffffff)", 1, 0, 1 },
{ ROPCODE_SRCINVERT, "SRCINVERT", "D ^ S", 1, 1, 0
},
{ ROPCODE_SRCAND, "SRCAND", "D & S", 1, 1,
0 },
{ ROPCODE_NOOP, "NOOP", "D", 1, 0, 0
},
{ ROPCODE_MERGEPAINT, "MERGEPAINT", "D | (~S)", 1, 1, 0
},
- { ROPCODE_MERGECOPY, "MERGECOPY", "S & P", 0, 1,
1 },
+ { ROPCODE_MERGECOPY, "MERGECOPY", "S & P &
0x00ffffff", 0, 1, 1 },
{ ROPCODE_SRCCOPY, "SRCCOPY", "S", 0, 1, 0
},
{ ROPCODE_SRCPAINT, "SRCPAINT", "D | S", 1, 1, 0
},
- { ROPCODE_PATCOPY, "PATCOPY", "P", 0, 0, 1
},
- { ROPCODE_PATPAINT, "PATPAINT", "D | (~S) | P", 1, 1, 1
},
+ { ROPCODE_PATCOPY, "PATCOPY", "P & 0x00ffffff",
0, 0, 1 },
+ { ROPCODE_PATPAINT, "PATPAINT", "D | (~S) | (P &
0x00ffffff)", 1, 1, 1 },
{ ROPCODE_WHITENESS, "WHITENESS", "0xffffffff", 0, 0, 0
},
{ ROPCODE_GENERIC, NULL, NULL, 1, 1, 1 }
};