22 #include "../SDL_internal.h" 41 while (info->
dst_h--) {
47 while (posy >= 0x10000L) {
52 if (posx >= 0x10000L) {
53 while (posx >= 0x10000L) {
72 Uint32 srcR, srcG, srcB, srcA;
76 while (info->
dst_h--) {
82 srcR = (
Uint8)(srcpixel >> 16); srcG = (
Uint8)(srcpixel >> 8); srcB = (
Uint8)srcpixel; srcA = 0xFF;
84 dstR = (
Uint8)(dstpixel >> 16); dstG = (
Uint8)(dstpixel >> 8); dstB = (
Uint8)dstpixel;
88 srcR = (srcR * srcA) / 255;
89 srcG = (srcG * srcA) / 255;
90 srcB = (srcB * srcA) / 255;
95 dstR = srcR + ((255 - srcA) * dstR) / 255;
96 dstG = srcG + ((255 - srcA) * dstG) / 255;
97 dstB = srcB + ((255 - srcA) * dstB) / 255;
100 dstR = srcR + dstR;
if (dstR > 255) dstR = 255;
101 dstG = srcG + dstG;
if (dstG > 255) dstG = 255;
102 dstB = srcB + dstB;
if (dstB > 255) dstB = 255;
105 dstR = (srcR * dstR) / 255;
106 dstG = (srcG * dstG) / 255;
107 dstB = (srcB * dstB) / 255;
110 dstpixel = ((
Uint32)dstR << 16) | ((
Uint32)dstG << 8) | dstB;
124 Uint32 srcR, srcG, srcB, srcA;
136 while (info->
dst_h--) {
142 while (posy >= 0x10000L) {
147 if (posx >= 0x10000L) {
148 while (posx >= 0x10000L) {
155 srcR = (
Uint8)(srcpixel >> 16); srcG = (
Uint8)(srcpixel >> 8); srcB = (
Uint8)srcpixel; srcA = 0xFF;
157 dstR = (
Uint8)(dstpixel >> 16); dstG = (
Uint8)(dstpixel >> 8); dstB = (
Uint8)dstpixel;
161 srcR = (srcR * srcA) / 255;
162 srcG = (srcG * srcA) / 255;
163 srcB = (srcB * srcA) / 255;
168 dstR = srcR + ((255 - srcA) * dstR) / 255;
169 dstG = srcG + ((255 - srcA) * dstG) / 255;
170 dstB = srcB + ((255 - srcA) * dstB) / 255;
173 dstR = srcR + dstR;
if (dstR > 255) dstR = 255;
174 dstG = srcG + dstG;
if (dstG > 255) dstG = 255;
175 dstB = srcB + dstB;
if (dstB > 255) dstB = 255;
178 dstR = (srcR * dstR) / 255;
179 dstG = (srcG * dstG) / 255;
180 dstB = (srcB * dstB) / 255;
183 dstpixel = ((
Uint32)dstR << 16) | ((
Uint32)dstG << 8) | dstB;
196 const Uint32 modulateR = info->
r;
197 const Uint32 modulateG = info->
g;
198 const Uint32 modulateB = info->
b;
202 while (info->
dst_h--) {
210 R = (R * modulateR) / 255;
211 G = (G * modulateG) / 255;
212 B = (B * modulateB) / 255;
227 const Uint32 modulateR = info->
r;
228 const Uint32 modulateG = info->
g;
229 const Uint32 modulateB = info->
b;
241 while (info->
dst_h--) {
247 while (posy >= 0x10000L) {
252 if (posx >= 0x10000L) {
253 while (posx >= 0x10000L) {
262 R = (R * modulateR) / 255;
263 G = (G * modulateG) / 255;
264 B = (B * modulateB) / 255;
279 const Uint32 modulateR = info->
r;
280 const Uint32 modulateG = info->
g;
281 const Uint32 modulateB = info->
b;
282 const Uint32 modulateA = info->
a;
284 Uint32 srcR, srcG, srcB, srcA;
288 while (info->
dst_h--) {
294 srcR = (
Uint8)(srcpixel >> 16); srcG = (
Uint8)(srcpixel >> 8); srcB = (
Uint8)srcpixel; srcA = 0xFF;
296 dstR = (
Uint8)(dstpixel >> 16); dstG = (
Uint8)(dstpixel >> 8); dstB = (
Uint8)dstpixel;
298 srcR = (srcR * modulateR) / 255;
299 srcG = (srcG * modulateG) / 255;
300 srcB = (srcB * modulateB) / 255;
303 srcA = (srcA * modulateA) / 255;
308 srcR = (srcR * srcA) / 255;
309 srcG = (srcG * srcA) / 255;
310 srcB = (srcB * srcA) / 255;
315 dstR = srcR + ((255 - srcA) * dstR) / 255;
316 dstG = srcG + ((255 - srcA) * dstG) / 255;
317 dstB = srcB + ((255 - srcA) * dstB) / 255;
320 dstR = srcR + dstR;
if (dstR > 255) dstR = 255;
321 dstG = srcG + dstG;
if (dstG > 255) dstG = 255;
322 dstB = srcB + dstB;
if (dstB > 255) dstB = 255;
325 dstR = (srcR * dstR) / 255;
326 dstG = (srcG * dstG) / 255;
327 dstB = (srcB * dstB) / 255;
330 dstpixel = ((
Uint32)dstR << 16) | ((
Uint32)dstG << 8) | dstB;
343 const Uint32 modulateR = info->
r;
344 const Uint32 modulateG = info->
g;
345 const Uint32 modulateB = info->
b;
346 const Uint32 modulateA = info->
a;
348 Uint32 srcR, srcG, srcB, srcA;
360 while (info->
dst_h--) {
366 while (posy >= 0x10000L) {
371 if (posx >= 0x10000L) {
372 while (posx >= 0x10000L) {
379 srcR = (
Uint8)(srcpixel >> 16); srcG = (
Uint8)(srcpixel >> 8); srcB = (
Uint8)srcpixel; srcA = 0xFF;
381 dstR = (
Uint8)(dstpixel >> 16); dstG = (
Uint8)(dstpixel >> 8); dstB = (
Uint8)dstpixel;
383 srcR = (srcR * modulateR) / 255;
384 srcG = (srcG * modulateG) / 255;
385 srcB = (srcB * modulateB) / 255;
388 srcA = (srcA * modulateA) / 255;
393 srcR = (srcR * srcA) / 255;
394 srcG = (srcG * srcA) / 255;
395 srcB = (srcB * srcA) / 255;
400 dstR = srcR + ((255 - srcA) * dstR) / 255;
401 dstG = srcG + ((255 - srcA) * dstG) / 255;
402 dstB = srcB + ((255 - srcA) * dstB) / 255;
405 dstR = srcR + dstR;
if (dstR > 255) dstR = 255;
406 dstG = srcG + dstG;
if (dstG > 255) dstG = 255;
407 dstB = srcB + dstB;
if (dstB > 255) dstB = 255;
410 dstR = (srcR * dstR) / 255;
411 dstG = (srcG * dstG) / 255;
412 dstB = (srcB * dstB) / 255;
415 dstpixel = ((
Uint32)dstR << 16) | ((
Uint32)dstG << 8) | dstB;
438 while (info->
dst_h--) {
444 while (posy >= 0x10000L) {
449 if (posx >= 0x10000L) {
450 while (posx >= 0x10000L) {
472 Uint32 srcR, srcG, srcB, srcA;
476 while (info->
dst_h--) {
482 srcR = (
Uint8)(srcpixel >> 16); srcG = (
Uint8)(srcpixel >> 8); srcB = (
Uint8)srcpixel; srcA = 0xFF;
484 dstB = (
Uint8)(dstpixel >> 16); dstG = (
Uint8)(dstpixel >> 8); dstR = (
Uint8)dstpixel;
488 srcR = (srcR * srcA) / 255;
489 srcG = (srcG * srcA) / 255;
490 srcB = (srcB * srcA) / 255;
495 dstR = srcR + ((255 - srcA) * dstR) / 255;
496 dstG = srcG + ((255 - srcA) * dstG) / 255;
497 dstB = srcB + ((255 - srcA) * dstB) / 255;
500 dstR = srcR + dstR;
if (dstR > 255) dstR = 255;
501 dstG = srcG + dstG;
if (dstG > 255) dstG = 255;
502 dstB = srcB + dstB;
if (dstB > 255) dstB = 255;
505 dstR = (srcR * dstR) / 255;
506 dstG = (srcG * dstG) / 255;
507 dstB = (srcB * dstB) / 255;
510 dstpixel = ((
Uint32)dstB << 16) | ((
Uint32)dstG << 8) | dstR;
524 Uint32 srcR, srcG, srcB, srcA;
536 while (info->
dst_h--) {
542 while (posy >= 0x10000L) {
547 if (posx >= 0x10000L) {
548 while (posx >= 0x10000L) {
555 srcR = (
Uint8)(srcpixel >> 16); srcG = (
Uint8)(srcpixel >> 8); srcB = (
Uint8)srcpixel; srcA = 0xFF;
557 dstB = (
Uint8)(dstpixel >> 16); dstG = (
Uint8)(dstpixel >> 8); dstR = (
Uint8)dstpixel;
561 srcR = (srcR * srcA) / 255;
562 srcG = (srcG * srcA) / 255;
563 srcB = (srcB * srcA) / 255;
568 dstR = srcR + ((255 - srcA) * dstR) / 255;
569 dstG = srcG + ((255 - srcA) * dstG) / 255;
570 dstB = srcB + ((255 - srcA) * dstB) / 255;
573 dstR = srcR + dstR;
if (dstR > 255) dstR = 255;
574 dstG = srcG + dstG;
if (dstG > 255) dstG = 255;
575 dstB = srcB + dstB;
if (dstB > 255) dstB = 255;
578 dstR = (srcR * dstR) / 255;
579 dstG = (srcG * dstG) / 255;
580 dstB = (srcB * dstB) / 255;
583 dstpixel = ((
Uint32)dstB << 16) | ((
Uint32)dstG << 8) | dstR;
596 const Uint32 modulateR = info->
r;
597 const Uint32 modulateG = info->
g;
598 const Uint32 modulateB = info->
b;
602 while (info->
dst_h--) {
610 R = (R * modulateR) / 255;
611 G = (G * modulateG) / 255;
612 B = (B * modulateB) / 255;
627 const Uint32 modulateR = info->
r;
628 const Uint32 modulateG = info->
g;
629 const Uint32 modulateB = info->
b;
641 while (info->
dst_h--) {
647 while (posy >= 0x10000L) {
652 if (posx >= 0x10000L) {
653 while (posx >= 0x10000L) {
662 R = (R * modulateR) / 255;
663 G = (G * modulateG) / 255;
664 B = (B * modulateB) / 255;
679 const Uint32 modulateR = info->
r;
680 const Uint32 modulateG = info->
g;
681 const Uint32 modulateB = info->
b;
682 const Uint32 modulateA = info->
a;
684 Uint32 srcR, srcG, srcB, srcA;
688 while (info->
dst_h--) {
694 srcR = (
Uint8)(srcpixel >> 16); srcG = (
Uint8)(srcpixel >> 8); srcB = (
Uint8)srcpixel; srcA = 0xFF;
696 dstB = (
Uint8)(dstpixel >> 16); dstG = (
Uint8)(dstpixel >> 8); dstR = (
Uint8)dstpixel;
698 srcR = (srcR * modulateR) / 255;
699 srcG = (srcG * modulateG) / 255;
700 srcB = (srcB * modulateB) / 255;
703 srcA = (srcA * modulateA) / 255;
708 srcR = (srcR * srcA) / 255;
709 srcG = (srcG * srcA) / 255;
710 srcB = (srcB * srcA) / 255;
715 dstR = srcR + ((255 - srcA) * dstR) / 255;
716 dstG = srcG + ((255 - srcA) * dstG) / 255;
717 dstB = srcB + ((255 - srcA) * dstB) / 255;
720 dstR = srcR + dstR;
if (dstR > 255) dstR = 255;
721 dstG = srcG + dstG;
if (dstG > 255) dstG = 255;
722 dstB = srcB + dstB;
if (dstB > 255) dstB = 255;
725 dstR = (srcR * dstR) / 255;
726 dstG = (srcG * dstG) / 255;
727 dstB = (srcB * dstB) / 255;
730 dstpixel = ((
Uint32)dstB << 16) | ((
Uint32)dstG << 8) | dstR;
743 const Uint32 modulateR = info->
r;
744 const Uint32 modulateG = info->
g;
745 const Uint32 modulateB = info->
b;
746 const Uint32 modulateA = info->
a;
748 Uint32 srcR, srcG, srcB, srcA;
760 while (info->
dst_h--) {
766 while (posy >= 0x10000L) {
771 if (posx >= 0x10000L) {
772 while (posx >= 0x10000L) {
779 srcR = (
Uint8)(srcpixel >> 16); srcG = (
Uint8)(srcpixel >> 8); srcB = (
Uint8)srcpixel; srcA = 0xFF;
781 dstB = (
Uint8)(dstpixel >> 16); dstG = (
Uint8)(dstpixel >> 8); dstR = (
Uint8)dstpixel;
783 srcR = (srcR * modulateR) / 255;
784 srcG = (srcG * modulateG) / 255;
785 srcB = (srcB * modulateB) / 255;
788 srcA = (srcA * modulateA) / 255;
793 srcR = (srcR * srcA) / 255;
794 srcG = (srcG * srcA) / 255;
795 srcB = (srcB * srcA) / 255;
800 dstR = srcR + ((255 - srcA) * dstR) / 255;
801 dstG = srcG + ((255 - srcA) * dstG) / 255;
802 dstB = srcB + ((255 - srcA) * dstB) / 255;
805 dstR = srcR + dstR;
if (dstR > 255) dstR = 255;
806 dstG = srcG + dstG;
if (dstG > 255) dstG = 255;
807 dstB = srcB + dstB;
if (dstB > 255) dstB = 255;
810 dstR = (srcR * dstR) / 255;
811 dstG = (srcG * dstG) / 255;
812 dstB = (srcB * dstB) / 255;
815 dstpixel = ((
Uint32)dstB << 16) | ((
Uint32)dstG << 8) | dstR;
838 while (info->
dst_h--) {
844 while (posy >= 0x10000L) {
849 if (posx >= 0x10000L) {
850 while (posx >= 0x10000L) {
857 R = (
Uint8)(pixel >> 16); G = (
Uint8)(pixel >> 8); B = (
Uint8)pixel; A = 0xFF;
872 Uint32 srcR, srcG, srcB, srcA;
874 Uint32 dstR, dstG, dstB, dstA;
876 while (info->
dst_h--) {
882 srcR = (
Uint8)(srcpixel >> 16); srcG = (
Uint8)(srcpixel >> 8); srcB = (
Uint8)srcpixel; srcA = 0xFF;
884 dstR = (
Uint8)(dstpixel >> 16); dstG = (
Uint8)(dstpixel >> 8); dstB = (
Uint8)dstpixel; dstA = (
Uint8)(dstpixel >> 24);
888 srcR = (srcR * srcA) / 255;
889 srcG = (srcG * srcA) / 255;
890 srcB = (srcB * srcA) / 255;
895 dstR = srcR + ((255 - srcA) * dstR) / 255;
896 dstG = srcG + ((255 - srcA) * dstG) / 255;
897 dstB = srcB + ((255 - srcA) * dstB) / 255;
898 dstA = srcA + ((255 - srcA) * dstA) / 255;
901 dstR = srcR + dstR;
if (dstR > 255) dstR = 255;
902 dstG = srcG + dstG;
if (dstG > 255) dstG = 255;
903 dstB = srcB + dstB;
if (dstB > 255) dstB = 255;
906 dstR = (srcR * dstR) / 255;
907 dstG = (srcG * dstG) / 255;
908 dstB = (srcB * dstB) / 255;
925 Uint32 srcR, srcG, srcB, srcA;
927 Uint32 dstR, dstG, dstB, dstA;
937 while (info->
dst_h--) {
943 while (posy >= 0x10000L) {
948 if (posx >= 0x10000L) {
949 while (posx >= 0x10000L) {
956 srcR = (
Uint8)(srcpixel >> 16); srcG = (
Uint8)(srcpixel >> 8); srcB = (
Uint8)srcpixel; srcA = 0xFF;
958 dstR = (
Uint8)(dstpixel >> 16); dstG = (
Uint8)(dstpixel >> 8); dstB = (
Uint8)dstpixel; dstA = (
Uint8)(dstpixel >> 24);
962 srcR = (srcR * srcA) / 255;
963 srcG = (srcG * srcA) / 255;
964 srcB = (srcB * srcA) / 255;
969 dstR = srcR + ((255 - srcA) * dstR) / 255;
970 dstG = srcG + ((255 - srcA) * dstG) / 255;
971 dstB = srcB + ((255 - srcA) * dstB) / 255;
972 dstA = srcA + ((255 - srcA) * dstA) / 255;
975 dstR = srcR + dstR;
if (dstR > 255) dstR = 255;
976 dstG = srcG + dstG;
if (dstG > 255) dstG = 255;
977 dstB = srcB + dstB;
if (dstB > 255) dstB = 255;
980 dstR = (srcR * dstR) / 255;
981 dstG = (srcG * dstG) / 255;
982 dstB = (srcB * dstB) / 255;
998 const Uint32 modulateR = info->
r;
999 const Uint32 modulateG = info->
g;
1000 const Uint32 modulateB = info->
b;
1001 const Uint32 modulateA = info->
a;
1005 while (info->
dst_h--) {
1011 R = (
Uint8)(pixel >> 16); G = (
Uint8)(pixel >> 8); B = (
Uint8)pixel; A = 0xFF;
1013 R = (R * modulateR) / 255;
1014 G = (G * modulateG) / 255;
1015 B = (B * modulateB) / 255;
1018 A = (A * modulateA) / 255;
1033 const Uint32 modulateR = info->
r;
1034 const Uint32 modulateG = info->
g;
1035 const Uint32 modulateB = info->
b;
1036 const Uint32 modulateA = info->
a;
1048 while (info->
dst_h--) {
1054 while (posy >= 0x10000L) {
1059 if (posx >= 0x10000L) {
1060 while (posx >= 0x10000L) {
1067 R = (
Uint8)(pixel >> 16); G = (
Uint8)(pixel >> 8); B = (
Uint8)pixel; A = 0xFF;
1069 R = (R * modulateR) / 255;
1070 G = (G * modulateG) / 255;
1071 B = (B * modulateB) / 255;
1074 A = (A * modulateA) / 255;
1089 const Uint32 modulateR = info->
r;
1090 const Uint32 modulateG = info->
g;
1091 const Uint32 modulateB = info->
b;
1092 const Uint32 modulateA = info->
a;
1094 Uint32 srcR, srcG, srcB, srcA;
1096 Uint32 dstR, dstG, dstB, dstA;
1098 while (info->
dst_h--) {
1104 srcR = (
Uint8)(srcpixel >> 16); srcG = (
Uint8)(srcpixel >> 8); srcB = (
Uint8)srcpixel; srcA = 0xFF;
1106 dstR = (
Uint8)(dstpixel >> 16); dstG = (
Uint8)(dstpixel >> 8); dstB = (
Uint8)dstpixel; dstA = (
Uint8)(dstpixel >> 24);
1108 srcR = (srcR * modulateR) / 255;
1109 srcG = (srcG * modulateG) / 255;
1110 srcB = (srcB * modulateB) / 255;
1113 srcA = (srcA * modulateA) / 255;
1118 srcR = (srcR * srcA) / 255;
1119 srcG = (srcG * srcA) / 255;
1120 srcB = (srcB * srcA) / 255;
1125 dstR = srcR + ((255 - srcA) * dstR) / 255;
1126 dstG = srcG + ((255 - srcA) * dstG) / 255;
1127 dstB = srcB + ((255 - srcA) * dstB) / 255;
1128 dstA = srcA + ((255 - srcA) * dstA) / 255;
1131 dstR = srcR + dstR;
if (dstR > 255) dstR = 255;
1132 dstG = srcG + dstG;
if (dstG > 255) dstG = 255;
1133 dstB = srcB + dstB;
if (dstB > 255) dstB = 255;
1136 dstR = (srcR * dstR) / 255;
1137 dstG = (srcG * dstG) / 255;
1138 dstB = (srcB * dstB) / 255;
1154 const Uint32 modulateR = info->
r;
1155 const Uint32 modulateG = info->
g;
1156 const Uint32 modulateB = info->
b;
1157 const Uint32 modulateA = info->
a;
1159 Uint32 srcR, srcG, srcB, srcA;
1161 Uint32 dstR, dstG, dstB, dstA;
1171 while (info->
dst_h--) {
1177 while (posy >= 0x10000L) {
1182 if (posx >= 0x10000L) {
1183 while (posx >= 0x10000L) {
1190 srcR = (
Uint8)(srcpixel >> 16); srcG = (
Uint8)(srcpixel >> 8); srcB = (
Uint8)srcpixel; srcA = 0xFF;
1192 dstR = (
Uint8)(dstpixel >> 16); dstG = (
Uint8)(dstpixel >> 8); dstB = (
Uint8)dstpixel; dstA = (
Uint8)(dstpixel >> 24);
1194 srcR = (srcR * modulateR) / 255;
1195 srcG = (srcG * modulateG) / 255;
1196 srcB = (srcB * modulateB) / 255;
1199 srcA = (srcA * modulateA) / 255;
1204 srcR = (srcR * srcA) / 255;
1205 srcG = (srcG * srcA) / 255;
1206 srcB = (srcB * srcA) / 255;
1211 dstR = srcR + ((255 - srcA) * dstR) / 255;
1212 dstG = srcG + ((255 - srcA) * dstG) / 255;
1213 dstB = srcB + ((255 - srcA) * dstB) / 255;
1214 dstA = srcA + ((255 - srcA) * dstA) / 255;
1217 dstR = srcR + dstR;
if (dstR > 255) dstR = 255;
1218 dstG = srcG + dstG;
if (dstG > 255) dstG = 255;
1219 dstB = srcB + dstB;
if (dstB > 255) dstB = 255;
1222 dstR = (srcR * dstR) / 255;
1223 dstG = (srcG * dstG) / 255;
1224 dstB = (srcB * dstB) / 255;
1250 while (info->
dst_h--) {
1256 while (posy >= 0x10000L) {
1261 if (posx >= 0x10000L) {
1262 while (posx >= 0x10000L) {
1284 Uint32 srcR, srcG, srcB, srcA;
1288 while (info->
dst_h--) {
1294 srcB = (
Uint8)(srcpixel >> 16); srcG = (
Uint8)(srcpixel >> 8); srcR = (
Uint8)srcpixel; srcA = 0xFF;
1296 dstR = (
Uint8)(dstpixel >> 16); dstG = (
Uint8)(dstpixel >> 8); dstB = (
Uint8)dstpixel;
1300 srcR = (srcR * srcA) / 255;
1301 srcG = (srcG * srcA) / 255;
1302 srcB = (srcB * srcA) / 255;
1307 dstR = srcR + ((255 - srcA) * dstR) / 255;
1308 dstG = srcG + ((255 - srcA) * dstG) / 255;
1309 dstB = srcB + ((255 - srcA) * dstB) / 255;
1312 dstR = srcR + dstR;
if (dstR > 255) dstR = 255;
1313 dstG = srcG + dstG;
if (dstG > 255) dstG = 255;
1314 dstB = srcB + dstB;
if (dstB > 255) dstB = 255;
1317 dstR = (srcR * dstR) / 255;
1318 dstG = (srcG * dstG) / 255;
1319 dstB = (srcB * dstB) / 255;
1322 dstpixel = ((
Uint32)dstR << 16) | ((
Uint32)dstG << 8) | dstB;
1336 Uint32 srcR, srcG, srcB, srcA;
1348 while (info->
dst_h--) {
1354 while (posy >= 0x10000L) {
1359 if (posx >= 0x10000L) {
1360 while (posx >= 0x10000L) {
1367 srcB = (
Uint8)(srcpixel >> 16); srcG = (
Uint8)(srcpixel >> 8); srcR = (
Uint8)srcpixel; srcA = 0xFF;
1369 dstR = (
Uint8)(dstpixel >> 16); dstG = (
Uint8)(dstpixel >> 8); dstB = (
Uint8)dstpixel;
1373 srcR = (srcR * srcA) / 255;
1374 srcG = (srcG * srcA) / 255;
1375 srcB = (srcB * srcA) / 255;
1380 dstR = srcR + ((255 - srcA) * dstR) / 255;
1381 dstG = srcG + ((255 - srcA) * dstG) / 255;
1382 dstB = srcB + ((255 - srcA) * dstB) / 255;
1385 dstR = srcR + dstR;
if (dstR > 255) dstR = 255;
1386 dstG = srcG + dstG;
if (dstG > 255) dstG = 255;
1387 dstB = srcB + dstB;
if (dstB > 255) dstB = 255;
1390 dstR = (srcR * dstR) / 255;
1391 dstG = (srcG * dstG) / 255;
1392 dstB = (srcB * dstB) / 255;
1395 dstpixel = ((
Uint32)dstR << 16) | ((
Uint32)dstG << 8) | dstB;
1408 const Uint32 modulateR = info->
r;
1409 const Uint32 modulateG = info->
g;
1410 const Uint32 modulateB = info->
b;
1414 while (info->
dst_h--) {
1422 R = (R * modulateR) / 255;
1423 G = (G * modulateG) / 255;
1424 B = (B * modulateB) / 255;
1439 const Uint32 modulateR = info->
r;
1440 const Uint32 modulateG = info->
g;
1441 const Uint32 modulateB = info->
b;
1453 while (info->
dst_h--) {
1459 while (posy >= 0x10000L) {
1464 if (posx >= 0x10000L) {
1465 while (posx >= 0x10000L) {
1474 R = (R * modulateR) / 255;
1475 G = (G * modulateG) / 255;
1476 B = (B * modulateB) / 255;
1491 const Uint32 modulateR = info->
r;
1492 const Uint32 modulateG = info->
g;
1493 const Uint32 modulateB = info->
b;
1494 const Uint32 modulateA = info->
a;
1496 Uint32 srcR, srcG, srcB, srcA;
1500 while (info->
dst_h--) {
1506 srcB = (
Uint8)(srcpixel >> 16); srcG = (
Uint8)(srcpixel >> 8); srcR = (
Uint8)srcpixel; srcA = 0xFF;
1508 dstR = (
Uint8)(dstpixel >> 16); dstG = (
Uint8)(dstpixel >> 8); dstB = (
Uint8)dstpixel;
1510 srcR = (srcR * modulateR) / 255;
1511 srcG = (srcG * modulateG) / 255;
1512 srcB = (srcB * modulateB) / 255;
1515 srcA = (srcA * modulateA) / 255;
1520 srcR = (srcR * srcA) / 255;
1521 srcG = (srcG * srcA) / 255;
1522 srcB = (srcB * srcA) / 255;
1527 dstR = srcR + ((255 - srcA) * dstR) / 255;
1528 dstG = srcG + ((255 - srcA) * dstG) / 255;
1529 dstB = srcB + ((255 - srcA) * dstB) / 255;
1532 dstR = srcR + dstR;
if (dstR > 255) dstR = 255;
1533 dstG = srcG + dstG;
if (dstG > 255) dstG = 255;
1534 dstB = srcB + dstB;
if (dstB > 255) dstB = 255;
1537 dstR = (srcR * dstR) / 255;
1538 dstG = (srcG * dstG) / 255;
1539 dstB = (srcB * dstB) / 255;
1542 dstpixel = ((
Uint32)dstR << 16) | ((
Uint32)dstG << 8) | dstB;
1555 const Uint32 modulateR = info->
r;
1556 const Uint32 modulateG = info->
g;
1557 const Uint32 modulateB = info->
b;
1558 const Uint32 modulateA = info->
a;
1560 Uint32 srcR, srcG, srcB, srcA;
1572 while (info->
dst_h--) {
1578 while (posy >= 0x10000L) {
1583 if (posx >= 0x10000L) {
1584 while (posx >= 0x10000L) {
1591 srcB = (
Uint8)(srcpixel >> 16); srcG = (
Uint8)(srcpixel >> 8); srcR = (
Uint8)srcpixel; srcA = 0xFF;
1593 dstR = (
Uint8)(dstpixel >> 16); dstG = (
Uint8)(dstpixel >> 8); dstB = (
Uint8)dstpixel;
1595 srcR = (srcR * modulateR) / 255;
1596 srcG = (srcG * modulateG) / 255;
1597 srcB = (srcB * modulateB) / 255;
1600 srcA = (srcA * modulateA) / 255;
1605 srcR = (srcR * srcA) / 255;
1606 srcG = (srcG * srcA) / 255;
1607 srcB = (srcB * srcA) / 255;
1612 dstR = srcR + ((255 - srcA) * dstR) / 255;
1613 dstG = srcG + ((255 - srcA) * dstG) / 255;
1614 dstB = srcB + ((255 - srcA) * dstB) / 255;
1617 dstR = srcR + dstR;
if (dstR > 255) dstR = 255;
1618 dstG = srcG + dstG;
if (dstG > 255) dstG = 255;
1619 dstB = srcB + dstB;
if (dstB > 255) dstB = 255;
1622 dstR = (srcR * dstR) / 255;
1623 dstG = (srcG * dstG) / 255;
1624 dstB = (srcB * dstB) / 255;
1627 dstpixel = ((
Uint32)dstR << 16) | ((
Uint32)dstG << 8) | dstB;
1648 while (info->
dst_h--) {
1654 while (posy >= 0x10000L) {
1659 if (posx >= 0x10000L) {
1660 while (posx >= 0x10000L) {
1679 Uint32 srcR, srcG, srcB, srcA;
1683 while (info->
dst_h--) {
1689 srcB = (
Uint8)(srcpixel >> 16); srcG = (
Uint8)(srcpixel >> 8); srcR = (
Uint8)srcpixel; srcA = 0xFF;
1691 dstB = (
Uint8)(dstpixel >> 16); dstG = (
Uint8)(dstpixel >> 8); dstR = (
Uint8)dstpixel;
1695 srcR = (srcR * srcA) / 255;
1696 srcG = (srcG * srcA) / 255;
1697 srcB = (srcB * srcA) / 255;
1702 dstR = srcR + ((255 - srcA) * dstR) / 255;
1703 dstG = srcG + ((255 - srcA) * dstG) / 255;
1704 dstB = srcB + ((255 - srcA) * dstB) / 255;
1707 dstR = srcR + dstR;
if (dstR > 255) dstR = 255;
1708 dstG = srcG + dstG;
if (dstG > 255) dstG = 255;
1709 dstB = srcB + dstB;
if (dstB > 255) dstB = 255;
1712 dstR = (srcR * dstR) / 255;
1713 dstG = (srcG * dstG) / 255;
1714 dstB = (srcB * dstB) / 255;
1717 dstpixel = ((
Uint32)dstB << 16) | ((
Uint32)dstG << 8) | dstR;
1731 Uint32 srcR, srcG, srcB, srcA;
1743 while (info->
dst_h--) {
1749 while (posy >= 0x10000L) {
1754 if (posx >= 0x10000L) {
1755 while (posx >= 0x10000L) {
1762 srcB = (
Uint8)(srcpixel >> 16); srcG = (
Uint8)(srcpixel >> 8); srcR = (
Uint8)srcpixel; srcA = 0xFF;
1764 dstB = (
Uint8)(dstpixel >> 16); dstG = (
Uint8)(dstpixel >> 8); dstR = (
Uint8)dstpixel;
1768 srcR = (srcR * srcA) / 255;
1769 srcG = (srcG * srcA) / 255;
1770 srcB = (srcB * srcA) / 255;
1775 dstR = srcR + ((255 - srcA) * dstR) / 255;
1776 dstG = srcG + ((255 - srcA) * dstG) / 255;
1777 dstB = srcB + ((255 - srcA) * dstB) / 255;
1780 dstR = srcR + dstR;
if (dstR > 255) dstR = 255;
1781 dstG = srcG + dstG;
if (dstG > 255) dstG = 255;
1782 dstB = srcB + dstB;
if (dstB > 255) dstB = 255;
1785 dstR = (srcR * dstR) / 255;
1786 dstG = (srcG * dstG) / 255;
1787 dstB = (srcB * dstB) / 255;
1790 dstpixel = ((
Uint32)dstB << 16) | ((
Uint32)dstG << 8) | dstR;
1803 const Uint32 modulateR = info->
r;
1804 const Uint32 modulateG = info->
g;
1805 const Uint32 modulateB = info->
b;
1809 while (info->
dst_h--) {
1817 R = (R * modulateR) / 255;
1818 G = (G * modulateG) / 255;
1819 B = (B * modulateB) / 255;
1834 const Uint32 modulateR = info->
r;
1835 const Uint32 modulateG = info->
g;
1836 const Uint32 modulateB = info->
b;
1848 while (info->
dst_h--) {
1854 while (posy >= 0x10000L) {
1859 if (posx >= 0x10000L) {
1860 while (posx >= 0x10000L) {
1869 R = (R * modulateR) / 255;
1870 G = (G * modulateG) / 255;
1871 B = (B * modulateB) / 255;
1886 const Uint32 modulateR = info->
r;
1887 const Uint32 modulateG = info->
g;
1888 const Uint32 modulateB = info->
b;
1889 const Uint32 modulateA = info->
a;
1891 Uint32 srcR, srcG, srcB, srcA;
1895 while (info->
dst_h--) {
1901 srcB = (
Uint8)(srcpixel >> 16); srcG = (
Uint8)(srcpixel >> 8); srcR = (
Uint8)srcpixel; srcA = 0xFF;
1903 dstB = (
Uint8)(dstpixel >> 16); dstG = (
Uint8)(dstpixel >> 8); dstR = (
Uint8)dstpixel;
1905 srcR = (srcR * modulateR) / 255;
1906 srcG = (srcG * modulateG) / 255;
1907 srcB = (srcB * modulateB) / 255;
1910 srcA = (srcA * modulateA) / 255;
1915 srcR = (srcR * srcA) / 255;
1916 srcG = (srcG * srcA) / 255;
1917 srcB = (srcB * srcA) / 255;
1922 dstR = srcR + ((255 - srcA) * dstR) / 255;
1923 dstG = srcG + ((255 - srcA) * dstG) / 255;
1924 dstB = srcB + ((255 - srcA) * dstB) / 255;
1927 dstR = srcR + dstR;
if (dstR > 255) dstR = 255;
1928 dstG = srcG + dstG;
if (dstG > 255) dstG = 255;
1929 dstB = srcB + dstB;
if (dstB > 255) dstB = 255;
1932 dstR = (srcR * dstR) / 255;
1933 dstG = (srcG * dstG) / 255;
1934 dstB = (srcB * dstB) / 255;
1937 dstpixel = ((
Uint32)dstB << 16) | ((
Uint32)dstG << 8) | dstR;
1950 const Uint32 modulateR = info->
r;
1951 const Uint32 modulateG = info->
g;
1952 const Uint32 modulateB = info->
b;
1953 const Uint32 modulateA = info->
a;
1955 Uint32 srcR, srcG, srcB, srcA;
1967 while (info->
dst_h--) {
1973 while (posy >= 0x10000L) {
1978 if (posx >= 0x10000L) {
1979 while (posx >= 0x10000L) {
1986 srcB = (
Uint8)(srcpixel >> 16); srcG = (
Uint8)(srcpixel >> 8); srcR = (
Uint8)srcpixel; srcA = 0xFF;
1988 dstB = (
Uint8)(dstpixel >> 16); dstG = (
Uint8)(dstpixel >> 8); dstR = (
Uint8)dstpixel;
1990 srcR = (srcR * modulateR) / 255;
1991 srcG = (srcG * modulateG) / 255;
1992 srcB = (srcB * modulateB) / 255;
1995 srcA = (srcA * modulateA) / 255;
2000 srcR = (srcR * srcA) / 255;
2001 srcG = (srcG * srcA) / 255;
2002 srcB = (srcB * srcA) / 255;
2007 dstR = srcR + ((255 - srcA) * dstR) / 255;
2008 dstG = srcG + ((255 - srcA) * dstG) / 255;
2009 dstB = srcB + ((255 - srcA) * dstB) / 255;
2012 dstR = srcR + dstR;
if (dstR > 255) dstR = 255;
2013 dstG = srcG + dstG;
if (dstG > 255) dstG = 255;
2014 dstB = srcB + dstB;
if (dstB > 255) dstB = 255;
2017 dstR = (srcR * dstR) / 255;
2018 dstG = (srcG * dstG) / 255;
2019 dstB = (srcB * dstB) / 255;
2022 dstpixel = ((
Uint32)dstB << 16) | ((
Uint32)dstG << 8) | dstR;
2045 while (info->
dst_h--) {
2051 while (posy >= 0x10000L) {
2056 if (posx >= 0x10000L) {
2057 while (posx >= 0x10000L) {
2064 B = (
Uint8)(pixel >> 16); G = (
Uint8)(pixel >> 8); R = (
Uint8)pixel; A = 0xFF;
2079 Uint32 srcR, srcG, srcB, srcA;
2081 Uint32 dstR, dstG, dstB, dstA;
2083 while (info->
dst_h--) {
2089 srcB = (
Uint8)(srcpixel >> 16); srcG = (
Uint8)(srcpixel >> 8); srcR = (
Uint8)srcpixel; srcA = 0xFF;
2091 dstR = (
Uint8)(dstpixel >> 16); dstG = (
Uint8)(dstpixel >> 8); dstB = (
Uint8)dstpixel; dstA = (
Uint8)(dstpixel >> 24);
2095 srcR = (srcR * srcA) / 255;
2096 srcG = (srcG * srcA) / 255;
2097 srcB = (srcB * srcA) / 255;
2102 dstR = srcR + ((255 - srcA) * dstR) / 255;
2103 dstG = srcG + ((255 - srcA) * dstG) / 255;
2104 dstB = srcB + ((255 - srcA) * dstB) / 255;
2105 dstA = srcA + ((255 - srcA) * dstA) / 255;
2108 dstR = srcR + dstR;
if (dstR > 255) dstR = 255;
2109 dstG = srcG + dstG;
if (dstG > 255) dstG = 255;
2110 dstB = srcB + dstB;
if (dstB > 255) dstB = 255;
2113 dstR = (srcR * dstR) / 255;
2114 dstG = (srcG * dstG) / 255;
2115 dstB = (srcB * dstB) / 255;
2132 Uint32 srcR, srcG, srcB, srcA;
2134 Uint32 dstR, dstG, dstB, dstA;
2144 while (info->
dst_h--) {
2150 while (posy >= 0x10000L) {
2155 if (posx >= 0x10000L) {
2156 while (posx >= 0x10000L) {
2163 srcB = (
Uint8)(srcpixel >> 16); srcG = (
Uint8)(srcpixel >> 8); srcR = (
Uint8)srcpixel; srcA = 0xFF;
2165 dstR = (
Uint8)(dstpixel >> 16); dstG = (
Uint8)(dstpixel >> 8); dstB = (
Uint8)dstpixel; dstA = (
Uint8)(dstpixel >> 24);
2169 srcR = (srcR * srcA) / 255;
2170 srcG = (srcG * srcA) / 255;
2171 srcB = (srcB * srcA) / 255;
2176 dstR = srcR + ((255 - srcA) * dstR) / 255;
2177 dstG = srcG + ((255 - srcA) * dstG) / 255;
2178 dstB = srcB + ((255 - srcA) * dstB) / 255;
2179 dstA = srcA + ((255 - srcA) * dstA) / 255;
2182 dstR = srcR + dstR;
if (dstR > 255) dstR = 255;
2183 dstG = srcG + dstG;
if (dstG > 255) dstG = 255;
2184 dstB = srcB + dstB;
if (dstB > 255) dstB = 255;
2187 dstR = (srcR * dstR) / 255;
2188 dstG = (srcG * dstG) / 255;
2189 dstB = (srcB * dstB) / 255;
2205 const Uint32 modulateR = info->
r;
2206 const Uint32 modulateG = info->
g;
2207 const Uint32 modulateB = info->
b;
2208 const Uint32 modulateA = info->
a;
2212 while (info->
dst_h--) {
2218 B = (
Uint8)(pixel >> 16); G = (
Uint8)(pixel >> 8); R = (
Uint8)pixel; A = 0xFF;
2220 R = (R * modulateR) / 255;
2221 G = (G * modulateG) / 255;
2222 B = (B * modulateB) / 255;
2225 A = (A * modulateA) / 255;
2240 const Uint32 modulateR = info->
r;
2241 const Uint32 modulateG = info->
g;
2242 const Uint32 modulateB = info->
b;
2243 const Uint32 modulateA = info->
a;
2255 while (info->
dst_h--) {
2261 while (posy >= 0x10000L) {
2266 if (posx >= 0x10000L) {
2267 while (posx >= 0x10000L) {
2274 B = (
Uint8)(pixel >> 16); G = (
Uint8)(pixel >> 8); R = (
Uint8)pixel; A = 0xFF;
2276 R = (R * modulateR) / 255;
2277 G = (G * modulateG) / 255;
2278 B = (B * modulateB) / 255;
2281 A = (A * modulateA) / 255;
2296 const Uint32 modulateR = info->
r;
2297 const Uint32 modulateG = info->
g;
2298 const Uint32 modulateB = info->
b;
2299 const Uint32 modulateA = info->
a;
2301 Uint32 srcR, srcG, srcB, srcA;
2303 Uint32 dstR, dstG, dstB, dstA;
2305 while (info->
dst_h--) {
2311 srcB = (
Uint8)(srcpixel >> 16); srcG = (
Uint8)(srcpixel >> 8); srcR = (
Uint8)srcpixel; srcA = 0xFF;
2313 dstR = (
Uint8)(dstpixel >> 16); dstG = (
Uint8)(dstpixel >> 8); dstB = (
Uint8)dstpixel; dstA = (
Uint8)(dstpixel >> 24);
2315 srcR = (srcR * modulateR) / 255;
2316 srcG = (srcG * modulateG) / 255;
2317 srcB = (srcB * modulateB) / 255;
2320 srcA = (srcA * modulateA) / 255;
2325 srcR = (srcR * srcA) / 255;
2326 srcG = (srcG * srcA) / 255;
2327 srcB = (srcB * srcA) / 255;
2332 dstR = srcR + ((255 - srcA) * dstR) / 255;
2333 dstG = srcG + ((255 - srcA) * dstG) / 255;
2334 dstB = srcB + ((255 - srcA) * dstB) / 255;
2335 dstA = srcA + ((255 - srcA) * dstA) / 255;
2338 dstR = srcR + dstR;
if (dstR > 255) dstR = 255;
2339 dstG = srcG + dstG;
if (dstG > 255) dstG = 255;
2340 dstB = srcB + dstB;
if (dstB > 255) dstB = 255;
2343 dstR = (srcR * dstR) / 255;
2344 dstG = (srcG * dstG) / 255;
2345 dstB = (srcB * dstB) / 255;
2361 const Uint32 modulateR = info->
r;
2362 const Uint32 modulateG = info->
g;
2363 const Uint32 modulateB = info->
b;
2364 const Uint32 modulateA = info->
a;
2366 Uint32 srcR, srcG, srcB, srcA;
2368 Uint32 dstR, dstG, dstB, dstA;
2378 while (info->
dst_h--) {
2384 while (posy >= 0x10000L) {
2389 if (posx >= 0x10000L) {
2390 while (posx >= 0x10000L) {
2397 srcB = (
Uint8)(srcpixel >> 16); srcG = (
Uint8)(srcpixel >> 8); srcR = (
Uint8)srcpixel; srcA = 0xFF;
2399 dstR = (
Uint8)(dstpixel >> 16); dstG = (
Uint8)(dstpixel >> 8); dstB = (
Uint8)dstpixel; dstA = (
Uint8)(dstpixel >> 24);
2401 srcR = (srcR * modulateR) / 255;
2402 srcG = (srcG * modulateG) / 255;
2403 srcB = (srcB * modulateB) / 255;
2406 srcA = (srcA * modulateA) / 255;
2411 srcR = (srcR * srcA) / 255;
2412 srcG = (srcG * srcA) / 255;
2413 srcB = (srcB * srcA) / 255;
2418 dstR = srcR + ((255 - srcA) * dstR) / 255;
2419 dstG = srcG + ((255 - srcA) * dstG) / 255;
2420 dstB = srcB + ((255 - srcA) * dstB) / 255;
2421 dstA = srcA + ((255 - srcA) * dstA) / 255;
2424 dstR = srcR + dstR;
if (dstR > 255) dstR = 255;
2425 dstG = srcG + dstG;
if (dstG > 255) dstG = 255;
2426 dstB = srcB + dstB;
if (dstB > 255) dstB = 255;
2429 dstR = (srcR * dstR) / 255;
2430 dstG = (srcG * dstG) / 255;
2431 dstB = (srcB * dstB) / 255;
2457 while (info->
dst_h--) {
2463 while (posy >= 0x10000L) {
2468 if (posx >= 0x10000L) {
2469 while (posx >= 0x10000L) {
2491 Uint32 srcR, srcG, srcB, srcA;
2495 while (info->
dst_h--) {
2501 srcR = (
Uint8)(srcpixel >> 16); srcG = (
Uint8)(srcpixel >> 8); srcB = (
Uint8)srcpixel; srcA = (
Uint8)(srcpixel >> 24);
2503 dstR = (
Uint8)(dstpixel >> 16); dstG = (
Uint8)(dstpixel >> 8); dstB = (
Uint8)dstpixel;
2507 srcR = (srcR * srcA) / 255;
2508 srcG = (srcG * srcA) / 255;
2509 srcB = (srcB * srcA) / 255;
2514 dstR = srcR + ((255 - srcA) * dstR) / 255;
2515 dstG = srcG + ((255 - srcA) * dstG) / 255;
2516 dstB = srcB + ((255 - srcA) * dstB) / 255;
2519 dstR = srcR + dstR;
if (dstR > 255) dstR = 255;
2520 dstG = srcG + dstG;
if (dstG > 255) dstG = 255;
2521 dstB = srcB + dstB;
if (dstB > 255) dstB = 255;
2524 dstR = (srcR * dstR) / 255;
2525 dstG = (srcG * dstG) / 255;
2526 dstB = (srcB * dstB) / 255;
2529 dstpixel = ((
Uint32)dstR << 16) | ((
Uint32)dstG << 8) | dstB;
2543 Uint32 srcR, srcG, srcB, srcA;
2555 while (info->
dst_h--) {
2561 while (posy >= 0x10000L) {
2566 if (posx >= 0x10000L) {
2567 while (posx >= 0x10000L) {
2574 srcR = (
Uint8)(srcpixel >> 16); srcG = (
Uint8)(srcpixel >> 8); srcB = (
Uint8)srcpixel; srcA = (
Uint8)(srcpixel >> 24);
2576 dstR = (
Uint8)(dstpixel >> 16); dstG = (
Uint8)(dstpixel >> 8); dstB = (
Uint8)dstpixel;
2580 srcR = (srcR * srcA) / 255;
2581 srcG = (srcG * srcA) / 255;
2582 srcB = (srcB * srcA) / 255;
2587 dstR = srcR + ((255 - srcA) * dstR) / 255;
2588 dstG = srcG + ((255 - srcA) * dstG) / 255;
2589 dstB = srcB + ((255 - srcA) * dstB) / 255;
2592 dstR = srcR + dstR;
if (dstR > 255) dstR = 255;
2593 dstG = srcG + dstG;
if (dstG > 255) dstG = 255;
2594 dstB = srcB + dstB;
if (dstB > 255) dstB = 255;
2597 dstR = (srcR * dstR) / 255;
2598 dstG = (srcG * dstG) / 255;
2599 dstB = (srcB * dstB) / 255;
2602 dstpixel = ((
Uint32)dstR << 16) | ((
Uint32)dstG << 8) | dstB;
2615 const Uint32 modulateR = info->
r;
2616 const Uint32 modulateG = info->
g;
2617 const Uint32 modulateB = info->
b;
2621 while (info->
dst_h--) {
2629 R = (R * modulateR) / 255;
2630 G = (G * modulateG) / 255;
2631 B = (B * modulateB) / 255;
2646 const Uint32 modulateR = info->
r;
2647 const Uint32 modulateG = info->
g;
2648 const Uint32 modulateB = info->
b;
2660 while (info->
dst_h--) {
2666 while (posy >= 0x10000L) {
2671 if (posx >= 0x10000L) {
2672 while (posx >= 0x10000L) {
2681 R = (R * modulateR) / 255;
2682 G = (G * modulateG) / 255;
2683 B = (B * modulateB) / 255;
2698 const Uint32 modulateR = info->
r;
2699 const Uint32 modulateG = info->
g;
2700 const Uint32 modulateB = info->
b;
2701 const Uint32 modulateA = info->
a;
2703 Uint32 srcR, srcG, srcB, srcA;
2707 while (info->
dst_h--) {
2713 srcR = (
Uint8)(srcpixel >> 16); srcG = (
Uint8)(srcpixel >> 8); srcB = (
Uint8)srcpixel; srcA = (
Uint8)(srcpixel >> 24);
2715 dstR = (
Uint8)(dstpixel >> 16); dstG = (
Uint8)(dstpixel >> 8); dstB = (
Uint8)dstpixel;
2717 srcR = (srcR * modulateR) / 255;
2718 srcG = (srcG * modulateG) / 255;
2719 srcB = (srcB * modulateB) / 255;
2722 srcA = (srcA * modulateA) / 255;
2727 srcR = (srcR * srcA) / 255;
2728 srcG = (srcG * srcA) / 255;
2729 srcB = (srcB * srcA) / 255;
2734 dstR = srcR + ((255 - srcA) * dstR) / 255;
2735 dstG = srcG + ((255 - srcA) * dstG) / 255;
2736 dstB = srcB + ((255 - srcA) * dstB) / 255;
2739 dstR = srcR + dstR;
if (dstR > 255) dstR = 255;
2740 dstG = srcG + dstG;
if (dstG > 255) dstG = 255;
2741 dstB = srcB + dstB;
if (dstB > 255) dstB = 255;
2744 dstR = (srcR * dstR) / 255;
2745 dstG = (srcG * dstG) / 255;
2746 dstB = (srcB * dstB) / 255;
2749 dstpixel = ((
Uint32)dstR << 16) | ((
Uint32)dstG << 8) | dstB;
2762 const Uint32 modulateR = info->
r;
2763 const Uint32 modulateG = info->
g;
2764 const Uint32 modulateB = info->
b;
2765 const Uint32 modulateA = info->
a;
2767 Uint32 srcR, srcG, srcB, srcA;
2779 while (info->
dst_h--) {
2785 while (posy >= 0x10000L) {
2790 if (posx >= 0x10000L) {
2791 while (posx >= 0x10000L) {
2798 srcR = (
Uint8)(srcpixel >> 16); srcG = (
Uint8)(srcpixel >> 8); srcB = (
Uint8)srcpixel; srcA = (
Uint8)(srcpixel >> 24);
2800 dstR = (
Uint8)(dstpixel >> 16); dstG = (
Uint8)(dstpixel >> 8); dstB = (
Uint8)dstpixel;
2802 srcR = (srcR * modulateR) / 255;
2803 srcG = (srcG * modulateG) / 255;
2804 srcB = (srcB * modulateB) / 255;
2807 srcA = (srcA * modulateA) / 255;
2812 srcR = (srcR * srcA) / 255;
2813 srcG = (srcG * srcA) / 255;
2814 srcB = (srcB * srcA) / 255;
2819 dstR = srcR + ((255 - srcA) * dstR) / 255;
2820 dstG = srcG + ((255 - srcA) * dstG) / 255;
2821 dstB = srcB + ((255 - srcA) * dstB) / 255;
2824 dstR = srcR + dstR;
if (dstR > 255) dstR = 255;
2825 dstG = srcG + dstG;
if (dstG > 255) dstG = 255;
2826 dstB = srcB + dstB;
if (dstB > 255) dstB = 255;
2829 dstR = (srcR * dstR) / 255;
2830 dstG = (srcG * dstG) / 255;
2831 dstB = (srcB * dstB) / 255;
2834 dstpixel = ((
Uint32)dstR << 16) | ((
Uint32)dstG << 8) | dstB;
2857 while (info->
dst_h--) {
2863 while (posy >= 0x10000L) {
2868 if (posx >= 0x10000L) {
2869 while (posx >= 0x10000L) {
2891 Uint32 srcR, srcG, srcB, srcA;
2895 while (info->
dst_h--) {
2901 srcR = (
Uint8)(srcpixel >> 16); srcG = (
Uint8)(srcpixel >> 8); srcB = (
Uint8)srcpixel; srcA = (
Uint8)(srcpixel >> 24);
2903 dstB = (
Uint8)(dstpixel >> 16); dstG = (
Uint8)(dstpixel >> 8); dstR = (
Uint8)dstpixel;
2907 srcR = (srcR * srcA) / 255;
2908 srcG = (srcG * srcA) / 255;
2909 srcB = (srcB * srcA) / 255;
2914 dstR = srcR + ((255 - srcA) * dstR) / 255;
2915 dstG = srcG + ((255 - srcA) * dstG) / 255;
2916 dstB = srcB + ((255 - srcA) * dstB) / 255;
2919 dstR = srcR + dstR;
if (dstR > 255) dstR = 255;
2920 dstG = srcG + dstG;
if (dstG > 255) dstG = 255;
2921 dstB = srcB + dstB;
if (dstB > 255) dstB = 255;
2924 dstR = (srcR * dstR) / 255;
2925 dstG = (srcG * dstG) / 255;
2926 dstB = (srcB * dstB) / 255;
2929 dstpixel = ((
Uint32)dstB << 16) | ((
Uint32)dstG << 8) | dstR;
2943 Uint32 srcR, srcG, srcB, srcA;
2955 while (info->
dst_h--) {
2961 while (posy >= 0x10000L) {
2966 if (posx >= 0x10000L) {
2967 while (posx >= 0x10000L) {
2974 srcR = (
Uint8)(srcpixel >> 16); srcG = (
Uint8)(srcpixel >> 8); srcB = (
Uint8)srcpixel; srcA = (
Uint8)(srcpixel >> 24);
2976 dstB = (
Uint8)(dstpixel >> 16); dstG = (
Uint8)(dstpixel >> 8); dstR = (
Uint8)dstpixel;
2980 srcR = (srcR * srcA) / 255;
2981 srcG = (srcG * srcA) / 255;
2982 srcB = (srcB * srcA) / 255;
2987 dstR = srcR + ((255 - srcA) * dstR) / 255;
2988 dstG = srcG + ((255 - srcA) * dstG) / 255;
2989 dstB = srcB + ((255 - srcA) * dstB) / 255;
2992 dstR = srcR + dstR;
if (dstR > 255) dstR = 255;
2993 dstG = srcG + dstG;
if (dstG > 255) dstG = 255;
2994 dstB = srcB + dstB;
if (dstB > 255) dstB = 255;
2997 dstR = (srcR * dstR) / 255;
2998 dstG = (srcG * dstG) / 255;
2999 dstB = (srcB * dstB) / 255;
3002 dstpixel = ((
Uint32)dstB << 16) | ((
Uint32)dstG << 8) | dstR;
3015 const Uint32 modulateR = info->
r;
3016 const Uint32 modulateG = info->
g;
3017 const Uint32 modulateB = info->
b;
3021 while (info->
dst_h--) {
3029 R = (R * modulateR) / 255;
3030 G = (G * modulateG) / 255;
3031 B = (B * modulateB) / 255;
3046 const Uint32 modulateR = info->
r;
3047 const Uint32 modulateG = info->
g;
3048 const Uint32 modulateB = info->
b;
3060 while (info->
dst_h--) {
3066 while (posy >= 0x10000L) {
3071 if (posx >= 0x10000L) {
3072 while (posx >= 0x10000L) {
3081 R = (R * modulateR) / 255;
3082 G = (G * modulateG) / 255;
3083 B = (B * modulateB) / 255;
3098 const Uint32 modulateR = info->
r;
3099 const Uint32 modulateG = info->
g;
3100 const Uint32 modulateB = info->
b;
3101 const Uint32 modulateA = info->
a;
3103 Uint32 srcR, srcG, srcB, srcA;
3107 while (info->
dst_h--) {
3113 srcR = (
Uint8)(srcpixel >> 16); srcG = (
Uint8)(srcpixel >> 8); srcB = (
Uint8)srcpixel; srcA = (
Uint8)(srcpixel >> 24);
3115 dstB = (
Uint8)(dstpixel >> 16); dstG = (
Uint8)(dstpixel >> 8); dstR = (
Uint8)dstpixel;
3117 srcR = (srcR * modulateR) / 255;
3118 srcG = (srcG * modulateG) / 255;
3119 srcB = (srcB * modulateB) / 255;
3122 srcA = (srcA * modulateA) / 255;
3127 srcR = (srcR * srcA) / 255;
3128 srcG = (srcG * srcA) / 255;
3129 srcB = (srcB * srcA) / 255;
3134 dstR = srcR + ((255 - srcA) * dstR) / 255;
3135 dstG = srcG + ((255 - srcA) * dstG) / 255;
3136 dstB = srcB + ((255 - srcA) * dstB) / 255;
3139 dstR = srcR + dstR;
if (dstR > 255) dstR = 255;
3140 dstG = srcG + dstG;
if (dstG > 255) dstG = 255;
3141 dstB = srcB + dstB;
if (dstB > 255) dstB = 255;
3144 dstR = (srcR * dstR) / 255;
3145 dstG = (srcG * dstG) / 255;
3146 dstB = (srcB * dstB) / 255;
3149 dstpixel = ((
Uint32)dstB << 16) | ((
Uint32)dstG << 8) | dstR;
3162 const Uint32 modulateR = info->
r;
3163 const Uint32 modulateG = info->
g;
3164 const Uint32 modulateB = info->
b;
3165 const Uint32 modulateA = info->
a;
3167 Uint32 srcR, srcG, srcB, srcA;
3179 while (info->
dst_h--) {
3185 while (posy >= 0x10000L) {
3190 if (posx >= 0x10000L) {
3191 while (posx >= 0x10000L) {
3198 srcR = (
Uint8)(srcpixel >> 16); srcG = (
Uint8)(srcpixel >> 8); srcB = (
Uint8)srcpixel; srcA = (
Uint8)(srcpixel >> 24);
3200 dstB = (
Uint8)(dstpixel >> 16); dstG = (
Uint8)(dstpixel >> 8); dstR = (
Uint8)dstpixel;
3202 srcR = (srcR * modulateR) / 255;
3203 srcG = (srcG * modulateG) / 255;
3204 srcB = (srcB * modulateB) / 255;
3207 srcA = (srcA * modulateA) / 255;
3212 srcR = (srcR * srcA) / 255;
3213 srcG = (srcG * srcA) / 255;
3214 srcB = (srcB * srcA) / 255;
3219 dstR = srcR + ((255 - srcA) * dstR) / 255;
3220 dstG = srcG + ((255 - srcA) * dstG) / 255;
3221 dstB = srcB + ((255 - srcA) * dstB) / 255;
3224 dstR = srcR + dstR;
if (dstR > 255) dstR = 255;
3225 dstG = srcG + dstG;
if (dstG > 255) dstG = 255;
3226 dstB = srcB + dstB;
if (dstB > 255) dstB = 255;
3229 dstR = (srcR * dstR) / 255;
3230 dstG = (srcG * dstG) / 255;
3231 dstB = (srcB * dstB) / 255;
3234 dstpixel = ((
Uint32)dstB << 16) | ((
Uint32)dstG << 8) | dstR;
3255 while (info->
dst_h--) {
3261 while (posy >= 0x10000L) {
3266 if (posx >= 0x10000L) {
3267 while (posx >= 0x10000L) {
3286 Uint32 srcR, srcG, srcB, srcA;
3288 Uint32 dstR, dstG, dstB, dstA;
3290 while (info->
dst_h--) {
3296 srcR = (
Uint8)(srcpixel >> 16); srcG = (
Uint8)(srcpixel >> 8); srcB = (
Uint8)srcpixel; srcA = (
Uint8)(srcpixel >> 24);
3298 dstR = (
Uint8)(dstpixel >> 16); dstG = (
Uint8)(dstpixel >> 8); dstB = (
Uint8)dstpixel; dstA = (
Uint8)(dstpixel >> 24);
3302 srcR = (srcR * srcA) / 255;
3303 srcG = (srcG * srcA) / 255;
3304 srcB = (srcB * srcA) / 255;
3309 dstR = srcR + ((255 - srcA) * dstR) / 255;
3310 dstG = srcG + ((255 - srcA) * dstG) / 255;
3311 dstB = srcB + ((255 - srcA) * dstB) / 255;
3312 dstA = srcA + ((255 - srcA) * dstA) / 255;
3315 dstR = srcR + dstR;
if (dstR > 255) dstR = 255;
3316 dstG = srcG + dstG;
if (dstG > 255) dstG = 255;
3317 dstB = srcB + dstB;
if (dstB > 255) dstB = 255;
3320 dstR = (srcR * dstR) / 255;
3321 dstG = (srcG * dstG) / 255;
3322 dstB = (srcB * dstB) / 255;
3339 Uint32 srcR, srcG, srcB, srcA;
3341 Uint32 dstR, dstG, dstB, dstA;
3351 while (info->
dst_h--) {
3357 while (posy >= 0x10000L) {
3362 if (posx >= 0x10000L) {
3363 while (posx >= 0x10000L) {
3370 srcR = (
Uint8)(srcpixel >> 16); srcG = (
Uint8)(srcpixel >> 8); srcB = (
Uint8)srcpixel; srcA = (
Uint8)(srcpixel >> 24);
3372 dstR = (
Uint8)(dstpixel >> 16); dstG = (
Uint8)(dstpixel >> 8); dstB = (
Uint8)dstpixel; dstA = (
Uint8)(dstpixel >> 24);
3376 srcR = (srcR * srcA) / 255;
3377 srcG = (srcG * srcA) / 255;
3378 srcB = (srcB * srcA) / 255;
3383 dstR = srcR + ((255 - srcA) * dstR) / 255;
3384 dstG = srcG + ((255 - srcA) * dstG) / 255;
3385 dstB = srcB + ((255 - srcA) * dstB) / 255;
3386 dstA = srcA + ((255 - srcA) * dstA) / 255;
3389 dstR = srcR + dstR;
if (dstR > 255) dstR = 255;
3390 dstG = srcG + dstG;
if (dstG > 255) dstG = 255;
3391 dstB = srcB + dstB;
if (dstB > 255) dstB = 255;
3394 dstR = (srcR * dstR) / 255;
3395 dstG = (srcG * dstG) / 255;
3396 dstB = (srcB * dstB) / 255;
3412 const Uint32 modulateR = info->
r;
3413 const Uint32 modulateG = info->
g;
3414 const Uint32 modulateB = info->
b;
3415 const Uint32 modulateA = info->
a;
3419 while (info->
dst_h--) {
3427 R = (R * modulateR) / 255;
3428 G = (G * modulateG) / 255;
3429 B = (B * modulateB) / 255;
3432 A = (A * modulateA) / 255;
3447 const Uint32 modulateR = info->
r;
3448 const Uint32 modulateG = info->
g;
3449 const Uint32 modulateB = info->
b;
3450 const Uint32 modulateA = info->
a;
3462 while (info->
dst_h--) {
3468 while (posy >= 0x10000L) {
3473 if (posx >= 0x10000L) {
3474 while (posx >= 0x10000L) {
3483 R = (R * modulateR) / 255;
3484 G = (G * modulateG) / 255;
3485 B = (B * modulateB) / 255;
3488 A = (A * modulateA) / 255;
3503 const Uint32 modulateR = info->
r;
3504 const Uint32 modulateG = info->
g;
3505 const Uint32 modulateB = info->
b;
3506 const Uint32 modulateA = info->
a;
3508 Uint32 srcR, srcG, srcB, srcA;
3510 Uint32 dstR, dstG, dstB, dstA;
3512 while (info->
dst_h--) {
3518 srcR = (
Uint8)(srcpixel >> 16); srcG = (
Uint8)(srcpixel >> 8); srcB = (
Uint8)srcpixel; srcA = (
Uint8)(srcpixel >> 24);
3520 dstR = (
Uint8)(dstpixel >> 16); dstG = (
Uint8)(dstpixel >> 8); dstB = (
Uint8)dstpixel; dstA = (
Uint8)(dstpixel >> 24);
3522 srcR = (srcR * modulateR) / 255;
3523 srcG = (srcG * modulateG) / 255;
3524 srcB = (srcB * modulateB) / 255;
3527 srcA = (srcA * modulateA) / 255;
3532 srcR = (srcR * srcA) / 255;
3533 srcG = (srcG * srcA) / 255;
3534 srcB = (srcB * srcA) / 255;
3539 dstR = srcR + ((255 - srcA) * dstR) / 255;
3540 dstG = srcG + ((255 - srcA) * dstG) / 255;
3541 dstB = srcB + ((255 - srcA) * dstB) / 255;
3542 dstA = srcA + ((255 - srcA) * dstA) / 255;
3545 dstR = srcR + dstR;
if (dstR > 255) dstR = 255;
3546 dstG = srcG + dstG;
if (dstG > 255) dstG = 255;
3547 dstB = srcB + dstB;
if (dstB > 255) dstB = 255;
3550 dstR = (srcR * dstR) / 255;
3551 dstG = (srcG * dstG) / 255;
3552 dstB = (srcB * dstB) / 255;
3568 const Uint32 modulateR = info->
r;
3569 const Uint32 modulateG = info->
g;
3570 const Uint32 modulateB = info->
b;
3571 const Uint32 modulateA = info->
a;
3573 Uint32 srcR, srcG, srcB, srcA;
3575 Uint32 dstR, dstG, dstB, dstA;
3585 while (info->
dst_h--) {
3591 while (posy >= 0x10000L) {
3596 if (posx >= 0x10000L) {
3597 while (posx >= 0x10000L) {
3604 srcR = (
Uint8)(srcpixel >> 16); srcG = (
Uint8)(srcpixel >> 8); srcB = (
Uint8)srcpixel; srcA = (
Uint8)(srcpixel >> 24);
3606 dstR = (
Uint8)(dstpixel >> 16); dstG = (
Uint8)(dstpixel >> 8); dstB = (
Uint8)dstpixel; dstA = (
Uint8)(dstpixel >> 24);
3608 srcR = (srcR * modulateR) / 255;
3609 srcG = (srcG * modulateG) / 255;
3610 srcB = (srcB * modulateB) / 255;
3613 srcA = (srcA * modulateA) / 255;
3618 srcR = (srcR * srcA) / 255;
3619 srcG = (srcG * srcA) / 255;
3620 srcB = (srcB * srcA) / 255;
3625 dstR = srcR + ((255 - srcA) * dstR) / 255;
3626 dstG = srcG + ((255 - srcA) * dstG) / 255;
3627 dstB = srcB + ((255 - srcA) * dstB) / 255;
3628 dstA = srcA + ((255 - srcA) * dstA) / 255;
3631 dstR = srcR + dstR;
if (dstR > 255) dstR = 255;
3632 dstG = srcG + dstG;
if (dstG > 255) dstG = 255;
3633 dstB = srcB + dstB;
if (dstB > 255) dstB = 255;
3636 dstR = (srcR * dstR) / 255;
3637 dstG = (srcG * dstG) / 255;
3638 dstB = (srcB * dstB) / 255;
3664 while (info->
dst_h--) {
3670 while (posy >= 0x10000L) {
3675 if (posx >= 0x10000L) {
3676 while (posx >= 0x10000L) {
3683 R = (
Uint8)(pixel >> 24); G = (
Uint8)(pixel >> 16); B = (
Uint8)(pixel >> 8);
3698 Uint32 srcR, srcG, srcB, srcA;
3702 while (info->
dst_h--) {
3708 srcR = (
Uint8)(srcpixel >> 24); srcG = (
Uint8)(srcpixel >> 16); srcB = (
Uint8)(srcpixel >> 8); srcA = (
Uint8)srcpixel;
3710 dstR = (
Uint8)(dstpixel >> 16); dstG = (
Uint8)(dstpixel >> 8); dstB = (
Uint8)dstpixel;
3714 srcR = (srcR * srcA) / 255;
3715 srcG = (srcG * srcA) / 255;
3716 srcB = (srcB * srcA) / 255;
3721 dstR = srcR + ((255 - srcA) * dstR) / 255;
3722 dstG = srcG + ((255 - srcA) * dstG) / 255;
3723 dstB = srcB + ((255 - srcA) * dstB) / 255;
3726 dstR = srcR + dstR;
if (dstR > 255) dstR = 255;
3727 dstG = srcG + dstG;
if (dstG > 255) dstG = 255;
3728 dstB = srcB + dstB;
if (dstB > 255) dstB = 255;
3731 dstR = (srcR * dstR) / 255;
3732 dstG = (srcG * dstG) / 255;
3733 dstB = (srcB * dstB) / 255;
3736 dstpixel = ((
Uint32)dstR << 16) | ((
Uint32)dstG << 8) | dstB;
3750 Uint32 srcR, srcG, srcB, srcA;
3762 while (info->
dst_h--) {
3768 while (posy >= 0x10000L) {
3773 if (posx >= 0x10000L) {
3774 while (posx >= 0x10000L) {
3781 srcR = (
Uint8)(srcpixel >> 24); srcG = (
Uint8)(srcpixel >> 16); srcB = (
Uint8)(srcpixel >> 8); srcA = (
Uint8)srcpixel;
3783 dstR = (
Uint8)(dstpixel >> 16); dstG = (
Uint8)(dstpixel >> 8); dstB = (
Uint8)dstpixel;
3787 srcR = (srcR * srcA) / 255;
3788 srcG = (srcG * srcA) / 255;
3789 srcB = (srcB * srcA) / 255;
3794 dstR = srcR + ((255 - srcA) * dstR) / 255;
3795 dstG = srcG + ((255 - srcA) * dstG) / 255;
3796 dstB = srcB + ((255 - srcA) * dstB) / 255;
3799 dstR = srcR + dstR;
if (dstR > 255) dstR = 255;
3800 dstG = srcG + dstG;
if (dstG > 255) dstG = 255;
3801 dstB = srcB + dstB;
if (dstB > 255) dstB = 255;
3804 dstR = (srcR * dstR) / 255;
3805 dstG = (srcG * dstG) / 255;
3806 dstB = (srcB * dstB) / 255;
3809 dstpixel = ((
Uint32)dstR << 16) | ((
Uint32)dstG << 8) | dstB;
3822 const Uint32 modulateR = info->
r;
3823 const Uint32 modulateG = info->
g;
3824 const Uint32 modulateB = info->
b;
3828 while (info->
dst_h--) {
3834 R = (
Uint8)(pixel >> 24); G = (
Uint8)(pixel >> 16); B = (
Uint8)(pixel >> 8);
3836 R = (R * modulateR) / 255;
3837 G = (G * modulateG) / 255;
3838 B = (B * modulateB) / 255;
3853 const Uint32 modulateR = info->
r;
3854 const Uint32 modulateG = info->
g;
3855 const Uint32 modulateB = info->
b;
3867 while (info->
dst_h--) {
3873 while (posy >= 0x10000L) {
3878 if (posx >= 0x10000L) {
3879 while (posx >= 0x10000L) {
3886 R = (
Uint8)(pixel >> 24); G = (
Uint8)(pixel >> 16); B = (
Uint8)(pixel >> 8);
3888 R = (R * modulateR) / 255;
3889 G = (G * modulateG) / 255;
3890 B = (B * modulateB) / 255;
3905 const Uint32 modulateR = info->
r;
3906 const Uint32 modulateG = info->
g;
3907 const Uint32 modulateB = info->
b;
3908 const Uint32 modulateA = info->
a;
3910 Uint32 srcR, srcG, srcB, srcA;
3914 while (info->
dst_h--) {
3920 srcR = (
Uint8)(srcpixel >> 24); srcG = (
Uint8)(srcpixel >> 16); srcB = (
Uint8)(srcpixel >> 8); srcA = (
Uint8)srcpixel;
3922 dstR = (
Uint8)(dstpixel >> 16); dstG = (
Uint8)(dstpixel >> 8); dstB = (
Uint8)dstpixel;
3924 srcR = (srcR * modulateR) / 255;
3925 srcG = (srcG * modulateG) / 255;
3926 srcB = (srcB * modulateB) / 255;
3929 srcA = (srcA * modulateA) / 255;
3934 srcR = (srcR * srcA) / 255;
3935 srcG = (srcG * srcA) / 255;
3936 srcB = (srcB * srcA) / 255;
3941 dstR = srcR + ((255 - srcA) * dstR) / 255;
3942 dstG = srcG + ((255 - srcA) * dstG) / 255;
3943 dstB = srcB + ((255 - srcA) * dstB) / 255;
3946 dstR = srcR + dstR;
if (dstR > 255) dstR = 255;
3947 dstG = srcG + dstG;
if (dstG > 255) dstG = 255;
3948 dstB = srcB + dstB;
if (dstB > 255) dstB = 255;
3951 dstR = (srcR * dstR) / 255;
3952 dstG = (srcG * dstG) / 255;
3953 dstB = (srcB * dstB) / 255;
3956 dstpixel = ((
Uint32)dstR << 16) | ((
Uint32)dstG << 8) | dstB;
3969 const Uint32 modulateR = info->
r;
3970 const Uint32 modulateG = info->
g;
3971 const Uint32 modulateB = info->
b;
3972 const Uint32 modulateA = info->
a;
3974 Uint32 srcR, srcG, srcB, srcA;
3986 while (info->
dst_h--) {
3992 while (posy >= 0x10000L) {
3997 if (posx >= 0x10000L) {
3998 while (posx >= 0x10000L) {
4005 srcR = (
Uint8)(srcpixel >> 24); srcG = (
Uint8)(srcpixel >> 16); srcB = (
Uint8)(srcpixel >> 8); srcA = (
Uint8)srcpixel;
4007 dstR = (
Uint8)(dstpixel >> 16); dstG = (
Uint8)(dstpixel >> 8); dstB = (
Uint8)dstpixel;
4009 srcR = (srcR * modulateR) / 255;
4010 srcG = (srcG * modulateG) / 255;
4011 srcB = (srcB * modulateB) / 255;
4014 srcA = (srcA * modulateA) / 255;
4019 srcR = (srcR * srcA) / 255;
4020 srcG = (srcG * srcA) / 255;
4021 srcB = (srcB * srcA) / 255;
4026 dstR = srcR + ((255 - srcA) * dstR) / 255;
4027 dstG = srcG + ((255 - srcA) * dstG) / 255;
4028 dstB = srcB + ((255 - srcA) * dstB) / 255;
4031 dstR = srcR + dstR;
if (dstR > 255) dstR = 255;
4032 dstG = srcG + dstG;
if (dstG > 255) dstG = 255;
4033 dstB = srcB + dstB;
if (dstB > 255) dstB = 255;
4036 dstR = (srcR * dstR) / 255;
4037 dstG = (srcG * dstG) / 255;
4038 dstB = (srcB * dstB) / 255;
4041 dstpixel = ((
Uint32)dstR << 16) | ((
Uint32)dstG << 8) | dstB;
4064 while (info->
dst_h--) {
4070 while (posy >= 0x10000L) {
4075 if (posx >= 0x10000L) {
4076 while (posx >= 0x10000L) {
4083 R = (
Uint8)(pixel >> 24); G = (
Uint8)(pixel >> 16); B = (
Uint8)(pixel >> 8);
4098 Uint32 srcR, srcG, srcB, srcA;
4102 while (info->
dst_h--) {
4108 srcR = (
Uint8)(srcpixel >> 24); srcG = (
Uint8)(srcpixel >> 16); srcB = (
Uint8)(srcpixel >> 8); srcA = (
Uint8)srcpixel;
4110 dstB = (
Uint8)(dstpixel >> 16); dstG = (
Uint8)(dstpixel >> 8); dstR = (
Uint8)dstpixel;
4114 srcR = (srcR * srcA) / 255;
4115 srcG = (srcG * srcA) / 255;
4116 srcB = (srcB * srcA) / 255;
4121 dstR = srcR + ((255 - srcA) * dstR) / 255;
4122 dstG = srcG + ((255 - srcA) * dstG) / 255;
4123 dstB = srcB + ((255 - srcA) * dstB) / 255;
4126 dstR = srcR + dstR;
if (dstR > 255) dstR = 255;
4127 dstG = srcG + dstG;
if (dstG > 255) dstG = 255;
4128 dstB = srcB + dstB;
if (dstB > 255) dstB = 255;
4131 dstR = (srcR * dstR) / 255;
4132 dstG = (srcG * dstG) / 255;
4133 dstB = (srcB * dstB) / 255;
4136 dstpixel = ((
Uint32)dstB << 16) | ((
Uint32)dstG << 8) | dstR;
4150 Uint32 srcR, srcG, srcB, srcA;
4162 while (info->
dst_h--) {
4168 while (posy >= 0x10000L) {
4173 if (posx >= 0x10000L) {
4174 while (posx >= 0x10000L) {
4181 srcR = (
Uint8)(srcpixel >> 24); srcG = (
Uint8)(srcpixel >> 16); srcB = (
Uint8)(srcpixel >> 8); srcA = (
Uint8)srcpixel;
4183 dstB = (
Uint8)(dstpixel >> 16); dstG = (
Uint8)(dstpixel >> 8); dstR = (
Uint8)dstpixel;
4187 srcR = (srcR * srcA) / 255;
4188 srcG = (srcG * srcA) / 255;
4189 srcB = (srcB * srcA) / 255;
4194 dstR = srcR + ((255 - srcA) * dstR) / 255;
4195 dstG = srcG + ((255 - srcA) * dstG) / 255;
4196 dstB = srcB + ((255 - srcA) * dstB) / 255;
4199 dstR = srcR + dstR;
if (dstR > 255) dstR = 255;
4200 dstG = srcG + dstG;
if (dstG > 255) dstG = 255;
4201 dstB = srcB + dstB;
if (dstB > 255) dstB = 255;
4204 dstR = (srcR * dstR) / 255;
4205 dstG = (srcG * dstG) / 255;
4206 dstB = (srcB * dstB) / 255;
4209 dstpixel = ((
Uint32)dstB << 16) | ((
Uint32)dstG << 8) | dstR;
4222 const Uint32 modulateR = info->
r;
4223 const Uint32 modulateG = info->
g;
4224 const Uint32 modulateB = info->
b;
4228 while (info->
dst_h--) {
4234 R = (
Uint8)(pixel >> 24); G = (
Uint8)(pixel >> 16); B = (
Uint8)(pixel >> 8);
4236 R = (R * modulateR) / 255;
4237 G = (G * modulateG) / 255;
4238 B = (B * modulateB) / 255;
4253 const Uint32 modulateR = info->
r;
4254 const Uint32 modulateG = info->
g;
4255 const Uint32 modulateB = info->
b;
4267 while (info->
dst_h--) {
4273 while (posy >= 0x10000L) {
4278 if (posx >= 0x10000L) {
4279 while (posx >= 0x10000L) {
4286 R = (
Uint8)(pixel >> 24); G = (
Uint8)(pixel >> 16); B = (
Uint8)(pixel >> 8);
4288 R = (R * modulateR) / 255;
4289 G = (G * modulateG) / 255;
4290 B = (B * modulateB) / 255;
4305 const Uint32 modulateR = info->
r;
4306 const Uint32 modulateG = info->
g;
4307 const Uint32 modulateB = info->
b;
4308 const Uint32 modulateA = info->
a;
4310 Uint32 srcR, srcG, srcB, srcA;
4314 while (info->
dst_h--) {
4320 srcR = (
Uint8)(srcpixel >> 24); srcG = (
Uint8)(srcpixel >> 16); srcB = (
Uint8)(srcpixel >> 8); srcA = (
Uint8)srcpixel;
4322 dstB = (
Uint8)(dstpixel >> 16); dstG = (
Uint8)(dstpixel >> 8); dstR = (
Uint8)dstpixel;
4324 srcR = (srcR * modulateR) / 255;
4325 srcG = (srcG * modulateG) / 255;
4326 srcB = (srcB * modulateB) / 255;
4329 srcA = (srcA * modulateA) / 255;
4334 srcR = (srcR * srcA) / 255;
4335 srcG = (srcG * srcA) / 255;
4336 srcB = (srcB * srcA) / 255;
4341 dstR = srcR + ((255 - srcA) * dstR) / 255;
4342 dstG = srcG + ((255 - srcA) * dstG) / 255;
4343 dstB = srcB + ((255 - srcA) * dstB) / 255;
4346 dstR = srcR + dstR;
if (dstR > 255) dstR = 255;
4347 dstG = srcG + dstG;
if (dstG > 255) dstG = 255;
4348 dstB = srcB + dstB;
if (dstB > 255) dstB = 255;
4351 dstR = (srcR * dstR) / 255;
4352 dstG = (srcG * dstG) / 255;
4353 dstB = (srcB * dstB) / 255;
4356 dstpixel = ((
Uint32)dstB << 16) | ((
Uint32)dstG << 8) | dstR;
4369 const Uint32 modulateR = info->
r;
4370 const Uint32 modulateG = info->
g;
4371 const Uint32 modulateB = info->
b;
4372 const Uint32 modulateA = info->
a;
4374 Uint32 srcR, srcG, srcB, srcA;
4386 while (info->
dst_h--) {
4392 while (posy >= 0x10000L) {
4397 if (posx >= 0x10000L) {
4398 while (posx >= 0x10000L) {
4405 srcR = (
Uint8)(srcpixel >> 24); srcG = (
Uint8)(srcpixel >> 16); srcB = (
Uint8)(srcpixel >> 8); srcA = (
Uint8)srcpixel;
4407 dstB = (
Uint8)(dstpixel >> 16); dstG = (
Uint8)(dstpixel >> 8); dstR = (
Uint8)dstpixel;
4409 srcR = (srcR * modulateR) / 255;
4410 srcG = (srcG * modulateG) / 255;
4411 srcB = (srcB * modulateB) / 255;
4414 srcA = (srcA * modulateA) / 255;
4419 srcR = (srcR * srcA) / 255;
4420 srcG = (srcG * srcA) / 255;
4421 srcB = (srcB * srcA) / 255;
4426 dstR = srcR + ((255 - srcA) * dstR) / 255;
4427 dstG = srcG + ((255 - srcA) * dstG) / 255;
4428 dstB = srcB + ((255 - srcA) * dstB) / 255;
4431 dstR = srcR + dstR;
if (dstR > 255) dstR = 255;
4432 dstG = srcG + dstG;
if (dstG > 255) dstG = 255;
4433 dstB = srcB + dstB;
if (dstB > 255) dstB = 255;
4436 dstR = (srcR * dstR) / 255;
4437 dstG = (srcG * dstG) / 255;
4438 dstB = (srcB * dstB) / 255;
4441 dstpixel = ((
Uint32)dstB << 16) | ((
Uint32)dstG << 8) | dstR;
4464 while (info->
dst_h--) {
4470 while (posy >= 0x10000L) {
4475 if (posx >= 0x10000L) {
4476 while (posx >= 0x10000L) {
4498 Uint32 srcR, srcG, srcB, srcA;
4500 Uint32 dstR, dstG, dstB, dstA;
4502 while (info->
dst_h--) {
4508 srcR = (
Uint8)(srcpixel >> 24); srcG = (
Uint8)(srcpixel >> 16); srcB = (
Uint8)(srcpixel >> 8); srcA = (
Uint8)srcpixel;
4510 dstR = (
Uint8)(dstpixel >> 16); dstG = (
Uint8)(dstpixel >> 8); dstB = (
Uint8)dstpixel; dstA = (
Uint8)(dstpixel >> 24);
4514 srcR = (srcR * srcA) / 255;
4515 srcG = (srcG * srcA) / 255;
4516 srcB = (srcB * srcA) / 255;
4521 dstR = srcR + ((255 - srcA) * dstR) / 255;
4522 dstG = srcG + ((255 - srcA) * dstG) / 255;
4523 dstB = srcB + ((255 - srcA) * dstB) / 255;
4524 dstA = srcA + ((255 - srcA) * dstA) / 255;
4527 dstR = srcR + dstR;
if (dstR > 255) dstR = 255;
4528 dstG = srcG + dstG;
if (dstG > 255) dstG = 255;
4529 dstB = srcB + dstB;
if (dstB > 255) dstB = 255;
4532 dstR = (srcR * dstR) / 255;
4533 dstG = (srcG * dstG) / 255;
4534 dstB = (srcB * dstB) / 255;
4551 Uint32 srcR, srcG, srcB, srcA;
4553 Uint32 dstR, dstG, dstB, dstA;
4563 while (info->
dst_h--) {
4569 while (posy >= 0x10000L) {
4574 if (posx >= 0x10000L) {
4575 while (posx >= 0x10000L) {
4582 srcR = (
Uint8)(srcpixel >> 24); srcG = (
Uint8)(srcpixel >> 16); srcB = (
Uint8)(srcpixel >> 8); srcA = (
Uint8)srcpixel;
4584 dstR = (
Uint8)(dstpixel >> 16); dstG = (
Uint8)(dstpixel >> 8); dstB = (
Uint8)dstpixel; dstA = (
Uint8)(dstpixel >> 24);
4588 srcR = (srcR * srcA) / 255;
4589 srcG = (srcG * srcA) / 255;
4590 srcB = (srcB * srcA) / 255;
4595 dstR = srcR + ((255 - srcA) * dstR) / 255;
4596 dstG = srcG + ((255 - srcA) * dstG) / 255;
4597 dstB = srcB + ((255 - srcA) * dstB) / 255;
4598 dstA = srcA + ((255 - srcA) * dstA) / 255;
4601 dstR = srcR + dstR;
if (dstR > 255) dstR = 255;
4602 dstG = srcG + dstG;
if (dstG > 255) dstG = 255;
4603 dstB = srcB + dstB;
if (dstB > 255) dstB = 255;
4606 dstR = (srcR * dstR) / 255;
4607 dstG = (srcG * dstG) / 255;
4608 dstB = (srcB * dstB) / 255;
4624 const Uint32 modulateR = info->
r;
4625 const Uint32 modulateG = info->
g;
4626 const Uint32 modulateB = info->
b;
4627 const Uint32 modulateA = info->
a;
4631 while (info->
dst_h--) {
4639 R = (R * modulateR) / 255;
4640 G = (G * modulateG) / 255;
4641 B = (B * modulateB) / 255;
4644 A = (A * modulateA) / 255;
4659 const Uint32 modulateR = info->
r;
4660 const Uint32 modulateG = info->
g;
4661 const Uint32 modulateB = info->
b;
4662 const Uint32 modulateA = info->
a;
4674 while (info->
dst_h--) {
4680 while (posy >= 0x10000L) {
4685 if (posx >= 0x10000L) {
4686 while (posx >= 0x10000L) {
4695 R = (R * modulateR) / 255;
4696 G = (G * modulateG) / 255;
4697 B = (B * modulateB) / 255;
4700 A = (A * modulateA) / 255;
4715 const Uint32 modulateR = info->
r;
4716 const Uint32 modulateG = info->
g;
4717 const Uint32 modulateB = info->
b;
4718 const Uint32 modulateA = info->
a;
4720 Uint32 srcR, srcG, srcB, srcA;
4722 Uint32 dstR, dstG, dstB, dstA;
4724 while (info->
dst_h--) {
4730 srcR = (
Uint8)(srcpixel >> 24); srcG = (
Uint8)(srcpixel >> 16); srcB = (
Uint8)(srcpixel >> 8); srcA = (
Uint8)srcpixel;
4732 dstR = (
Uint8)(dstpixel >> 16); dstG = (
Uint8)(dstpixel >> 8); dstB = (
Uint8)dstpixel; dstA = (
Uint8)(dstpixel >> 24);
4734 srcR = (srcR * modulateR) / 255;
4735 srcG = (srcG * modulateG) / 255;
4736 srcB = (srcB * modulateB) / 255;
4739 srcA = (srcA * modulateA) / 255;
4744 srcR = (srcR * srcA) / 255;
4745 srcG = (srcG * srcA) / 255;
4746 srcB = (srcB * srcA) / 255;
4751 dstR = srcR + ((255 - srcA) * dstR) / 255;
4752 dstG = srcG + ((255 - srcA) * dstG) / 255;
4753 dstB = srcB + ((255 - srcA) * dstB) / 255;
4754 dstA = srcA + ((255 - srcA) * dstA) / 255;
4757 dstR = srcR + dstR;
if (dstR > 255) dstR = 255;
4758 dstG = srcG + dstG;
if (dstG > 255) dstG = 255;
4759 dstB = srcB + dstB;
if (dstB > 255) dstB = 255;
4762 dstR = (srcR * dstR) / 255;
4763 dstG = (srcG * dstG) / 255;
4764 dstB = (srcB * dstB) / 255;
4780 const Uint32 modulateR = info->
r;
4781 const Uint32 modulateG = info->
g;
4782 const Uint32 modulateB = info->
b;
4783 const Uint32 modulateA = info->
a;
4785 Uint32 srcR, srcG, srcB, srcA;
4787 Uint32 dstR, dstG, dstB, dstA;
4797 while (info->
dst_h--) {
4803 while (posy >= 0x10000L) {
4808 if (posx >= 0x10000L) {
4809 while (posx >= 0x10000L) {
4816 srcR = (
Uint8)(srcpixel >> 24); srcG = (
Uint8)(srcpixel >> 16); srcB = (
Uint8)(srcpixel >> 8); srcA = (
Uint8)srcpixel;
4818 dstR = (
Uint8)(dstpixel >> 16); dstG = (
Uint8)(dstpixel >> 8); dstB = (
Uint8)dstpixel; dstA = (
Uint8)(dstpixel >> 24);
4820 srcR = (srcR * modulateR) / 255;
4821 srcG = (srcG * modulateG) / 255;
4822 srcB = (srcB * modulateB) / 255;
4825 srcA = (srcA * modulateA) / 255;
4830 srcR = (srcR * srcA) / 255;
4831 srcG = (srcG * srcA) / 255;
4832 srcB = (srcB * srcA) / 255;
4837 dstR = srcR + ((255 - srcA) * dstR) / 255;
4838 dstG = srcG + ((255 - srcA) * dstG) / 255;
4839 dstB = srcB + ((255 - srcA) * dstB) / 255;
4840 dstA = srcA + ((255 - srcA) * dstA) / 255;
4843 dstR = srcR + dstR;
if (dstR > 255) dstR = 255;
4844 dstG = srcG + dstG;
if (dstG > 255) dstG = 255;
4845 dstB = srcB + dstB;
if (dstB > 255) dstB = 255;
4848 dstR = (srcR * dstR) / 255;
4849 dstG = (srcG * dstG) / 255;
4850 dstB = (srcB * dstB) / 255;
4876 while (info->
dst_h--) {
4882 while (posy >= 0x10000L) {
4887 if (posx >= 0x10000L) {
4888 while (posx >= 0x10000L) {
4910 Uint32 srcR, srcG, srcB, srcA;
4914 while (info->
dst_h--) {
4920 srcB = (
Uint8)(srcpixel >> 16); srcG = (
Uint8)(srcpixel >> 8); srcR = (
Uint8)srcpixel; srcA = (
Uint8)(srcpixel >> 24);
4922 dstR = (
Uint8)(dstpixel >> 16); dstG = (
Uint8)(dstpixel >> 8); dstB = (
Uint8)dstpixel;
4926 srcR = (srcR * srcA) / 255;
4927 srcG = (srcG * srcA) / 255;
4928 srcB = (srcB * srcA) / 255;
4933 dstR = srcR + ((255 - srcA) * dstR) / 255;
4934 dstG = srcG + ((255 - srcA) * dstG) / 255;
4935 dstB = srcB + ((255 - srcA) * dstB) / 255;
4938 dstR = srcR + dstR;
if (dstR > 255) dstR = 255;
4939 dstG = srcG + dstG;
if (dstG > 255) dstG = 255;
4940 dstB = srcB + dstB;
if (dstB > 255) dstB = 255;
4943 dstR = (srcR * dstR) / 255;
4944 dstG = (srcG * dstG) / 255;
4945 dstB = (srcB * dstB) / 255;
4948 dstpixel = ((
Uint32)dstR << 16) | ((
Uint32)dstG << 8) | dstB;
4962 Uint32 srcR, srcG, srcB, srcA;
4974 while (info->
dst_h--) {
4980 while (posy >= 0x10000L) {
4985 if (posx >= 0x10000L) {
4986 while (posx >= 0x10000L) {
4993 srcB = (
Uint8)(srcpixel >> 16); srcG = (
Uint8)(srcpixel >> 8); srcR = (
Uint8)srcpixel; srcA = (
Uint8)(srcpixel >> 24);
4995 dstR = (
Uint8)(dstpixel >> 16); dstG = (
Uint8)(dstpixel >> 8); dstB = (
Uint8)dstpixel;
4999 srcR = (srcR * srcA) / 255;
5000 srcG = (srcG * srcA) / 255;
5001 srcB = (srcB * srcA) / 255;
5006 dstR = srcR + ((255 - srcA) * dstR) / 255;
5007 dstG = srcG + ((255 - srcA) * dstG) / 255;
5008 dstB = srcB + ((255 - srcA) * dstB) / 255;
5011 dstR = srcR + dstR;
if (dstR > 255) dstR = 255;
5012 dstG = srcG + dstG;
if (dstG > 255) dstG = 255;
5013 dstB = srcB + dstB;
if (dstB > 255) dstB = 255;
5016 dstR = (srcR * dstR) / 255;
5017 dstG = (srcG * dstG) / 255;
5018 dstB = (srcB * dstB) / 255;
5021 dstpixel = ((
Uint32)dstR << 16) | ((
Uint32)dstG << 8) | dstB;
5034 const Uint32 modulateR = info->
r;
5035 const Uint32 modulateG = info->
g;
5036 const Uint32 modulateB = info->
b;
5040 while (info->
dst_h--) {
5048 R = (R * modulateR) / 255;
5049 G = (G * modulateG) / 255;
5050 B = (B * modulateB) / 255;
5065 const Uint32 modulateR = info->
r;
5066 const Uint32 modulateG = info->
g;
5067 const Uint32 modulateB = info->
b;
5079 while (info->
dst_h--) {
5085 while (posy >= 0x10000L) {
5090 if (posx >= 0x10000L) {
5091 while (posx >= 0x10000L) {
5100 R = (R * modulateR) / 255;
5101 G = (G * modulateG) / 255;
5102 B = (B * modulateB) / 255;
5117 const Uint32 modulateR = info->
r;
5118 const Uint32 modulateG = info->
g;
5119 const Uint32 modulateB = info->
b;
5120 const Uint32 modulateA = info->
a;
5122 Uint32 srcR, srcG, srcB, srcA;
5126 while (info->
dst_h--) {
5132 srcB = (
Uint8)(srcpixel >> 16); srcG = (
Uint8)(srcpixel >> 8); srcR = (
Uint8)srcpixel; srcA = (
Uint8)(srcpixel >> 24);
5134 dstR = (
Uint8)(dstpixel >> 16); dstG = (
Uint8)(dstpixel >> 8); dstB = (
Uint8)dstpixel;
5136 srcR = (srcR * modulateR) / 255;
5137 srcG = (srcG * modulateG) / 255;
5138 srcB = (srcB * modulateB) / 255;
5141 srcA = (srcA * modulateA) / 255;
5146 srcR = (srcR * srcA) / 255;
5147 srcG = (srcG * srcA) / 255;
5148 srcB = (srcB * srcA) / 255;
5153 dstR = srcR + ((255 - srcA) * dstR) / 255;
5154 dstG = srcG + ((255 - srcA) * dstG) / 255;
5155 dstB = srcB + ((255 - srcA) * dstB) / 255;
5158 dstR = srcR + dstR;
if (dstR > 255) dstR = 255;
5159 dstG = srcG + dstG;
if (dstG > 255) dstG = 255;
5160 dstB = srcB + dstB;
if (dstB > 255) dstB = 255;
5163 dstR = (srcR * dstR) / 255;
5164 dstG = (srcG * dstG) / 255;
5165 dstB = (srcB * dstB) / 255;
5168 dstpixel = ((
Uint32)dstR << 16) | ((
Uint32)dstG << 8) | dstB;
5181 const Uint32 modulateR = info->
r;
5182 const Uint32 modulateG = info->
g;
5183 const Uint32 modulateB = info->
b;
5184 const Uint32 modulateA = info->
a;
5186 Uint32 srcR, srcG, srcB, srcA;
5198 while (info->
dst_h--) {
5204 while (posy >= 0x10000L) {
5209 if (posx >= 0x10000L) {
5210 while (posx >= 0x10000L) {
5217 srcB = (
Uint8)(srcpixel >> 16); srcG = (
Uint8)(srcpixel >> 8); srcR = (
Uint8)srcpixel; srcA = (
Uint8)(srcpixel >> 24);
5219 dstR = (
Uint8)(dstpixel >> 16); dstG = (
Uint8)(dstpixel >> 8); dstB = (
Uint8)dstpixel;
5221 srcR = (srcR * modulateR) / 255;
5222 srcG = (srcG * modulateG) / 255;
5223 srcB = (srcB * modulateB) / 255;
5226 srcA = (srcA * modulateA) / 255;
5231 srcR = (srcR * srcA) / 255;
5232 srcG = (srcG * srcA) / 255;
5233 srcB = (srcB * srcA) / 255;
5238 dstR = srcR + ((255 - srcA) * dstR) / 255;
5239 dstG = srcG + ((255 - srcA) * dstG) / 255;
5240 dstB = srcB + ((255 - srcA) * dstB) / 255;
5243 dstR = srcR + dstR;
if (dstR > 255) dstR = 255;
5244 dstG = srcG + dstG;
if (dstG > 255) dstG = 255;
5245 dstB = srcB + dstB;
if (dstB > 255) dstB = 255;
5248 dstR = (srcR * dstR) / 255;
5249 dstG = (srcG * dstG) / 255;
5250 dstB = (srcB * dstB) / 255;
5253 dstpixel = ((
Uint32)dstR << 16) | ((
Uint32)dstG << 8) | dstB;
5276 while (info->
dst_h--) {
5282 while (posy >= 0x10000L) {
5287 if (posx >= 0x10000L) {
5288 while (posx >= 0x10000L) {
5310 Uint32 srcR, srcG, srcB, srcA;
5314 while (info->
dst_h--) {
5320 srcB = (
Uint8)(srcpixel >> 16); srcG = (
Uint8)(srcpixel >> 8); srcR = (
Uint8)srcpixel; srcA = (
Uint8)(srcpixel >> 24);
5322 dstB = (
Uint8)(dstpixel >> 16); dstG = (
Uint8)(dstpixel >> 8); dstR = (
Uint8)dstpixel;
5326 srcR = (srcR * srcA) / 255;
5327 srcG = (srcG * srcA) / 255;
5328 srcB = (srcB * srcA) / 255;
5333 dstR = srcR + ((255 - srcA) * dstR) / 255;
5334 dstG = srcG + ((255 - srcA) * dstG) / 255;
5335 dstB = srcB + ((255 - srcA) * dstB) / 255;
5338 dstR = srcR + dstR;
if (dstR > 255) dstR = 255;
5339 dstG = srcG + dstG;
if (dstG > 255) dstG = 255;
5340 dstB = srcB + dstB;
if (dstB > 255) dstB = 255;
5343 dstR = (srcR * dstR) / 255;
5344 dstG = (srcG * dstG) / 255;
5345 dstB = (srcB * dstB) / 255;
5348 dstpixel = ((
Uint32)dstB << 16) | ((
Uint32)dstG << 8) | dstR;
5362 Uint32 srcR, srcG, srcB, srcA;
5374 while (info->
dst_h--) {
5380 while (posy >= 0x10000L) {
5385 if (posx >= 0x10000L) {
5386 while (posx >= 0x10000L) {
5393 srcB = (
Uint8)(srcpixel >> 16); srcG = (
Uint8)(srcpixel >> 8); srcR = (
Uint8)srcpixel; srcA = (
Uint8)(srcpixel >> 24);
5395 dstB = (
Uint8)(dstpixel >> 16); dstG = (
Uint8)(dstpixel >> 8); dstR = (
Uint8)dstpixel;
5399 srcR = (srcR * srcA) / 255;
5400 srcG = (srcG * srcA) / 255;
5401 srcB = (srcB * srcA) / 255;
5406 dstR = srcR + ((255 - srcA) * dstR) / 255;
5407 dstG = srcG + ((255 - srcA) * dstG) / 255;
5408 dstB = srcB + ((255 - srcA) * dstB) / 255;
5411 dstR = srcR + dstR;
if (dstR > 255) dstR = 255;
5412 dstG = srcG + dstG;
if (dstG > 255) dstG = 255;
5413 dstB = srcB + dstB;
if (dstB > 255) dstB = 255;
5416 dstR = (srcR * dstR) / 255;
5417 dstG = (srcG * dstG) / 255;
5418 dstB = (srcB * dstB) / 255;
5421 dstpixel = ((
Uint32)dstB << 16) | ((
Uint32)dstG << 8) | dstR;
5434 const Uint32 modulateR = info->
r;
5435 const Uint32 modulateG = info->
g;
5436 const Uint32 modulateB = info->
b;
5440 while (info->
dst_h--) {
5448 R = (R * modulateR) / 255;
5449 G = (G * modulateG) / 255;
5450 B = (B * modulateB) / 255;
5465 const Uint32 modulateR = info->
r;
5466 const Uint32 modulateG = info->
g;
5467 const Uint32 modulateB = info->
b;
5479 while (info->
dst_h--) {
5485 while (posy >= 0x10000L) {
5490 if (posx >= 0x10000L) {
5491 while (posx >= 0x10000L) {
5500 R = (R * modulateR) / 255;
5501 G = (G * modulateG) / 255;
5502 B = (B * modulateB) / 255;
5517 const Uint32 modulateR = info->
r;
5518 const Uint32 modulateG = info->
g;
5519 const Uint32 modulateB = info->
b;
5520 const Uint32 modulateA = info->
a;
5522 Uint32 srcR, srcG, srcB, srcA;
5526 while (info->
dst_h--) {
5532 srcB = (
Uint8)(srcpixel >> 16); srcG = (
Uint8)(srcpixel >> 8); srcR = (
Uint8)srcpixel; srcA = (
Uint8)(srcpixel >> 24);
5534 dstB = (
Uint8)(dstpixel >> 16); dstG = (
Uint8)(dstpixel >> 8); dstR = (
Uint8)dstpixel;
5536 srcR = (srcR * modulateR) / 255;
5537 srcG = (srcG * modulateG) / 255;
5538 srcB = (srcB * modulateB) / 255;
5541 srcA = (srcA * modulateA) / 255;
5546 srcR = (srcR * srcA) / 255;
5547 srcG = (srcG * srcA) / 255;
5548 srcB = (srcB * srcA) / 255;
5553 dstR = srcR + ((255 - srcA) * dstR) / 255;
5554 dstG = srcG + ((255 - srcA) * dstG) / 255;
5555 dstB = srcB + ((255 - srcA) * dstB) / 255;
5558 dstR = srcR + dstR;
if (dstR > 255) dstR = 255;
5559 dstG = srcG + dstG;
if (dstG > 255) dstG = 255;
5560 dstB = srcB + dstB;
if (dstB > 255) dstB = 255;
5563 dstR = (srcR * dstR) / 255;
5564 dstG = (srcG * dstG) / 255;
5565 dstB = (srcB * dstB) / 255;
5568 dstpixel = ((
Uint32)dstB << 16) | ((
Uint32)dstG << 8) | dstR;
5581 const Uint32 modulateR = info->
r;
5582 const Uint32 modulateG = info->
g;
5583 const Uint32 modulateB = info->
b;
5584 const Uint32 modulateA = info->
a;
5586 Uint32 srcR, srcG, srcB, srcA;
5598 while (info->
dst_h--) {
5604 while (posy >= 0x10000L) {
5609 if (posx >= 0x10000L) {
5610 while (posx >= 0x10000L) {
5617 srcB = (
Uint8)(srcpixel >> 16); srcG = (
Uint8)(srcpixel >> 8); srcR = (
Uint8)srcpixel; srcA = (
Uint8)(srcpixel >> 24);
5619 dstB = (
Uint8)(dstpixel >> 16); dstG = (
Uint8)(dstpixel >> 8); dstR = (
Uint8)dstpixel;
5621 srcR = (srcR * modulateR) / 255;
5622 srcG = (srcG * modulateG) / 255;
5623 srcB = (srcB * modulateB) / 255;
5626 srcA = (srcA * modulateA) / 255;
5631 srcR = (srcR * srcA) / 255;
5632 srcG = (srcG * srcA) / 255;
5633 srcB = (srcB * srcA) / 255;
5638 dstR = srcR + ((255 - srcA) * dstR) / 255;
5639 dstG = srcG + ((255 - srcA) * dstG) / 255;
5640 dstB = srcB + ((255 - srcA) * dstB) / 255;
5643 dstR = srcR + dstR;
if (dstR > 255) dstR = 255;
5644 dstG = srcG + dstG;
if (dstG > 255) dstG = 255;
5645 dstB = srcB + dstB;
if (dstB > 255) dstB = 255;
5648 dstR = (srcR * dstR) / 255;
5649 dstG = (srcG * dstG) / 255;
5650 dstB = (srcB * dstB) / 255;
5653 dstpixel = ((
Uint32)dstB << 16) | ((
Uint32)dstG << 8) | dstR;
5676 while (info->
dst_h--) {
5682 while (posy >= 0x10000L) {
5687 if (posx >= 0x10000L) {
5688 while (posx >= 0x10000L) {
5710 Uint32 srcR, srcG, srcB, srcA;
5712 Uint32 dstR, dstG, dstB, dstA;
5714 while (info->
dst_h--) {
5720 srcB = (
Uint8)(srcpixel >> 16); srcG = (
Uint8)(srcpixel >> 8); srcR = (
Uint8)srcpixel; srcA = (
Uint8)(srcpixel >> 24);
5722 dstR = (
Uint8)(dstpixel >> 16); dstG = (
Uint8)(dstpixel >> 8); dstB = (
Uint8)dstpixel; dstA = (
Uint8)(dstpixel >> 24);
5726 srcR = (srcR * srcA) / 255;
5727 srcG = (srcG * srcA) / 255;
5728 srcB = (srcB * srcA) / 255;
5733 dstR = srcR + ((255 - srcA) * dstR) / 255;
5734 dstG = srcG + ((255 - srcA) * dstG) / 255;
5735 dstB = srcB + ((255 - srcA) * dstB) / 255;
5736 dstA = srcA + ((255 - srcA) * dstA) / 255;
5739 dstR = srcR + dstR;
if (dstR > 255) dstR = 255;
5740 dstG = srcG + dstG;
if (dstG > 255) dstG = 255;
5741 dstB = srcB + dstB;
if (dstB > 255) dstB = 255;
5744 dstR = (srcR * dstR) / 255;
5745 dstG = (srcG * dstG) / 255;
5746 dstB = (srcB * dstB) / 255;
5763 Uint32 srcR, srcG, srcB, srcA;
5765 Uint32 dstR, dstG, dstB, dstA;
5775 while (info->
dst_h--) {
5781 while (posy >= 0x10000L) {
5786 if (posx >= 0x10000L) {
5787 while (posx >= 0x10000L) {
5794 srcB = (
Uint8)(srcpixel >> 16); srcG = (
Uint8)(srcpixel >> 8); srcR = (
Uint8)srcpixel; srcA = (
Uint8)(srcpixel >> 24);
5796 dstR = (
Uint8)(dstpixel >> 16); dstG = (
Uint8)(dstpixel >> 8); dstB = (
Uint8)dstpixel; dstA = (
Uint8)(dstpixel >> 24);
5800 srcR = (srcR * srcA) / 255;
5801 srcG = (srcG * srcA) / 255;
5802 srcB = (srcB * srcA) / 255;
5807 dstR = srcR + ((255 - srcA) * dstR) / 255;
5808 dstG = srcG + ((255 - srcA) * dstG) / 255;
5809 dstB = srcB + ((255 - srcA) * dstB) / 255;
5810 dstA = srcA + ((255 - srcA) * dstA) / 255;
5813 dstR = srcR + dstR;
if (dstR > 255) dstR = 255;
5814 dstG = srcG + dstG;
if (dstG > 255) dstG = 255;
5815 dstB = srcB + dstB;
if (dstB > 255) dstB = 255;
5818 dstR = (srcR * dstR) / 255;
5819 dstG = (srcG * dstG) / 255;
5820 dstB = (srcB * dstB) / 255;
5836 const Uint32 modulateR = info->
r;
5837 const Uint32 modulateG = info->
g;
5838 const Uint32 modulateB = info->
b;
5839 const Uint32 modulateA = info->
a;
5843 while (info->
dst_h--) {
5851 R = (R * modulateR) / 255;
5852 G = (G * modulateG) / 255;
5853 B = (B * modulateB) / 255;
5856 A = (A * modulateA) / 255;
5871 const Uint32 modulateR = info->
r;
5872 const Uint32 modulateG = info->
g;
5873 const Uint32 modulateB = info->
b;
5874 const Uint32 modulateA = info->
a;
5886 while (info->
dst_h--) {
5892 while (posy >= 0x10000L) {
5897 if (posx >= 0x10000L) {
5898 while (posx >= 0x10000L) {
5907 R = (R * modulateR) / 255;
5908 G = (G * modulateG) / 255;
5909 B = (B * modulateB) / 255;
5912 A = (A * modulateA) / 255;
5927 const Uint32 modulateR = info->
r;
5928 const Uint32 modulateG = info->
g;
5929 const Uint32 modulateB = info->
b;
5930 const Uint32 modulateA = info->
a;
5932 Uint32 srcR, srcG, srcB, srcA;
5934 Uint32 dstR, dstG, dstB, dstA;
5936 while (info->
dst_h--) {
5942 srcB = (
Uint8)(srcpixel >> 16); srcG = (
Uint8)(srcpixel >> 8); srcR = (
Uint8)srcpixel; srcA = (
Uint8)(srcpixel >> 24);
5944 dstR = (
Uint8)(dstpixel >> 16); dstG = (
Uint8)(dstpixel >> 8); dstB = (
Uint8)dstpixel; dstA = (
Uint8)(dstpixel >> 24);
5946 srcR = (srcR * modulateR) / 255;
5947 srcG = (srcG * modulateG) / 255;
5948 srcB = (srcB * modulateB) / 255;
5951 srcA = (srcA * modulateA) / 255;
5956 srcR = (srcR * srcA) / 255;
5957 srcG = (srcG * srcA) / 255;
5958 srcB = (srcB * srcA) / 255;
5963 dstR = srcR + ((255 - srcA) * dstR) / 255;
5964 dstG = srcG + ((255 - srcA) * dstG) / 255;
5965 dstB = srcB + ((255 - srcA) * dstB) / 255;
5966 dstA = srcA + ((255 - srcA) * dstA) / 255;
5969 dstR = srcR + dstR;
if (dstR > 255) dstR = 255;
5970 dstG = srcG + dstG;
if (dstG > 255) dstG = 255;
5971 dstB = srcB + dstB;
if (dstB > 255) dstB = 255;
5974 dstR = (srcR * dstR) / 255;
5975 dstG = (srcG * dstG) / 255;
5976 dstB = (srcB * dstB) / 255;
5992 const Uint32 modulateR = info->
r;
5993 const Uint32 modulateG = info->
g;
5994 const Uint32 modulateB = info->
b;
5995 const Uint32 modulateA = info->
a;
5997 Uint32 srcR, srcG, srcB, srcA;
5999 Uint32 dstR, dstG, dstB, dstA;
6009 while (info->
dst_h--) {
6015 while (posy >= 0x10000L) {
6020 if (posx >= 0x10000L) {
6021 while (posx >= 0x10000L) {
6028 srcB = (
Uint8)(srcpixel >> 16); srcG = (
Uint8)(srcpixel >> 8); srcR = (
Uint8)srcpixel; srcA = (
Uint8)(srcpixel >> 24);
6030 dstR = (
Uint8)(dstpixel >> 16); dstG = (
Uint8)(dstpixel >> 8); dstB = (
Uint8)dstpixel; dstA = (
Uint8)(dstpixel >> 24);
6032 srcR = (srcR * modulateR) / 255;
6033 srcG = (srcG * modulateG) / 255;
6034 srcB = (srcB * modulateB) / 255;
6037 srcA = (srcA * modulateA) / 255;
6042 srcR = (srcR * srcA) / 255;
6043 srcG = (srcG * srcA) / 255;
6044 srcB = (srcB * srcA) / 255;
6049 dstR = srcR + ((255 - srcA) * dstR) / 255;
6050 dstG = srcG + ((255 - srcA) * dstG) / 255;
6051 dstB = srcB + ((255 - srcA) * dstB) / 255;
6052 dstA = srcA + ((255 - srcA) * dstA) / 255;
6055 dstR = srcR + dstR;
if (dstR > 255) dstR = 255;
6056 dstG = srcG + dstG;
if (dstG > 255) dstG = 255;
6057 dstB = srcB + dstB;
if (dstB > 255) dstB = 255;
6060 dstR = (srcR * dstR) / 255;
6061 dstG = (srcG * dstG) / 255;
6062 dstB = (srcB * dstB) / 255;
6088 while (info->
dst_h--) {
6094 while (posy >= 0x10000L) {
6099 if (posx >= 0x10000L) {
6100 while (posx >= 0x10000L) {
6107 B = (
Uint8)(pixel >> 24); G = (
Uint8)(pixel >> 16); R = (
Uint8)(pixel >> 8);
6122 Uint32 srcR, srcG, srcB, srcA;
6126 while (info->
dst_h--) {
6132 srcB = (
Uint8)(srcpixel >> 24); srcG = (
Uint8)(srcpixel >> 16); srcR = (
Uint8)(srcpixel >> 8); srcA = (
Uint8)srcpixel;
6134 dstR = (
Uint8)(dstpixel >> 16); dstG = (
Uint8)(dstpixel >> 8); dstB = (
Uint8)dstpixel;
6138 srcR = (srcR * srcA) / 255;
6139 srcG = (srcG * srcA) / 255;
6140 srcB = (srcB * srcA) / 255;
6145 dstR = srcR + ((255 - srcA) * dstR) / 255;
6146 dstG = srcG + ((255 - srcA) * dstG) / 255;
6147 dstB = srcB + ((255 - srcA) * dstB) / 255;
6150 dstR = srcR + dstR;
if (dstR > 255) dstR = 255;
6151 dstG = srcG + dstG;
if (dstG > 255) dstG = 255;
6152 dstB = srcB + dstB;
if (dstB > 255) dstB = 255;
6155 dstR = (srcR * dstR) / 255;
6156 dstG = (srcG * dstG) / 255;
6157 dstB = (srcB * dstB) / 255;
6160 dstpixel = ((
Uint32)dstR << 16) | ((
Uint32)dstG << 8) | dstB;
6174 Uint32 srcR, srcG, srcB, srcA;
6186 while (info->
dst_h--) {
6192 while (posy >= 0x10000L) {
6197 if (posx >= 0x10000L) {
6198 while (posx >= 0x10000L) {
6205 srcB = (
Uint8)(srcpixel >> 24); srcG = (
Uint8)(srcpixel >> 16); srcR = (
Uint8)(srcpixel >> 8); srcA = (
Uint8)srcpixel;
6207 dstR = (
Uint8)(dstpixel >> 16); dstG = (
Uint8)(dstpixel >> 8); dstB = (
Uint8)dstpixel;
6211 srcR = (srcR * srcA) / 255;
6212 srcG = (srcG * srcA) / 255;
6213 srcB = (srcB * srcA) / 255;
6218 dstR = srcR + ((255 - srcA) * dstR) / 255;
6219 dstG = srcG + ((255 - srcA) * dstG) / 255;
6220 dstB = srcB + ((255 - srcA) * dstB) / 255;
6223 dstR = srcR + dstR;
if (dstR > 255) dstR = 255;
6224 dstG = srcG + dstG;
if (dstG > 255) dstG = 255;
6225 dstB = srcB + dstB;
if (dstB > 255) dstB = 255;
6228 dstR = (srcR * dstR) / 255;
6229 dstG = (srcG * dstG) / 255;
6230 dstB = (srcB * dstB) / 255;
6233 dstpixel = ((
Uint32)dstR << 16) | ((
Uint32)dstG << 8) | dstB;
6246 const Uint32 modulateR = info->
r;
6247 const Uint32 modulateG = info->
g;
6248 const Uint32 modulateB = info->
b;
6252 while (info->
dst_h--) {
6258 B = (
Uint8)(pixel >> 24); G = (
Uint8)(pixel >> 16); R = (
Uint8)(pixel >> 8);
6260 R = (R * modulateR) / 255;
6261 G = (G * modulateG) / 255;
6262 B = (B * modulateB) / 255;
6277 const Uint32 modulateR = info->
r;
6278 const Uint32 modulateG = info->
g;
6279 const Uint32 modulateB = info->
b;
6291 while (info->
dst_h--) {
6297 while (posy >= 0x10000L) {
6302 if (posx >= 0x10000L) {
6303 while (posx >= 0x10000L) {
6310 B = (
Uint8)(pixel >> 24); G = (
Uint8)(pixel >> 16); R = (
Uint8)(pixel >> 8);
6312 R = (R * modulateR) / 255;
6313 G = (G * modulateG) / 255;
6314 B = (B * modulateB) / 255;
6329 const Uint32 modulateR = info->
r;
6330 const Uint32 modulateG = info->
g;
6331 const Uint32 modulateB = info->
b;
6332 const Uint32 modulateA = info->
a;
6334 Uint32 srcR, srcG, srcB, srcA;
6338 while (info->
dst_h--) {
6344 srcB = (
Uint8)(srcpixel >> 24); srcG = (
Uint8)(srcpixel >> 16); srcR = (
Uint8)(srcpixel >> 8); srcA = (
Uint8)srcpixel;
6346 dstR = (
Uint8)(dstpixel >> 16); dstG = (
Uint8)(dstpixel >> 8); dstB = (
Uint8)dstpixel;
6348 srcR = (srcR * modulateR) / 255;
6349 srcG = (srcG * modulateG) / 255;
6350 srcB = (srcB * modulateB) / 255;
6353 srcA = (srcA * modulateA) / 255;
6358 srcR = (srcR * srcA) / 255;
6359 srcG = (srcG * srcA) / 255;
6360 srcB = (srcB * srcA) / 255;
6365 dstR = srcR + ((255 - srcA) * dstR) / 255;
6366 dstG = srcG + ((255 - srcA) * dstG) / 255;
6367 dstB = srcB + ((255 - srcA) * dstB) / 255;
6370 dstR = srcR + dstR;
if (dstR > 255) dstR = 255;
6371 dstG = srcG + dstG;
if (dstG > 255) dstG = 255;
6372 dstB = srcB + dstB;
if (dstB > 255) dstB = 255;
6375 dstR = (srcR * dstR) / 255;
6376 dstG = (srcG * dstG) / 255;
6377 dstB = (srcB * dstB) / 255;
6380 dstpixel = ((
Uint32)dstR << 16) | ((
Uint32)dstG << 8) | dstB;
6393 const Uint32 modulateR = info->
r;
6394 const Uint32 modulateG = info->
g;
6395 const Uint32 modulateB = info->
b;
6396 const Uint32 modulateA = info->
a;
6398 Uint32 srcR, srcG, srcB, srcA;
6410 while (info->
dst_h--) {
6416 while (posy >= 0x10000L) {
6421 if (posx >= 0x10000L) {
6422 while (posx >= 0x10000L) {
6429 srcB = (
Uint8)(srcpixel >> 24); srcG = (
Uint8)(srcpixel >> 16); srcR = (
Uint8)(srcpixel >> 8); srcA = (
Uint8)srcpixel;
6431 dstR = (
Uint8)(dstpixel >> 16); dstG = (
Uint8)(dstpixel >> 8); dstB = (
Uint8)dstpixel;
6433 srcR = (srcR * modulateR) / 255;
6434 srcG = (srcG * modulateG) / 255;
6435 srcB = (srcB * modulateB) / 255;
6438 srcA = (srcA * modulateA) / 255;
6443 srcR = (srcR * srcA) / 255;
6444 srcG = (srcG * srcA) / 255;
6445 srcB = (srcB * srcA) / 255;
6450 dstR = srcR + ((255 - srcA) * dstR) / 255;
6451 dstG = srcG + ((255 - srcA) * dstG) / 255;
6452 dstB = srcB + ((255 - srcA) * dstB) / 255;
6455 dstR = srcR + dstR;
if (dstR > 255) dstR = 255;
6456 dstG = srcG + dstG;
if (dstG > 255) dstG = 255;
6457 dstB = srcB + dstB;
if (dstB > 255) dstB = 255;
6460 dstR = (srcR * dstR) / 255;
6461 dstG = (srcG * dstG) / 255;
6462 dstB = (srcB * dstB) / 255;
6465 dstpixel = ((
Uint32)dstR << 16) | ((
Uint32)dstG << 8) | dstB;
6488 while (info->
dst_h--) {
6494 while (posy >= 0x10000L) {
6499 if (posx >= 0x10000L) {
6500 while (posx >= 0x10000L) {
6507 B = (
Uint8)(pixel >> 24); G = (
Uint8)(pixel >> 16); R = (
Uint8)(pixel >> 8);
6522 Uint32 srcR, srcG, srcB, srcA;
6526 while (info->
dst_h--) {
6532 srcB = (
Uint8)(srcpixel >> 24); srcG = (
Uint8)(srcpixel >> 16); srcR = (
Uint8)(srcpixel >> 8); srcA = (
Uint8)srcpixel;
6534 dstB = (
Uint8)(dstpixel >> 16); dstG = (
Uint8)(dstpixel >> 8); dstR = (
Uint8)dstpixel;
6538 srcR = (srcR * srcA) / 255;
6539 srcG = (srcG * srcA) / 255;
6540 srcB = (srcB * srcA) / 255;
6545 dstR = srcR + ((255 - srcA) * dstR) / 255;
6546 dstG = srcG + ((255 - srcA) * dstG) / 255;
6547 dstB = srcB + ((255 - srcA) * dstB) / 255;
6550 dstR = srcR + dstR;
if (dstR > 255) dstR = 255;
6551 dstG = srcG + dstG;
if (dstG > 255) dstG = 255;
6552 dstB = srcB + dstB;
if (dstB > 255) dstB = 255;
6555 dstR = (srcR * dstR) / 255;
6556 dstG = (srcG * dstG) / 255;
6557 dstB = (srcB * dstB) / 255;
6560 dstpixel = ((
Uint32)dstB << 16) | ((
Uint32)dstG << 8) | dstR;
6574 Uint32 srcR, srcG, srcB, srcA;
6586 while (info->
dst_h--) {
6592 while (posy >= 0x10000L) {
6597 if (posx >= 0x10000L) {
6598 while (posx >= 0x10000L) {
6605 srcB = (
Uint8)(srcpixel >> 24); srcG = (
Uint8)(srcpixel >> 16); srcR = (
Uint8)(srcpixel >> 8); srcA = (
Uint8)srcpixel;
6607 dstB = (
Uint8)(dstpixel >> 16); dstG = (
Uint8)(dstpixel >> 8); dstR = (
Uint8)dstpixel;
6611 srcR = (srcR * srcA) / 255;
6612 srcG = (srcG * srcA) / 255;
6613 srcB = (srcB * srcA) / 255;
6618 dstR = srcR + ((255 - srcA) * dstR) / 255;
6619 dstG = srcG + ((255 - srcA) * dstG) / 255;
6620 dstB = srcB + ((255 - srcA) * dstB) / 255;
6623 dstR = srcR + dstR;
if (dstR > 255) dstR = 255;
6624 dstG = srcG + dstG;
if (dstG > 255) dstG = 255;
6625 dstB = srcB + dstB;
if (dstB > 255) dstB = 255;
6628 dstR = (srcR * dstR) / 255;
6629 dstG = (srcG * dstG) / 255;
6630 dstB = (srcB * dstB) / 255;
6633 dstpixel = ((
Uint32)dstB << 16) | ((
Uint32)dstG << 8) | dstR;
6646 const Uint32 modulateR = info->
r;
6647 const Uint32 modulateG = info->
g;
6648 const Uint32 modulateB = info->
b;
6652 while (info->
dst_h--) {
6658 B = (
Uint8)(pixel >> 24); G = (
Uint8)(pixel >> 16); R = (
Uint8)(pixel >> 8);
6660 R = (R * modulateR) / 255;
6661 G = (G * modulateG) / 255;
6662 B = (B * modulateB) / 255;
6677 const Uint32 modulateR = info->
r;
6678 const Uint32 modulateG = info->
g;
6679 const Uint32 modulateB = info->
b;
6691 while (info->
dst_h--) {
6697 while (posy >= 0x10000L) {
6702 if (posx >= 0x10000L) {
6703 while (posx >= 0x10000L) {
6710 B = (
Uint8)(pixel >> 24); G = (
Uint8)(pixel >> 16); R = (
Uint8)(pixel >> 8);
6712 R = (R * modulateR) / 255;
6713 G = (G * modulateG) / 255;
6714 B = (B * modulateB) / 255;
6729 const Uint32 modulateR = info->
r;
6730 const Uint32 modulateG = info->
g;
6731 const Uint32 modulateB = info->
b;
6732 const Uint32 modulateA = info->
a;
6734 Uint32 srcR, srcG, srcB, srcA;
6738 while (info->
dst_h--) {
6744 srcB = (
Uint8)(srcpixel >> 24); srcG = (
Uint8)(srcpixel >> 16); srcR = (
Uint8)(srcpixel >> 8); srcA = (
Uint8)srcpixel;
6746 dstB = (
Uint8)(dstpixel >> 16); dstG = (
Uint8)(dstpixel >> 8); dstR = (
Uint8)dstpixel;
6748 srcR = (srcR * modulateR) / 255;
6749 srcG = (srcG * modulateG) / 255;
6750 srcB = (srcB * modulateB) / 255;
6753 srcA = (srcA * modulateA) / 255;
6758 srcR = (srcR * srcA) / 255;
6759 srcG = (srcG * srcA) / 255;
6760 srcB = (srcB * srcA) / 255;
6765 dstR = srcR + ((255 - srcA) * dstR) / 255;
6766 dstG = srcG + ((255 - srcA) * dstG) / 255;
6767 dstB = srcB + ((255 - srcA) * dstB) / 255;
6770 dstR = srcR + dstR;
if (dstR > 255) dstR = 255;
6771 dstG = srcG + dstG;
if (dstG > 255) dstG = 255;
6772 dstB = srcB + dstB;
if (dstB > 255) dstB = 255;
6775 dstR = (srcR * dstR) / 255;
6776 dstG = (srcG * dstG) / 255;
6777 dstB = (srcB * dstB) / 255;
6780 dstpixel = ((
Uint32)dstB << 16) | ((
Uint32)dstG << 8) | dstR;
6793 const Uint32 modulateR = info->
r;
6794 const Uint32 modulateG = info->
g;
6795 const Uint32 modulateB = info->
b;
6796 const Uint32 modulateA = info->
a;
6798 Uint32 srcR, srcG, srcB, srcA;
6810 while (info->
dst_h--) {
6816 while (posy >= 0x10000L) {
6821 if (posx >= 0x10000L) {
6822 while (posx >= 0x10000L) {
6829 srcB = (
Uint8)(srcpixel >> 24); srcG = (
Uint8)(srcpixel >> 16); srcR = (
Uint8)(srcpixel >> 8); srcA = (
Uint8)srcpixel;
6831 dstB = (
Uint8)(dstpixel >> 16); dstG = (
Uint8)(dstpixel >> 8); dstR = (
Uint8)dstpixel;
6833 srcR = (srcR * modulateR) / 255;
6834 srcG = (srcG * modulateG) / 255;
6835 srcB = (srcB * modulateB) / 255;
6838 srcA = (srcA * modulateA) / 255;
6843 srcR = (srcR * srcA) / 255;
6844 srcG = (srcG * srcA) / 255;
6845 srcB = (srcB * srcA) / 255;
6850 dstR = srcR + ((255 - srcA) * dstR) / 255;
6851 dstG = srcG + ((255 - srcA) * dstG) / 255;
6852 dstB = srcB + ((255 - srcA) * dstB) / 255;
6855 dstR = srcR + dstR;
if (dstR > 255) dstR = 255;
6856 dstG = srcG + dstG;
if (dstG > 255) dstG = 255;
6857 dstB = srcB + dstB;
if (dstB > 255) dstB = 255;
6860 dstR = (srcR * dstR) / 255;
6861 dstG = (srcG * dstG) / 255;
6862 dstB = (srcB * dstB) / 255;
6865 dstpixel = ((
Uint32)dstB << 16) | ((
Uint32)dstG << 8) | dstR;
6888 while (info->
dst_h--) {
6894 while (posy >= 0x10000L) {
6899 if (posx >= 0x10000L) {
6900 while (posx >= 0x10000L) {
6922 Uint32 srcR, srcG, srcB, srcA;
6924 Uint32 dstR, dstG, dstB, dstA;
6926 while (info->
dst_h--) {
6932 srcB = (
Uint8)(srcpixel >> 24); srcG = (
Uint8)(srcpixel >> 16); srcR = (
Uint8)(srcpixel >> 8); srcA = (
Uint8)srcpixel;
6934 dstR = (
Uint8)(dstpixel >> 16); dstG = (
Uint8)(dstpixel >> 8); dstB = (
Uint8)dstpixel; dstA = (
Uint8)(dstpixel >> 24);
6938 srcR = (srcR * srcA) / 255;
6939 srcG = (srcG * srcA) / 255;
6940 srcB = (srcB * srcA) / 255;
6945 dstR = srcR + ((255 - srcA) * dstR) / 255;
6946 dstG = srcG + ((255 - srcA) * dstG) / 255;
6947 dstB = srcB + ((255 - srcA) * dstB) / 255;
6948 dstA = srcA + ((255 - srcA) * dstA) / 255;
6951 dstR = srcR + dstR;
if (dstR > 255) dstR = 255;
6952 dstG = srcG + dstG;
if (dstG > 255) dstG = 255;
6953 dstB = srcB + dstB;
if (dstB > 255) dstB = 255;
6956 dstR = (srcR * dstR) / 255;
6957 dstG = (srcG * dstG) / 255;
6958 dstB = (srcB * dstB) / 255;
6975 Uint32 srcR, srcG, srcB, srcA;
6977 Uint32 dstR, dstG, dstB, dstA;
6987 while (info->
dst_h--) {
6993 while (posy >= 0x10000L) {
6998 if (posx >= 0x10000L) {
6999 while (posx >= 0x10000L) {
7006 srcB = (
Uint8)(srcpixel >> 24); srcG = (
Uint8)(srcpixel >> 16); srcR = (
Uint8)(srcpixel >> 8); srcA = (
Uint8)srcpixel;
7008 dstR = (
Uint8)(dstpixel >> 16); dstG = (
Uint8)(dstpixel >> 8); dstB = (
Uint8)dstpixel; dstA = (
Uint8)(dstpixel >> 24);
7012 srcR = (srcR * srcA) / 255;
7013 srcG = (srcG * srcA) / 255;
7014 srcB = (srcB * srcA) / 255;
7019 dstR = srcR + ((255 - srcA) * dstR) / 255;
7020 dstG = srcG + ((255 - srcA) * dstG) / 255;
7021 dstB = srcB + ((255 - srcA) * dstB) / 255;
7022 dstA = srcA + ((255 - srcA) * dstA) / 255;
7025 dstR = srcR + dstR;
if (dstR > 255) dstR = 255;
7026 dstG = srcG + dstG;
if (dstG > 255) dstG = 255;
7027 dstB = srcB + dstB;
if (dstB > 255) dstB = 255;
7030 dstR = (srcR * dstR) / 255;
7031 dstG = (srcG * dstG) / 255;
7032 dstB = (srcB * dstB) / 255;
7048 const Uint32 modulateR = info->
r;
7049 const Uint32 modulateG = info->
g;
7050 const Uint32 modulateB = info->
b;
7051 const Uint32 modulateA = info->
a;
7055 while (info->
dst_h--) {
7063 R = (R * modulateR) / 255;
7064 G = (G * modulateG) / 255;
7065 B = (B * modulateB) / 255;
7068 A = (A * modulateA) / 255;
7083 const Uint32 modulateR = info->
r;
7084 const Uint32 modulateG = info->
g;
7085 const Uint32 modulateB = info->
b;
7086 const Uint32 modulateA = info->
a;
7098 while (info->
dst_h--) {
7104 while (posy >= 0x10000L) {
7109 if (posx >= 0x10000L) {
7110 while (posx >= 0x10000L) {
7119 R = (R * modulateR) / 255;
7120 G = (G * modulateG) / 255;
7121 B = (B * modulateB) / 255;
7124 A = (A * modulateA) / 255;
7139 const Uint32 modulateR = info->
r;
7140 const Uint32 modulateG = info->
g;
7141 const Uint32 modulateB = info->
b;
7142 const Uint32 modulateA = info->
a;
7144 Uint32 srcR, srcG, srcB, srcA;
7146 Uint32 dstR, dstG, dstB, dstA;
7148 while (info->
dst_h--) {
7154 srcB = (
Uint8)(srcpixel >> 24); srcG = (
Uint8)(srcpixel >> 16); srcR = (
Uint8)(srcpixel >> 8); srcA = (
Uint8)srcpixel;
7156 dstR = (
Uint8)(dstpixel >> 16); dstG = (
Uint8)(dstpixel >> 8); dstB = (
Uint8)dstpixel; dstA = (
Uint8)(dstpixel >> 24);
7158 srcR = (srcR * modulateR) / 255;
7159 srcG = (srcG * modulateG) / 255;
7160 srcB = (srcB * modulateB) / 255;
7163 srcA = (srcA * modulateA) / 255;
7168 srcR = (srcR * srcA) / 255;
7169 srcG = (srcG * srcA) / 255;
7170 srcB = (srcB * srcA) / 255;
7175 dstR = srcR + ((255 - srcA) * dstR) / 255;
7176 dstG = srcG + ((255 - srcA) * dstG) / 255;
7177 dstB = srcB + ((255 - srcA) * dstB) / 255;
7178 dstA = srcA + ((255 - srcA) * dstA) / 255;
7181 dstR = srcR + dstR;
if (dstR > 255) dstR = 255;
7182 dstG = srcG + dstG;
if (dstG > 255) dstG = 255;
7183 dstB = srcB + dstB;
if (dstB > 255) dstB = 255;
7186 dstR = (srcR * dstR) / 255;
7187 dstG = (srcG * dstG) / 255;
7188 dstB = (srcB * dstB) / 255;
7204 const Uint32 modulateR = info->
r;
7205 const Uint32 modulateG = info->
g;
7206 const Uint32 modulateB = info->
b;
7207 const Uint32 modulateA = info->
a;
7209 Uint32 srcR, srcG, srcB, srcA;
7211 Uint32 dstR, dstG, dstB, dstA;
7221 while (info->
dst_h--) {
7227 while (posy >= 0x10000L) {
7232 if (posx >= 0x10000L) {
7233 while (posx >= 0x10000L) {
7240 srcB = (
Uint8)(srcpixel >> 24); srcG = (
Uint8)(srcpixel >> 16); srcR = (
Uint8)(srcpixel >> 8); srcA = (
Uint8)srcpixel;
7242 dstR = (
Uint8)(dstpixel >> 16); dstG = (
Uint8)(dstpixel >> 8); dstB = (
Uint8)dstpixel; dstA = (
Uint8)(dstpixel >> 24);
7244 srcR = (srcR * modulateR) / 255;
7245 srcG = (srcG * modulateG) / 255;
7246 srcB = (srcB * modulateB) / 255;
7249 srcA = (srcA * modulateA) / 255;
7254 srcR = (srcR * srcA) / 255;
7255 srcG = (srcG * srcA) / 255;
7256 srcB = (srcB * srcA) / 255;
7261 dstR = srcR + ((255 - srcA) * dstR) / 255;
7262 dstG = srcG + ((255 - srcA) * dstG) / 255;
7263 dstB = srcB + ((255 - srcA) * dstB) / 255;
7264 dstA = srcA + ((255 - srcA) * dstA) / 255;
7267 dstR = srcR + dstR;
if (dstR > 255) dstR = 255;
7268 dstG = srcG + dstG;
if (dstG > 255) dstG = 255;
7269 dstB = srcB + dstB;
if (dstB > 255) dstB = 255;
7272 dstR = (srcR * dstR) / 255;
7273 dstG = (srcG * dstG) / 255;
7274 dstB = (srcB * dstB) / 255;
7414 { 0, 0, 0, 0,
NULL }
static void SDL_Blit_BGR888_ARGB8888_Blend(SDL_BlitInfo *info)
static void SDL_Blit_RGB888_BGR888_Blend(SDL_BlitInfo *info)
#define SDL_COPY_MODULATE_COLOR
static void SDL_Blit_BGRA8888_BGR888_Modulate_Blend_Scale(SDL_BlitInfo *info)
static void SDL_Blit_ARGB8888_BGR888_Blend_Scale(SDL_BlitInfo *info)
static void SDL_Blit_RGBA8888_RGB888_Blend(SDL_BlitInfo *info)
static void SDL_Blit_RGB888_BGR888_Modulate_Blend_Scale(SDL_BlitInfo *info)
static void SDL_Blit_BGRA8888_ARGB8888_Modulate_Scale(SDL_BlitInfo *info)
static void SDL_Blit_RGB888_ARGB8888_Modulate_Scale(SDL_BlitInfo *info)
static void SDL_Blit_BGRA8888_ARGB8888_Blend_Scale(SDL_BlitInfo *info)
static void SDL_Blit_BGRA8888_ARGB8888_Modulate_Blend_Scale(SDL_BlitInfo *info)
static void SDL_Blit_RGBA8888_ARGB8888_Blend_Scale(SDL_BlitInfo *info)
static void SDL_Blit_BGRA8888_BGR888_Modulate_Scale(SDL_BlitInfo *info)
static void SDL_Blit_RGB888_ARGB8888_Modulate(SDL_BlitInfo *info)
static void SDL_Blit_BGRA8888_RGB888_Scale(SDL_BlitInfo *info)
static void SDL_Blit_BGRA8888_BGR888_Blend(SDL_BlitInfo *info)
static void SDL_Blit_BGR888_BGR888_Modulate_Blend(SDL_BlitInfo *info)
static void SDL_Blit_ARGB8888_RGB888_Blend(SDL_BlitInfo *info)
static void SDL_Blit_RGBA8888_ARGB8888_Scale(SDL_BlitInfo *info)
static void SDL_Blit_BGR888_ARGB8888_Modulate_Scale(SDL_BlitInfo *info)
static void SDL_Blit_BGRA8888_ARGB8888_Scale(SDL_BlitInfo *info)
static void SDL_Blit_ARGB8888_ARGB8888_Modulate_Scale(SDL_BlitInfo *info)
static void SDL_Blit_ARGB8888_RGB888_Scale(SDL_BlitInfo *info)
static void SDL_Blit_ARGB8888_RGB888_Blend_Scale(SDL_BlitInfo *info)
static void SDL_Blit_ARGB8888_RGB888_Modulate_Scale(SDL_BlitInfo *info)
static void SDL_Blit_RGBA8888_ARGB8888_Modulate_Blend(SDL_BlitInfo *info)
static void SDL_Blit_ARGB8888_BGR888_Modulate(SDL_BlitInfo *info)
static void SDL_Blit_RGBA8888_ARGB8888_Modulate(SDL_BlitInfo *info)
static void SDL_Blit_BGR888_RGB888_Blend(SDL_BlitInfo *info)
static void SDL_Blit_RGB888_BGR888_Scale(SDL_BlitInfo *info)
static void SDL_Blit_RGBA8888_ARGB8888_Modulate_Blend_Scale(SDL_BlitInfo *info)
static void SDL_Blit_RGBA8888_BGR888_Modulate(SDL_BlitInfo *info)
static void SDL_Blit_BGRA8888_RGB888_Modulate_Scale(SDL_BlitInfo *info)
static void SDL_Blit_BGRA8888_RGB888_Modulate_Blend_Scale(SDL_BlitInfo *info)
static void SDL_Blit_BGRA8888_ARGB8888_Modulate(SDL_BlitInfo *info)
static void SDL_Blit_BGR888_ARGB8888_Modulate(SDL_BlitInfo *info)
static void SDL_Blit_BGR888_ARGB8888_Modulate_Blend(SDL_BlitInfo *info)
static void SDL_Blit_BGR888_ARGB8888_Scale(SDL_BlitInfo *info)
static void SDL_Blit_ABGR8888_RGB888_Modulate(SDL_BlitInfo *info)
static void SDL_Blit_BGR888_RGB888_Blend_Scale(SDL_BlitInfo *info)
static void SDL_Blit_ABGR8888_BGR888_Blend(SDL_BlitInfo *info)
static void SDL_Blit_ABGR8888_RGB888_Modulate_Blend(SDL_BlitInfo *info)
static void SDL_Blit_ARGB8888_ARGB8888_Scale(SDL_BlitInfo *info)
static void SDL_Blit_RGB888_RGB888_Modulate_Scale(SDL_BlitInfo *info)
static void SDL_Blit_RGBA8888_RGB888_Modulate_Blend(SDL_BlitInfo *info)
static void SDL_Blit_RGBA8888_RGB888_Blend_Scale(SDL_BlitInfo *info)
static void SDL_Blit_BGR888_RGB888_Modulate_Scale(SDL_BlitInfo *info)
static void SDL_Blit_BGR888_BGR888_Blend_Scale(SDL_BlitInfo *info)
static void SDL_Blit_RGB888_ARGB8888_Modulate_Blend_Scale(SDL_BlitInfo *info)
static void SDL_Blit_RGB888_BGR888_Modulate_Scale(SDL_BlitInfo *info)
static void SDL_Blit_BGR888_BGR888_Modulate_Blend_Scale(SDL_BlitInfo *info)
static void SDL_Blit_RGBA8888_BGR888_Modulate_Scale(SDL_BlitInfo *info)
static void SDL_Blit_BGR888_BGR888_Modulate(SDL_BlitInfo *info)
static void SDL_Blit_ABGR8888_BGR888_Modulate_Blend_Scale(SDL_BlitInfo *info)
static void SDL_Blit_ABGR8888_RGB888_Scale(SDL_BlitInfo *info)
static void SDL_Blit_BGRA8888_ARGB8888_Blend(SDL_BlitInfo *info)
static void SDL_Blit_ARGB8888_ARGB8888_Modulate_Blend_Scale(SDL_BlitInfo *info)
static void SDL_Blit_ARGB8888_BGR888_Modulate_Blend_Scale(SDL_BlitInfo *info)
static void SDL_Blit_RGB888_RGB888_Modulate_Blend(SDL_BlitInfo *info)
static void SDL_Blit_RGB888_RGB888_Scale(SDL_BlitInfo *info)
static void SDL_Blit_RGB888_ARGB8888_Blend(SDL_BlitInfo *info)
static void SDL_Blit_ABGR8888_BGR888_Scale(SDL_BlitInfo *info)
static void SDL_Blit_ARGB8888_ARGB8888_Blend_Scale(SDL_BlitInfo *info)
static void SDL_Blit_ARGB8888_ARGB8888_Modulate(SDL_BlitInfo *info)
static void SDL_Blit_RGBA8888_RGB888_Modulate(SDL_BlitInfo *info)
static void SDL_Blit_RGB888_RGB888_Blend_Scale(SDL_BlitInfo *info)
static void SDL_Blit_ABGR8888_BGR888_Blend_Scale(SDL_BlitInfo *info)
static void SDL_Blit_ARGB8888_ARGB8888_Blend(SDL_BlitInfo *info)
static void SDL_Blit_BGR888_BGR888_Blend(SDL_BlitInfo *info)
static void SDL_Blit_ABGR8888_RGB888_Modulate_Blend_Scale(SDL_BlitInfo *info)
static void SDL_Blit_ABGR8888_BGR888_Modulate_Blend(SDL_BlitInfo *info)
static void SDL_Blit_RGB888_RGB888_Modulate(SDL_BlitInfo *info)
static void SDL_Blit_BGR888_ARGB8888_Modulate_Blend_Scale(SDL_BlitInfo *info)
static void SDL_Blit_ABGR8888_RGB888_Blend(SDL_BlitInfo *info)
static void SDL_Blit_ARGB8888_BGR888_Modulate_Blend(SDL_BlitInfo *info)
SDL_BlitFuncEntry SDL_GeneratedBlitFuncTable[]
static void SDL_Blit_ABGR8888_ARGB8888_Modulate_Scale(SDL_BlitInfo *info)
static void SDL_Blit_BGR888_ARGB8888_Blend_Scale(SDL_BlitInfo *info)
static void SDL_Blit_RGBA8888_BGR888_Modulate_Blend(SDL_BlitInfo *info)
static void SDL_Blit_BGRA8888_RGB888_Blend_Scale(SDL_BlitInfo *info)
static void SDL_Blit_BGR888_BGR888_Modulate_Scale(SDL_BlitInfo *info)
static void SDL_Blit_BGRA8888_RGB888_Blend(SDL_BlitInfo *info)
static void SDL_Blit_ABGR8888_BGR888_Modulate_Scale(SDL_BlitInfo *info)
static void SDL_Blit_BGR888_RGB888_Scale(SDL_BlitInfo *info)
static void SDL_Blit_ABGR8888_ARGB8888_Blend(SDL_BlitInfo *info)
static void SDL_Blit_ARGB8888_RGB888_Modulate_Blend_Scale(SDL_BlitInfo *info)
static void SDL_Blit_RGB888_BGR888_Modulate_Blend(SDL_BlitInfo *info)
static void SDL_Blit_ARGB8888_ARGB8888_Modulate_Blend(SDL_BlitInfo *info)
static void SDL_Blit_ARGB8888_BGR888_Modulate_Scale(SDL_BlitInfo *info)
static void SDL_Blit_BGR888_RGB888_Modulate(SDL_BlitInfo *info)
static void SDL_Blit_BGRA8888_BGR888_Modulate(SDL_BlitInfo *info)
static void SDL_Blit_BGRA8888_BGR888_Modulate_Blend(SDL_BlitInfo *info)
#define SDL_COPY_MODULATE_ALPHA
static void SDL_Blit_BGR888_RGB888_Modulate_Blend_Scale(SDL_BlitInfo *info)
static void SDL_Blit_ABGR8888_RGB888_Modulate_Scale(SDL_BlitInfo *info)
static void SDL_Blit_ARGB8888_RGB888_Modulate_Blend(SDL_BlitInfo *info)
static void SDL_Blit_BGR888_BGR888_Scale(SDL_BlitInfo *info)
static void SDL_Blit_BGR888_RGB888_Modulate_Blend(SDL_BlitInfo *info)
static void SDL_Blit_RGBA8888_ARGB8888_Blend(SDL_BlitInfo *info)
static void SDL_Blit_RGB888_RGB888_Modulate_Blend_Scale(SDL_BlitInfo *info)
static void SDL_Blit_RGB888_BGR888_Modulate(SDL_BlitInfo *info)
static void SDL_Blit_BGRA8888_BGR888_Blend_Scale(SDL_BlitInfo *info)
static void SDL_Blit_ARGB8888_BGR888_Blend(SDL_BlitInfo *info)
static void SDL_Blit_ABGR8888_BGR888_Modulate(SDL_BlitInfo *info)
static void SDL_Blit_RGBA8888_RGB888_Modulate_Scale(SDL_BlitInfo *info)
static void SDL_Blit_RGB888_ARGB8888_Blend_Scale(SDL_BlitInfo *info)
static void SDL_Blit_ABGR8888_ARGB8888_Blend_Scale(SDL_BlitInfo *info)
static void SDL_Blit_RGBA8888_RGB888_Scale(SDL_BlitInfo *info)
static void SDL_Blit_RGB888_ARGB8888_Scale(SDL_BlitInfo *info)
static void SDL_Blit_RGBA8888_BGR888_Scale(SDL_BlitInfo *info)
static void SDL_Blit_BGRA8888_ARGB8888_Modulate_Blend(SDL_BlitInfo *info)
static void SDL_Blit_ABGR8888_ARGB8888_Scale(SDL_BlitInfo *info)
static void SDL_Blit_RGBA8888_BGR888_Blend_Scale(SDL_BlitInfo *info)
static void SDL_Blit_BGRA8888_RGB888_Modulate_Blend(SDL_BlitInfo *info)
static void SDL_Blit_BGRA8888_RGB888_Modulate(SDL_BlitInfo *info)
static void SDL_Blit_ABGR8888_RGB888_Blend_Scale(SDL_BlitInfo *info)
static void SDL_Blit_BGRA8888_BGR888_Scale(SDL_BlitInfo *info)
static void SDL_Blit_RGB888_ARGB8888_Modulate_Blend(SDL_BlitInfo *info)
static void SDL_Blit_RGBA8888_RGB888_Modulate_Blend_Scale(SDL_BlitInfo *info)
static void SDL_Blit_RGBA8888_ARGB8888_Modulate_Scale(SDL_BlitInfo *info)
static void SDL_Blit_RGB888_BGR888_Blend_Scale(SDL_BlitInfo *info)
static void SDL_Blit_ARGB8888_RGB888_Modulate(SDL_BlitInfo *info)
static void SDL_Blit_ABGR8888_ARGB8888_Modulate(SDL_BlitInfo *info)
static void SDL_Blit_RGBA8888_BGR888_Blend(SDL_BlitInfo *info)
static void SDL_Blit_ABGR8888_ARGB8888_Modulate_Blend_Scale(SDL_BlitInfo *info)
static void SDL_Blit_RGB888_RGB888_Blend(SDL_BlitInfo *info)
static void SDL_Blit_ABGR8888_ARGB8888_Modulate_Blend(SDL_BlitInfo *info)
static void SDL_Blit_RGBA8888_BGR888_Modulate_Blend_Scale(SDL_BlitInfo *info)
static void SDL_Blit_ARGB8888_BGR888_Scale(SDL_BlitInfo *info)