diff options
author | Karl Kurbjun <kkurbjun@gmail.com> | 2009-11-07 23:00:36 +0000 |
---|---|---|
committer | Karl Kurbjun <kkurbjun@gmail.com> | 2009-11-07 23:00:36 +0000 |
commit | 487d088e12907a08fe02b28ea84c756efd5d8af9 (patch) | |
tree | 5bc0170b2fed7f21eb8c41405fff3419afb8ad4f /firmware/target/arm/tms320dm320/mrobe-500/lcd-mr500.c | |
parent | 26348fb9cbd0296b67bb4a56ba5ceb50e4384c4b (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.c | 15 |
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 } |