summaryrefslogtreecommitdiff
path: root/firmware/target
diff options
context:
space:
mode:
Diffstat (limited to 'firmware/target')
-rw-r--r--firmware/target/arm/s3c2440/gigabeat-fx/lcd-meg-fx.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/firmware/target/arm/s3c2440/gigabeat-fx/lcd-meg-fx.c b/firmware/target/arm/s3c2440/gigabeat-fx/lcd-meg-fx.c
index bc391632ad..b680b15d25 100644
--- a/firmware/target/arm/s3c2440/gigabeat-fx/lcd-meg-fx.c
+++ b/firmware/target/arm/s3c2440/gigabeat-fx/lcd-meg-fx.c
@@ -227,7 +227,9 @@ void lcd_bitmap_transparent_part(const fb_data *src, int src_x, int src_y,
227 ".nextpixel: \r\n" 227 ".nextpixel: \r\n"
228 "ldrh %[px], [%[s]], #2 \r\n" /* Load src pixel */ 228 "ldrh %[px], [%[s]], #2 \r\n" /* Load src pixel */
229 "add %[d], %[d], #2 \r\n" /* Uncoditionally increment dst */ 229 "add %[d], %[d], #2 \r\n" /* Uncoditionally increment dst */
230 "cmp %[px], %[transcolor] \r\n" /* Compare to transparent color */ 230 "cmp %[px], %[fgcolor] \r\n" /* Compare to foreground color */
231 "streqh %[fgpat], [%[d], #-2] \r\n" /* Store foregroud if match */
232 "cmpne %[px], %[transcolor] \r\n" /* Compare to transparent color */
231 "strneh %[px], [%[d], #-2] \r\n" /* Store dst if not transparent */ 233 "strneh %[px], [%[d], #-2] \r\n" /* Store dst if not transparent */
232 "subs %[w], %[w], #1 \r\n" /* Width counter has run down? */ 234 "subs %[w], %[w], #1 \r\n" /* Width counter has run down? */
233 "bgt .nextpixel \r\n" /* More in this row? */ 235 "bgt .nextpixel \r\n" /* More in this row? */
@@ -240,7 +242,9 @@ void lcd_bitmap_transparent_part(const fb_data *src, int src_x, int src_y,
240 : [width]"r"(width), 242 : [width]"r"(width),
241 [sstp]"r"(stride - width), 243 [sstp]"r"(stride - width),
242 [dstp]"r"(LCD_WIDTH - width), 244 [dstp]"r"(LCD_WIDTH - width),
243 [transcolor]"r"(TRANSPARENT_COLOR) 245 [transcolor]"r"(TRANSPARENT_COLOR),
246 [fgcolor]"r"(REPLACEWITHFG_COLOR),
247 [fgpat]"r"(fg_pattern)
244 ); 248 );
245} 249}
246 250