summaryrefslogtreecommitdiff
path: root/firmware/target/arm/tms320dm320/mrobe-500/lcd-mr500.c
diff options
context:
space:
mode:
authorKarl Kurbjun <kkurbjun@gmail.com>2009-11-07 23:00:36 +0000
committerKarl Kurbjun <kkurbjun@gmail.com>2009-11-07 23:00:36 +0000
commit487d088e12907a08fe02b28ea84c756efd5d8af9 (patch)
tree5bc0170b2fed7f21eb8c41405fff3419afb8ad4f /firmware/target/arm/tms320dm320/mrobe-500/lcd-mr500.c
parent26348fb9cbd0296b67bb4a56ba5ceb50e4384c4b (diff)
M:Robe 500: Disable LED above screen and add a change for the 256 color blitter
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23564 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware/target/arm/tms320dm320/mrobe-500/lcd-mr500.c')
-rw-r--r--firmware/target/arm/tms320dm320/mrobe-500/lcd-mr500.c15
1 files changed, 12 insertions, 3 deletions
diff --git a/firmware/target/arm/tms320dm320/mrobe-500/lcd-mr500.c b/firmware/target/arm/tms320dm320/mrobe-500/lcd-mr500.c
index ac7754f5e9..317a764d3c 100644
--- a/firmware/target/arm/tms320dm320/mrobe-500/lcd-mr500.c
+++ b/firmware/target/arm/tms320dm320/mrobe-500/lcd-mr500.c
@@ -115,6 +115,14 @@ void lcd_init_device(void)
{
unsigned int addr;
+ /* Pin 32 controls the LED above the LCD */
+ IO_GIO_DIR2 &= ~(0x01); /* output */
+ IO_GIO_INV2 &= ~(0x01); /* non-inverted */
+ IO_GIO_FSEL2 &= ~(0x03<<14); /* normal pins */
+
+ /* Turn the LED off */
+ IO_GIO_BITCLR2 = 1;
+
/* Clear the Frame */
memset16(FRAME, 0x0000, LCD_WIDTH*LCD_HEIGHT);
@@ -556,21 +564,22 @@ void lcd_blit_pal256(unsigned char *src, int src_x, int src_y, int x, int y,
+ (LCD_NATIVE_WIDTH+LCD_FUDGE)*(LCD_NATIVE_HEIGHT-1)
- (LCD_NATIVE_WIDTH+LCD_FUDGE)*x + y;
- src=src+src_x+src_y*LCD_WIDTH;
+ src=src+src_x+src_y*width;
while(height--)
{
+ register char *c_src=src;
register char *c_dst=dst;
register int c_width=width;
while (c_width--)
{
- *c_dst = *src++;
+ *c_dst = *c_src++;
c_dst -= (LCD_NATIVE_WIDTH+LCD_FUDGE);
}
dst++;
- src+=LCD_WIDTH-width;
+ src+=width;
}
#endif
}