Go to the source code of this file.
|
static BOOL | bitmap_decompress1 (uint8 *output, int width, int height, uint8 *input, int size) |
|
static BOOL | bitmap_decompress2 (uint8 *output, int width, int height, uint8 *input, int size) |
|
static BOOL | bitmap_decompress3 (uint8 *output, int width, int height, uint8 *input, int size) |
|
BOOL | bitmap_decompress (uint8 *output, int width, int height, uint8 *input, int size, int Bpp) |
|
◆ BITMAP_SPEED_OVER_SIZE
#define BITMAP_SPEED_OVER_SIZE |
◆ CVAL
◆ CVAL2
#define CVAL2 |
( |
|
p, |
|
|
|
v |
|
) |
| { v = (*(p++)); v |= (*(p++)) << 8; } |
◆ MASK_UPDATE
Value:{ \
mixmask <<= 1; \
if (mixmask == 0) \
{ \
mixmask = 1; \
} \
}
GLenum GLenum GLenum input
Definition at line 59 of file bitmap.c.
◆ REPEAT
Value:{ \
UNROLL8( statement;
count--;
x++; );
\ { \
statement; \
count--; \
x++; \
} \
}
while(CdLookupNextInitialFileDirent(IrpContext, Fcb, FileContext))
GLint GLint GLsizei width
GLuint GLuint GLsizei count
GLint GLint GLint GLint GLint x
Definition at line 46 of file bitmap.c.
◆ UNROLL8
◆ bitmap_decompress()
Definition at line 1089 of file bitmap.c.
1091 #ifdef BITMAP_SPEED_OVER_SIZE GLint GLint GLsizei width
static UCHAR ULONG UCHAR ULONG UCHAR * output
static BOOL bitmap_decompress3(uint8 *output, int width, int height, uint8 *input, int size)
static BOOL bitmap_decompress1(uint8 *output, int width, int height, uint8 *input, int size)
GLint GLint GLsizei GLsizei height
GLenum GLenum GLenum input
static BOOL bitmap_decompress2(uint8 *output, int width, int height, uint8 *input, int size)
◆ bitmap_decompress1()
Definition at line 73 of file bitmap.c.
78 int lastopcode = -1, insertmix =
False, bicolour =
False;
80 uint8 colour1 = 0, colour2 = 0;
117 count = (opcode < 0xb) ? 8 : 1;
130 isfillormix = ((opcode == 2) || (opcode == 7));
138 else if (isfillormix)
147 if ((lastopcode == opcode) && !((
x ==
width) && (prevline ==
NULL)))
205 if (prevline ==
NULL)
213 if (prevline ==
NULL)
223 if (prevline ==
NULL)
233 if (prevline ==
NULL)
GLint GLint GLsizei width
static UCHAR ULONG UCHAR ULONG UCHAR * output
#define REPEAT(statement)
GLuint GLuint GLsizei count
GLint GLint GLint GLint GLint x
GLint GLint GLsizei GLsizei height
GLenum GLenum GLenum input
_In_ PATHOBJ _In_ CLIPOBJ _In_ BRUSHOBJ _In_ POINTL _In_ MIX mix
GLint GLint GLint GLint GLint GLint y
void unimpl(char *format,...)
Referenced by bitmap_decompress().
◆ bitmap_decompress2()
Definition at line 294 of file bitmap.c.
299 int lastopcode = -1, insertmix =
False, bicolour =
False;
301 uint16 colour1 = 0, colour2 = 0;
338 count = (opcode < 0xb) ? 8 : 1;
351 isfillormix = ((opcode == 2) || (opcode == 7));
359 else if (isfillormix)
368 if ((lastopcode == opcode) && !((
x ==
width) && (prevline ==
NULL)))
426 if (prevline ==
NULL)
434 if (prevline ==
NULL)
444 if (prevline ==
NULL)
454 if (prevline ==
NULL)
GLint GLint GLsizei width
static UCHAR ULONG UCHAR ULONG UCHAR * output
#define REPEAT(statement)
GLuint GLuint GLsizei count
GLint GLint GLint GLint GLint x
GLint GLint GLsizei GLsizei height
GLenum GLenum GLenum input
_In_ PATHOBJ _In_ CLIPOBJ _In_ BRUSHOBJ _In_ POINTL _In_ MIX mix
GLint GLint GLint GLint GLint GLint y
void unimpl(char *format,...)
Referenced by bitmap_decompress().
◆ bitmap_decompress3()
Definition at line 516 of file bitmap.c.
521 int lastopcode = -1, insertmix =
False, bicolour =
False;
523 uint8 colour1[3] = {0, 0, 0}, colour2[3] = {0, 0, 0};
574 isfillormix = ((opcode == 2) || (opcode == 7));
582 else if (isfillormix)
591 if ((lastopcode == opcode) && !((
x ==
width) && (prevline ==
NULL)))
655 if (prevline ==
NULL)
664 prevline[
x * 3] ^
mix[0];
666 prevline[
x * 3 + 1] ^
mix[1];
668 prevline[
x * 3 + 2] ^
mix[2];
674 if (prevline ==
NULL)
687 line[
x * 3] = prevline[
x * 3];
688 line[
x * 3 + 1] = prevline[
x * 3 + 1];
689 line[
x * 3 + 2] = prevline[
x * 3 + 2];
694 if (prevline ==
NULL)
708 prevline[
x * 3] ^
mix[0];
710 prevline[
x * 3 + 1] ^
mix[1];
712 prevline[
x * 3 + 2] ^
mix[2];
717 if (prevline ==
NULL)
744 prevline[
x * 3] ^
mix [0];
746 prevline[
x * 3 + 1] ^
mix [1];
748 prevline[
x * 3 + 2] ^
mix [2];
765 line[
x * 3] = colour2 [0];
766 line[
x * 3 + 1] = colour2 [1];
767 line[
x * 3 + 2] = colour2 [2];
783 line[
x * 3] = colour2[0];
784 line[
x * 3 + 1] = colour2[1];
785 line[
x * 3 + 2] = colour2[2];
790 line[
x * 3] = colour1[0];
791 line[
x * 3 + 1] = colour1[1];
792 line[
x * 3 + 2] = colour1[2];
802 line[
x * 3 + 1] = 0xff;
803 line[
x * 3 + 2] = 0xff;
815 unimpl(
"bitmap opcode 0x%x\n", opcode);
GLint GLint GLsizei width
static UCHAR ULONG UCHAR ULONG UCHAR * output
#define REPEAT(statement)
GLuint GLuint GLsizei count
GLint GLint GLint GLint GLint x
GLint GLint GLsizei GLsizei height
GLenum GLenum GLenum input
_In_ PATHOBJ _In_ CLIPOBJ _In_ BRUSHOBJ _In_ POINTL _In_ MIX mix
GLint GLint GLint GLint GLint GLint y
void unimpl(char *format,...)
Referenced by bitmap_decompress().