diff options
Diffstat (limited to 'firmware/asm')
-rw-r--r-- | firmware/asm/SOURCES | 4 | ||||
-rw-r--r-- | firmware/asm/lcd-as-memframe-24bit.c | 3 | ||||
-rw-r--r-- | firmware/asm/lcd-as-memframe.c | 8 |
3 files changed, 11 insertions, 4 deletions
diff --git a/firmware/asm/SOURCES b/firmware/asm/SOURCES index 0cd351efdd..d74d4d3c60 100644 --- a/firmware/asm/SOURCES +++ b/firmware/asm/SOURCES | |||
@@ -12,5 +12,9 @@ strlen.c | |||
12 | defined(COWON_D2) || defined(MINI2440) || defined(SAMSUNG_YPR0) || \ | 12 | defined(COWON_D2) || defined(MINI2440) || defined(SAMSUNG_YPR0) || \ |
13 | defined(SAMSUNG_YPR1) || (defined(MROBE_500) && !defined(LCD_USE_DMA))) && \ | 13 | defined(SAMSUNG_YPR1) || (defined(MROBE_500) && !defined(LCD_USE_DMA))) && \ |
14 | !defined(SIMULATOR) | 14 | !defined(SIMULATOR) |
15 | #if LCD_DEPTH == 24 | ||
16 | lcd-as-memframe-24bit.c | ||
17 | #else | ||
15 | lcd-as-memframe.c | 18 | lcd-as-memframe.c |
16 | #endif | 19 | #endif |
20 | #endif | ||
diff --git a/firmware/asm/lcd-as-memframe-24bit.c b/firmware/asm/lcd-as-memframe-24bit.c new file mode 100644 index 0000000000..2cca575799 --- /dev/null +++ b/firmware/asm/lcd-as-memframe-24bit.c | |||
@@ -0,0 +1,3 @@ | |||
1 | |||
2 | /* The ASM version of lcd-as-memframe.c isn't 24bit capable */ | ||
3 | #include "lcd-as-memframe.c" | ||
diff --git a/firmware/asm/lcd-as-memframe.c b/firmware/asm/lcd-as-memframe.c index 5f4917b721..032022d7ec 100644 --- a/firmware/asm/lcd-as-memframe.c +++ b/firmware/asm/lcd-as-memframe.c | |||
@@ -78,7 +78,7 @@ extern void lcd_write_yuv420_lines(fb_data *dst, | |||
78 | b = clamp(b, 0, 64*256-1); | 78 | b = clamp(b, 0, 64*256-1); |
79 | } | 79 | } |
80 | 80 | ||
81 | *dst = LCD_RGBPACK_LCD(r >> 9, g >> 8, b >> 9); | 81 | *dst = FB_RGBPACK(r >> 6, g >> 6, b >> 6); |
82 | 82 | ||
83 | #if LCD_WIDTH >= LCD_HEIGHT | 83 | #if LCD_WIDTH >= LCD_HEIGHT |
84 | dst++; | 84 | dst++; |
@@ -98,7 +98,7 @@ extern void lcd_write_yuv420_lines(fb_data *dst, | |||
98 | b = clamp(b, 0, 64*256-1); | 98 | b = clamp(b, 0, 64*256-1); |
99 | } | 99 | } |
100 | 100 | ||
101 | *dst = LCD_RGBPACK_LCD(r >> 9, g >> 8, b >> 9); | 101 | *dst = FB_RGBPACK(r >> 6, g >> 6, b >> 6); |
102 | 102 | ||
103 | #if LCD_WIDTH >= LCD_HEIGHT | 103 | #if LCD_WIDTH >= LCD_HEIGHT |
104 | dst++; | 104 | dst++; |
@@ -143,7 +143,7 @@ extern void lcd_write_yuv420_lines(fb_data *dst, | |||
143 | b = clamp(b, 0, 64*256-1); | 143 | b = clamp(b, 0, 64*256-1); |
144 | } | 144 | } |
145 | 145 | ||
146 | *dst = LCD_RGBPACK_LCD(r >> 9, g >> 8, b >> 9); | 146 | *dst = FB_RGBPACK_LCD(r >> 9, g >> 8, b >> 9); |
147 | 147 | ||
148 | #if LCD_WIDTH >= LCD_HEIGHT | 148 | #if LCD_WIDTH >= LCD_HEIGHT |
149 | dst++; | 149 | dst++; |
@@ -163,7 +163,7 @@ extern void lcd_write_yuv420_lines(fb_data *dst, | |||
163 | b = clamp(b, 0, 64*256-1); | 163 | b = clamp(b, 0, 64*256-1); |
164 | } | 164 | } |
165 | 165 | ||
166 | *dst = LCD_RGBPACK_LCD(r >> 9, g >> 8, b >> 9); | 166 | *dst = FB_RGBPACK_LCD(r >> 9, g >> 8, b >> 9); |
167 | 167 | ||
168 | #if LCD_WIDTH >= LCD_HEIGHT | 168 | #if LCD_WIDTH >= LCD_HEIGHT |
169 | dst++; | 169 | dst++; |