|  |  | @@ -334,15 +334,15 @@ void palette8torgb32(const uint8_t *src, uint8_t *dst, long num_pixels, const ui | 
		
	
		
			
			|  |  |  | for(i=0; i<num_pixels; i++) | 
		
	
		
			
			|  |  |  | { | 
		
	
		
			
			|  |  |  | #ifdef WORDS_BIGENDIAN | 
		
	
		
			
			|  |  |  | dst[3]= palette[ src[i]*4+2 ]; | 
		
	
		
			
			|  |  |  | dst[2]= palette[ src[i]*4+1 ]; | 
		
	
		
			
			|  |  |  | dst[1]= palette[ src[i]*4+0 ]; | 
		
	
		
			
			|  |  |  | dst[3]= palette[ src[i]*4+2 ]; | 
		
	
		
			
			|  |  |  | dst[2]= palette[ src[i]*4+1 ]; | 
		
	
		
			
			|  |  |  | dst[1]= palette[ src[i]*4+0 ]; | 
		
	
		
			
			|  |  |  | #else | 
		
	
		
			
			|  |  |  | //FIXME slow? | 
		
	
		
			
			|  |  |  | dst[0]= palette[ src[i]*4+2 ]; | 
		
	
		
			
			|  |  |  | dst[1]= palette[ src[i]*4+1 ]; | 
		
	
		
			
			|  |  |  | dst[2]= palette[ src[i]*4+0 ]; | 
		
	
		
			
			|  |  |  | //		dst[3]= 0; /* do we need this cleansing? */ | 
		
	
		
			
			|  |  |  | dst[0]= palette[ src[i]*4+2 ]; | 
		
	
		
			
			|  |  |  | dst[1]= palette[ src[i]*4+1 ]; | 
		
	
		
			
			|  |  |  | dst[2]= palette[ src[i]*4+0 ]; | 
		
	
		
			
			|  |  |  | //dst[3]= 0; /* do we need this cleansing? */ | 
		
	
		
			
			|  |  |  | #endif | 
		
	
		
			
			|  |  |  | dst+= 4; | 
		
	
		
			
			|  |  |  | } | 
		
	
	
		
			
				|  |  | @@ -354,15 +354,15 @@ void palette8tobgr32(const uint8_t *src, uint8_t *dst, long num_pixels, const ui | 
		
	
		
			
			|  |  |  | for(i=0; i<num_pixels; i++) | 
		
	
		
			
			|  |  |  | { | 
		
	
		
			
			|  |  |  | #ifdef WORDS_BIGENDIAN | 
		
	
		
			
			|  |  |  | dst[3]= palette[ src[i]*4+0 ]; | 
		
	
		
			
			|  |  |  | dst[2]= palette[ src[i]*4+1 ]; | 
		
	
		
			
			|  |  |  | dst[1]= palette[ src[i]*4+2 ]; | 
		
	
		
			
			|  |  |  | dst[3]= palette[ src[i]*4+0 ]; | 
		
	
		
			
			|  |  |  | dst[2]= palette[ src[i]*4+1 ]; | 
		
	
		
			
			|  |  |  | dst[1]= palette[ src[i]*4+2 ]; | 
		
	
		
			
			|  |  |  | #else | 
		
	
		
			
			|  |  |  | //FIXME slow? | 
		
	
		
			
			|  |  |  | dst[0]= palette[ src[i]*4+0 ]; | 
		
	
		
			
			|  |  |  | dst[1]= palette[ src[i]*4+1 ]; | 
		
	
		
			
			|  |  |  | dst[2]= palette[ src[i]*4+2 ]; | 
		
	
		
			
			|  |  |  | //		dst[3]= 0; /* do we need this cleansing? */ | 
		
	
		
			
			|  |  |  | //FIXME slow? | 
		
	
		
			
			|  |  |  | dst[0]= palette[ src[i]*4+0 ]; | 
		
	
		
			
			|  |  |  | dst[1]= palette[ src[i]*4+1 ]; | 
		
	
		
			
			|  |  |  | dst[2]= palette[ src[i]*4+2 ]; | 
		
	
		
			
			|  |  |  | //dst[3]= 0; /* do we need this cleansing? */ | 
		
	
		
			
			|  |  |  | #endif | 
		
	
		
			
			|  |  |  |  | 
		
	
		
			
			|  |  |  | dst+= 4; | 
		
	
	
		
			
				|  |  | @@ -447,14 +447,14 @@ void rgb32tobgr24(const uint8_t *src, uint8_t *dst, long src_size) | 
		
	
		
			
			|  |  |  | for(i=0; i<num_pixels; i++) | 
		
	
		
			
			|  |  |  | { | 
		
	
		
			
			|  |  |  | #ifdef WORDS_BIGENDIAN | 
		
	
		
			
			|  |  |  | /* RGB32 (= A,B,G,R) -> BGR24 (= B,G,R) */ | 
		
	
		
			
			|  |  |  | dst[3*i + 0] = src[4*i + 1]; | 
		
	
		
			
			|  |  |  | dst[3*i + 1] = src[4*i + 2]; | 
		
	
		
			
			|  |  |  | dst[3*i + 2] = src[4*i + 3]; | 
		
	
		
			
			|  |  |  | /* RGB32 (= A,B,G,R) -> BGR24 (= B,G,R) */ | 
		
	
		
			
			|  |  |  | dst[3*i + 0] = src[4*i + 1]; | 
		
	
		
			
			|  |  |  | dst[3*i + 1] = src[4*i + 2]; | 
		
	
		
			
			|  |  |  | dst[3*i + 2] = src[4*i + 3]; | 
		
	
		
			
			|  |  |  | #else | 
		
	
		
			
			|  |  |  | dst[3*i + 0] = src[4*i + 2]; | 
		
	
		
			
			|  |  |  | dst[3*i + 1] = src[4*i + 1]; | 
		
	
		
			
			|  |  |  | dst[3*i + 2] = src[4*i + 0]; | 
		
	
		
			
			|  |  |  | dst[3*i + 0] = src[4*i + 2]; | 
		
	
		
			
			|  |  |  | dst[3*i + 1] = src[4*i + 1]; | 
		
	
		
			
			|  |  |  | dst[3*i + 2] = src[4*i + 0]; | 
		
	
		
			
			|  |  |  | #endif | 
		
	
		
			
			|  |  |  | } | 
		
	
		
			
			|  |  |  | } | 
		
	
	
		
			
				|  |  | @@ -465,16 +465,16 @@ void rgb24tobgr32(const uint8_t *src, uint8_t *dst, long src_size) | 
		
	
		
			
			|  |  |  | for(i=0; 3*i<src_size; i++) | 
		
	
		
			
			|  |  |  | { | 
		
	
		
			
			|  |  |  | #ifdef WORDS_BIGENDIAN | 
		
	
		
			
			|  |  |  | /* RGB24 (= R,G,B) -> BGR32 (= A,R,G,B) */ | 
		
	
		
			
			|  |  |  | dst[4*i + 0] = 0; | 
		
	
		
			
			|  |  |  | dst[4*i + 1] = src[3*i + 0]; | 
		
	
		
			
			|  |  |  | dst[4*i + 2] = src[3*i + 1]; | 
		
	
		
			
			|  |  |  | dst[4*i + 3] = src[3*i + 2]; | 
		
	
		
			
			|  |  |  | /* RGB24 (= R,G,B) -> BGR32 (= A,R,G,B) */ | 
		
	
		
			
			|  |  |  | dst[4*i + 0] = 0; | 
		
	
		
			
			|  |  |  | dst[4*i + 1] = src[3*i + 0]; | 
		
	
		
			
			|  |  |  | dst[4*i + 2] = src[3*i + 1]; | 
		
	
		
			
			|  |  |  | dst[4*i + 3] = src[3*i + 2]; | 
		
	
		
			
			|  |  |  | #else | 
		
	
		
			
			|  |  |  | dst[4*i + 0] = src[3*i + 2]; | 
		
	
		
			
			|  |  |  | dst[4*i + 1] = src[3*i + 1]; | 
		
	
		
			
			|  |  |  | dst[4*i + 2] = src[3*i + 0]; | 
		
	
		
			
			|  |  |  | dst[4*i + 3] = 0; | 
		
	
		
			
			|  |  |  | dst[4*i + 0] = src[3*i + 2]; | 
		
	
		
			
			|  |  |  | dst[4*i + 1] = src[3*i + 1]; | 
		
	
		
			
			|  |  |  | dst[4*i + 2] = src[3*i + 0]; | 
		
	
		
			
			|  |  |  | dst[4*i + 3] = 0; | 
		
	
		
			
			|  |  |  | #endif | 
		
	
		
			
			|  |  |  | } | 
		
	
		
			
			|  |  |  | } | 
		
	
	
		
			
				|  |  | @@ -490,15 +490,15 @@ void rgb16tobgr32(const uint8_t *src, uint8_t *dst, long src_size) | 
		
	
		
			
			|  |  |  | register uint16_t bgr; | 
		
	
		
			
			|  |  |  | bgr = *s++; | 
		
	
		
			
			|  |  |  | #ifdef WORDS_BIGENDIAN | 
		
	
		
			
			|  |  |  | *d++ = 0; | 
		
	
		
			
			|  |  |  | *d++ = (bgr&0x1F)<<3; | 
		
	
		
			
			|  |  |  | *d++ = (bgr&0x7E0)>>3; | 
		
	
		
			
			|  |  |  | *d++ = (bgr&0xF800)>>8; | 
		
	
		
			
			|  |  |  | *d++ = 0; | 
		
	
		
			
			|  |  |  | *d++ = (bgr&0x1F)<<3; | 
		
	
		
			
			|  |  |  | *d++ = (bgr&0x7E0)>>3; | 
		
	
		
			
			|  |  |  | *d++ = (bgr&0xF800)>>8; | 
		
	
		
			
			|  |  |  | #else | 
		
	
		
			
			|  |  |  | *d++ = (bgr&0xF800)>>8; | 
		
	
		
			
			|  |  |  | *d++ = (bgr&0x7E0)>>3; | 
		
	
		
			
			|  |  |  | *d++ = (bgr&0x1F)<<3; | 
		
	
		
			
			|  |  |  | *d++ = 0; | 
		
	
		
			
			|  |  |  | *d++ = (bgr&0xF800)>>8; | 
		
	
		
			
			|  |  |  | *d++ = (bgr&0x7E0)>>3; | 
		
	
		
			
			|  |  |  | *d++ = (bgr&0x1F)<<3; | 
		
	
		
			
			|  |  |  | *d++ = 0; | 
		
	
		
			
			|  |  |  | #endif | 
		
	
		
			
			|  |  |  | } | 
		
	
		
			
			|  |  |  | } | 
		
	
	
		
			
				|  |  | @@ -564,15 +564,15 @@ void rgb15tobgr32(const uint8_t *src, uint8_t *dst, long src_size) | 
		
	
		
			
			|  |  |  | register uint16_t bgr; | 
		
	
		
			
			|  |  |  | bgr = *s++; | 
		
	
		
			
			|  |  |  | #ifdef WORDS_BIGENDIAN | 
		
	
		
			
			|  |  |  | *d++ = 0; | 
		
	
		
			
			|  |  |  | *d++ = (bgr&0x1F)<<3; | 
		
	
		
			
			|  |  |  | *d++ = (bgr&0x3E0)>>2; | 
		
	
		
			
			|  |  |  | *d++ = (bgr&0x7C00)>>7; | 
		
	
		
			
			|  |  |  | *d++ = 0; | 
		
	
		
			
			|  |  |  | *d++ = (bgr&0x1F)<<3; | 
		
	
		
			
			|  |  |  | *d++ = (bgr&0x3E0)>>2; | 
		
	
		
			
			|  |  |  | *d++ = (bgr&0x7C00)>>7; | 
		
	
		
			
			|  |  |  | #else | 
		
	
		
			
			|  |  |  | *d++ = (bgr&0x7C00)>>7; | 
		
	
		
			
			|  |  |  | *d++ = (bgr&0x3E0)>>2; | 
		
	
		
			
			|  |  |  | *d++ = (bgr&0x1F)<<3; | 
		
	
		
			
			|  |  |  | *d++ = 0; | 
		
	
		
			
			|  |  |  | *d++ = (bgr&0x7C00)>>7; | 
		
	
		
			
			|  |  |  | *d++ = (bgr&0x3E0)>>2; | 
		
	
		
			
			|  |  |  | *d++ = (bgr&0x1F)<<3; | 
		
	
		
			
			|  |  |  | *d++ = 0; | 
		
	
		
			
			|  |  |  | #endif | 
		
	
		
			
			|  |  |  | } | 
		
	
		
			
			|  |  |  | } | 
		
	
	
		
			
				|  |  | 
 |