| Line 97... |
Line 97... |
| 97 |
params->copy_dest.buf.addr, params->copy_dest.pos.x,
|
97 |
params->copy_dest.buf.addr, params->copy_dest.pos.x,
|
| 98 |
params->copy_dest.pos.y, params->copy_dest.buf.stride,
|
98 |
params->copy_dest.pos.y, params->copy_dest.buf.stride,
|
| 99 |
params->copy_src.loc.buf.addr, params->copy_src.loc.pos.x,
|
99 |
params->copy_src.loc.buf.addr, params->copy_src.loc.pos.x,
|
| 100 |
params->copy_src.loc.pos.y, params->copy_src.loc.buf.stride);
|
100 |
params->copy_src.loc.pos.y, params->copy_src.loc.buf.stride);
|
| 101 |
if (params->bg_opacity && params->bg_dest.buf.addr && params->bg_src.loc.buf.addr)
|
101 |
if (params->bg_opacity && params->bg_dest.buf.addr && params->bg_src.loc.buf.addr)
|
| 102 |
blend(params->bg_src.size.x, params->bg_src.size.y, params->bg_opacity,
|
102 |
blenda(params->bg_src.size.x, params->bg_src.size.y, params->bg_opacity,
|
| 103 |
params->bg_dest.buf.addr, params->bg_dest.pos.x,
|
103 |
params->bg_dest.buf.addr, params->bg_dest.pos.x,
|
| 104 |
params->bg_dest.pos.y, params->bg_dest.buf.stride,
|
104 |
params->bg_dest.pos.y, params->bg_dest.buf.stride,
|
| 105 |
params->bg_dest.buf.addr, params->bg_dest.pos.x,
|
105 |
params->bg_dest.buf.addr, params->bg_dest.pos.x,
|
| 106 |
params->bg_dest.pos.y, params->bg_dest.buf.stride,
|
106 |
params->bg_dest.pos.y, params->bg_dest.buf.stride,
|
| 107 |
params->bg_src.loc.buf.addr, params->bg_src.loc.pos.x,
|
107 |
params->bg_src.loc.buf.addr, params->bg_src.loc.pos.x,
|
| 108 |
params->bg_src.loc.pos.y, params->bg_src.loc.buf.stride);
|
108 |
params->bg_src.loc.pos.y, params->bg_src.loc.buf.stride);
|
| 109 |
}
|
109 |
}
|
| 110 |
else if (params->copy_dest.buf.stride == params->bg_dest.buf.stride
|
110 |
else if (params->copy_dest.buf.stride == params->bg_dest.buf.stride
|
| 111 |
&& params->bg_src.loc.buf.addr && params->copy_dest.buf.addr == params->bg_dest.buf.addr
|
111 |
&& params->bg_src.loc.buf.addr && params->copy_dest.buf.addr == params->bg_dest.buf.addr
|
| 112 |
&& params->copy_dest.pos.x == params->bg_dest.pos.x && !params->fill_dest.loc.buf.addr
|
112 |
&& params->copy_dest.pos.x == params->bg_dest.pos.x && !params->fill_dest.loc.buf.addr
|
| 113 |
&& params->copy_dest.pos.y == params->bg_dest.pos.y && params->copy_src.loc.buf.addr
|
113 |
&& params->copy_dest.pos.y == params->bg_dest.pos.y && params->copy_src.loc.buf.addr
|
| 114 |
&& params->copy_src.size.x == params->bg_src.size.x && params->copy_dest.buf.addr
|
114 |
&& params->copy_src.size.x == params->bg_src.size.x && params->copy_dest.buf.addr
|
| 115 |
&& params->copy_src.size.y == params->bg_src.size.y && params->bg_opacity)
|
115 |
&& params->copy_src.size.y == params->bg_src.size.y && params->bg_opacity)
|
| 116 |
{
|
116 |
{
|
| 117 |
blend(params->copy_src.size.x, params->copy_src.size.y, params->bg_opacity,
|
117 |
blenda(params->copy_src.size.x, params->copy_src.size.y, params->bg_opacity,
|
| 118 |
params->copy_dest.buf.addr, params->copy_dest.pos.x,
|
118 |
params->copy_dest.buf.addr, params->copy_dest.pos.x,
|
| 119 |
params->copy_dest.pos.y, params->copy_dest.buf.stride,
|
119 |
params->copy_dest.pos.y, params->copy_dest.buf.stride,
|
| 120 |
params->copy_src.loc.buf.addr, params->copy_src.loc.pos.x,
|
120 |
params->copy_src.loc.buf.addr, params->copy_src.loc.pos.x,
|
| 121 |
params->copy_src.loc.pos.y, params->copy_src.loc.buf.stride,
|
121 |
params->copy_src.loc.pos.y, params->copy_src.loc.buf.stride,
|
| 122 |
params->bg_src.loc.buf.addr, params->bg_src.loc.pos.x,
|
122 |
params->bg_src.loc.buf.addr, params->bg_src.loc.pos.x,
|
| 123 |
params->bg_src.loc.pos.y, params->bg_src.loc.buf.stride);
|
123 |
params->bg_src.loc.pos.y, params->bg_src.loc.buf.stride);
|
| 124 |
}
|
124 |
}
|
| 125 |
else
|
125 |
else
|
| 126 |
{
|
126 |
{
|
| 127 |
if (params->copy_src.loc.buf.addr && params->copy_dest.buf.addr)
|
127 |
if (params->copy_src.loc.buf.addr && params->copy_dest.buf.addr)
|
| 128 |
blit(params->copy_src.size.x, params->copy_src.size.y, 3,
|
128 |
blit(params->copy_src.size.x, params->copy_src.size.y, 3,
|
| Line 135... |
Line 135... |
| 135 |
params->fill_dest.loc.buf.addr, params->fill_dest.loc.pos.x,
|
135 |
params->fill_dest.loc.buf.addr, params->fill_dest.loc.pos.x,
|
| 136 |
params->fill_dest.loc.pos.y, params->fill_dest.loc.buf.stride,
|
136 |
params->fill_dest.loc.pos.y, params->fill_dest.loc.buf.stride,
|
| 137 |
params->fill_dest.loc.buf.addr, params->fill_dest.loc.pos.x,
|
137 |
params->fill_dest.loc.buf.addr, params->fill_dest.loc.pos.x,
|
| 138 |
params->fill_dest.loc.pos.y, params->fill_dest.loc.buf.stride);
|
138 |
params->fill_dest.loc.pos.y, params->fill_dest.loc.buf.stride);
|
| 139 |
if (params->bg_opacity && params->bg_src.loc.buf.addr && params->bg_dest.buf.addr)
|
139 |
if (params->bg_opacity && params->bg_src.loc.buf.addr && params->bg_dest.buf.addr)
|
| 140 |
blend(params->bg_src.size.x, params->bg_src.size.y, params->bg_opacity,
|
140 |
blenda(params->bg_src.size.x, params->bg_src.size.y, params->bg_opacity,
|
| 141 |
params->bg_dest.buf.addr, params->bg_dest.pos.x,
|
141 |
params->bg_dest.buf.addr, params->bg_dest.pos.x,
|
| 142 |
params->bg_dest.pos.y, params->bg_dest.buf.stride,
|
142 |
params->bg_dest.pos.y, params->bg_dest.buf.stride,
|
| 143 |
params->bg_dest.buf.addr, params->bg_dest.pos.x,
|
143 |
params->bg_dest.buf.addr, params->bg_dest.pos.x,
|
| 144 |
params->bg_dest.pos.y, params->bg_dest.buf.stride,
|
144 |
params->bg_dest.pos.y, params->bg_dest.buf.stride,
|
| 145 |
params->bg_src.loc.buf.addr, params->bg_src.loc.pos.x,
|
145 |
params->bg_src.loc.buf.addr, params->bg_src.loc.pos.x,
|
| 146 |
params->bg_src.loc.pos.y, params->bg_src.loc.buf.stride);
|
146 |
params->bg_src.loc.pos.y, params->bg_src.loc.buf.stride);
|
| 147 |
}
|
147 |
}
|
| 148 |
void* buf = params->viewport.loc.buf.addr;
|
148 |
void* buf = params->viewport.loc.buf.addr;
|
| 149 |
int stride = params->viewport.loc.buf.stride;
|
149 |
int stride = params->viewport.loc.buf.stride;
|
| 150 |
int x = params->viewport.loc.pos.x;
|
150 |
int x = params->viewport.loc.pos.x;
|
| 151 |
int y = params->viewport.loc.pos.y;
|
151 |
int y = params->viewport.loc.pos.y;
|
| Line 174... |
Line 174... |
| 174 |
if (fill_color)
|
174 |
if (fill_color)
|
| 175 |
blendcolor(iparams->fill_box.size.x, iparams->fill_box.size.y, fill_color,
|
175 |
blendcolor(iparams->fill_box.size.x, iparams->fill_box.size.y, fill_color,
|
| 176 |
buf, x + iparams->fill_box.pos.x, y + iparams->fill_box.pos.y, stride,
|
176 |
buf, x + iparams->fill_box.pos.x, y + iparams->fill_box.pos.y, stride,
|
| 177 |
buf, x + iparams->fill_box.pos.x, y + iparams->fill_box.pos.y, stride);
|
177 |
buf, x + iparams->fill_box.pos.x, y + iparams->fill_box.pos.y, stride);
|
| 178 |
if (icon->loc.buf.addr && icon_opacity)
|
178 |
if (icon->loc.buf.addr && icon_opacity)
|
| 179 |
blend(icon->size.x, icon->size.y, icon_opacity,
|
179 |
blenda(icon->size.x, icon->size.y, icon_opacity,
|
| 180 |
buf, x + iparams->icon_pos.x, y + iparams->icon_pos.y, stride,
|
180 |
buf, x + iparams->icon_pos.x, y + iparams->icon_pos.y, stride,
|
| 181 |
buf, x + iparams->icon_pos.x, y + iparams->icon_pos.y, stride);
|
181 |
buf, x + iparams->icon_pos.x, y + iparams->icon_pos.y, stride);
|
| 182 |
if (iparams->text && iparams->text_color)
|
182 |
if (iparams->text && iparams->text_color)
|
| 183 |
rendertext(buf, x + iparams->text_pos.x, y + iparams->text_pos.y,
|
183 |
rendertext(buf, x + iparams->text_pos.x, y + iparams->text_pos.y,
|
| 184 |
stride, text_color, 0, iparams->text);
|
184 |
stride, text_color, 0, iparams->text);
|
| 185 |
y += iparams->size.y;
|
185 |
y += iparams->size.y;
|
| 186 |
item++;
|
186 |
item++;
|