]> Shamusworld >> Repos - virtualjaguar/blob - src/include/fbmpop8.h
af8a71555416fc804f53988c3f0f21b6b5a37548
[virtualjaguar] / src / include / fbmpop8.h
1                 uint32 c;
2                 paletteRam+=(idx&0x01)*256*2;
3                 if (flags&FLAGS_READMODIFY)
4                 {
5                         if (flags&FLAGS_HFLIP)
6                         {
7                                 while (iwidth)
8                                 {
9                                         c=jaguar_byte_read(ptr++);
10                                         c<<=1;
11                                         if (flags&FLAGS_TRANSPARENT)
12                                         {                                       
13                                                 if (c)
14                                                 {
15                                                         *current_line_buffer--=BLEND_Y(*current_line_buffer,paletteRam[c+0]);
16                                                         *current_line_buffer--=BLEND_CC(*current_line_buffer,paletteRam[c+1]);
17                                                 }
18                                                 else
19                                                         current_line_buffer-=2;
20                                         }
21                                         else
22                                         {
23                                                 *current_line_buffer--=BLEND_Y(*current_line_buffer,paletteRam[c+0]);
24                                                 *current_line_buffer--=BLEND_CC(*current_line_buffer,paletteRam[c+1]);
25                                         }
26                                         iwidth--;
27                                 }
28                         }
29                         else
30                         {
31                                 while (iwidth)
32                                 {
33                                         c=jaguar_byte_read(ptr++);
34                                         c<<=1;
35                                         if (flags&FLAGS_TRANSPARENT)
36                                         {                                       
37                                                 if (c)
38                                                 {
39                                                         *current_line_buffer++=BLEND_Y(*current_line_buffer,paletteRam[c+0]);
40                                                         *current_line_buffer++=BLEND_CC(*current_line_buffer,paletteRam[c+1]);
41                                                 }
42                                                 else
43                                                         current_line_buffer+=2;
44                                         }
45                                         else
46                                         {
47                                                 *current_line_buffer++=BLEND_Y(*current_line_buffer,paletteRam[c+0]);
48                                                 *current_line_buffer++=BLEND_CC(*current_line_buffer,paletteRam[c+1]);
49                                         }
50                                         iwidth--;
51                                 }
52                         }
53                 }
54                 else
55                 {
56                         if (flags&FLAGS_HFLIP)
57                         {
58                                 while (iwidth)
59                                 {
60                                         c=jaguar_byte_read(ptr++);
61                                         c<<=1;
62                                         if (flags&FLAGS_TRANSPARENT)
63                                         {                                       
64                                                 if (c)
65                                                 {
66                                                         *current_line_buffer--=paletteRam[c+0];
67                                                         *current_line_buffer--=paletteRam[c+1];
68                                                 }
69                                                 else
70                                                         current_line_buffer-=2;
71                                         }
72                                         else
73                                         {
74                                                 *current_line_buffer--=paletteRam[c+0];
75                                                 *current_line_buffer--=paletteRam[c+1];
76                                         }
77                                         iwidth--;
78                                 }
79                         }
80                         else
81                         {
82                                 while (iwidth)
83                                 {
84                                         c=jaguar_byte_read(ptr++);
85                                         c<<=1;
86                                         if (flags&FLAGS_TRANSPARENT)
87                                         {                                       
88                                                 if (c)
89                                                 {
90                                                         *current_line_buffer++=paletteRam[c+0];
91                                                         *current_line_buffer++=paletteRam[c+1];
92                                                 }
93                                                 else
94                                                         current_line_buffer+=2;
95                                         }
96                                         else
97                                         {
98                                                 *current_line_buffer++=paletteRam[c+0];
99                                                 *current_line_buffer++=paletteRam[c+1];
100                                         }
101                                         iwidth--;
102                                 }
103                         }
104                 }