ReactOS 0.4.16-dev-297-gc569aee
bitblt.h
Go to the documentation of this file.
1
2// Each bit corresponds to one of the terms in the polynomial
3//
4// Rop(D,S,P) = a + a D + a S + a P + a DS + a DP + a SP + a DSP
5// 0 d s p ds dp sp dsp
6
7#define AVEC_NOT 0x01
8#define AVEC_D 0x02
9#define AVEC_S 0x04
10#define AVEC_P 0x08
11#define AVEC_DS 0x10
12#define AVEC_DP 0x20
13#define AVEC_SP 0x40
14#define AVEC_DSP 0x80
15
16#define AVEC_NEED_SOURCE (AVEC_S | AVEC_DS | AVEC_SP | AVEC_DSP)
17#define AVEC_NEED_PATTERN (AVEC_P | AVEC_DP | AVEC_SP | AVEC_DSP)
18
19#define BB_TARGET_SCREEN 0x0001
20#define BB_TARGET_ONLY 0x0002
21#define BB_SOURCE_COPY 0x0004
22#define BB_PATTERN_COPY 0x0008
23
24#define GET_OPINDEX_FROM_ROP3(Rop3) (((Rop3) >> 16) & 0xff)
25#define GET_OPINDEX_FROM_ROP4(Rop4) ((Rop4) & 0xff)
26#define ROP3_TO_ROP4(Rop3) ((((Rop3) >> 8) & 0xff00) | (((Rop3) >> 16) & 0x00ff))
27#define R3_OPINDEX_SRCCOPY 0xcc
28#define R3_OPINDEX_NOOP 0xaa
29#define R4_MASK ((R3_OPINDEX_NOOP << 8) | R3_OPINDEX_SRCCOPY)