Revision ad81218e hw/cirrus_vga_rop2.h
b/hw/cirrus_vga_rop2.h | ||
---|---|---|
47 | 47 |
int x, y, pattern_y, pattern_pitch, pattern_x; |
48 | 48 |
unsigned int col; |
49 | 49 |
const uint8_t *src1; |
50 |
#if DEPTH == 24 |
|
51 |
int skipleft = s->gr[0x2f] & 0x1f; |
|
52 |
#else |
|
50 | 53 |
int skipleft = (s->gr[0x2f] & 0x07) * (DEPTH / 8); |
54 |
#endif |
|
51 | 55 |
|
52 | 56 |
#if DEPTH == 8 |
53 | 57 |
pattern_pitch = 8; |
... | ... | |
100 | 104 |
unsigned int col; |
101 | 105 |
unsigned bitmask; |
102 | 106 |
unsigned index; |
107 |
#if DEPTH == 24 |
|
108 |
int dstskipleft = s->gr[0x2f] & 0x1f; |
|
109 |
int srcskipleft = dstskipleft / 3; |
|
110 |
#else |
|
103 | 111 |
int srcskipleft = s->gr[0x2f] & 0x07; |
104 | 112 |
int dstskipleft = srcskipleft * (DEPTH / 8); |
113 |
#endif |
|
105 | 114 |
|
106 | 115 |
if (s->cirrus_blt_modeext & CIRRUS_BLTMODEEXT_COLOREXPINV) { |
107 | 116 |
bits_xor = 0xff; |
... | ... | |
178 | 187 |
int x, y, bitpos, pattern_y; |
179 | 188 |
unsigned int bits, bits_xor; |
180 | 189 |
unsigned int col; |
190 |
#if DEPTH == 24 |
|
191 |
int dstskipleft = s->gr[0x2f] & 0x1f; |
|
192 |
int srcskipleft = dstskipleft / 3; |
|
193 |
#else |
|
181 | 194 |
int srcskipleft = s->gr[0x2f] & 0x07; |
182 | 195 |
int dstskipleft = srcskipleft * (DEPTH / 8); |
196 |
#endif |
|
183 | 197 |
|
184 | 198 |
if (s->cirrus_blt_modeext & CIRRUS_BLTMODEEXT_COLOREXPINV) { |
185 | 199 |
bits_xor = 0xff; |
Also available in: Unified diff