summaryrefslogtreecommitdiff
path: root/firmware/export
diff options
context:
space:
mode:
authorKarl Kurbjun <kkurbjun@gmail.com>2009-04-01 03:21:18 +0000
committerKarl Kurbjun <kkurbjun@gmail.com>2009-04-01 03:21:18 +0000
commit4fa96fbc914ae8fd69aedafd73f4f1798679d29f (patch)
treeea0deb3e1573e1dfd540441002e58b403670d178 /firmware/export
parenta606121dd860245328198ac773d454980191abc3 (diff)
M:Robe 500i: More LCD initialization, and beginnings of support for QVGA as well as VGA on the LCD. MPEGPlayer now works with reasonable performance on smaller videos, but YUV blitting persists after MPEGPlayer is left, some cleanup/changes to the initialization code. This should be functionally equivalent for the ZVM, but the #ifdef's may need to be added back for app.lds. Get the bootloader building again.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20598 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware/export')
-rw-r--r--firmware/export/config-mrobe500.h25
-rw-r--r--firmware/export/dm320.h17
2 files changed, 23 insertions, 19 deletions
diff --git a/firmware/export/config-mrobe500.h b/firmware/export/config-mrobe500.h
index d5d31ffc41..25699bd005 100644
--- a/firmware/export/config-mrobe500.h
+++ b/firmware/export/config-mrobe500.h
@@ -41,6 +41,9 @@
/* define this if you have a colour LCD */
#define HAVE_LCD_COLOR
+/* define this if you want album art for this target */
+//#define HAVE_ALBUMART
+
/* define this if you have access to the quickscreen */
#define HAVE_QUICKSCREEN
@@ -58,14 +61,22 @@
/* choose the lcd orientation. both work */
/* #define CONFIG_ORIENTATION SCREEN_PORTRAIT */
-#define CONFIG_ORIENTATION SCREEN_LANDSCAPE
+#define CONFIG_ORIENTATION SCREEN_PORTRAIT
+
+#if 1
+#define NATIVE_MAX_WIDTH 480
+#define NATIVE_MAX_HEIGHT 640
+#else
+#define NATIVE_MAX_WIDTH 240
+#define NATIVE_MAX_HEIGHT 320
+#endif
#if CONFIG_ORIENTATION == SCREEN_PORTRAIT
-#define LCD_WIDTH 480
-#define LCD_HEIGHT 640
+#define LCD_WIDTH NATIVE_MAX_WIDTH
+#define LCD_HEIGHT NATIVE_MAX_HEIGHT
#else
-#define LCD_WIDTH 640
-#define LCD_HEIGHT 480
+#define LCD_WIDTH NATIVE_MAX_HEIGHT
+#define LCD_HEIGHT NATIVE_MAX_WIDTH
#endif
#define LCD_DEPTH 16 /* 65k colours */
@@ -80,10 +91,6 @@
should be defined as well. */
#define HAVE_LCD_SLEEP
-/* We don't use a setting but a fixed delay after the backlight has
- * turned off */
-#define LCD_SLEEP_TIMEOUT (5*HZ)
-
/* remote LCD */
//#define HAVE_REMOTE_LCD
#define LCD_REMOTE_WIDTH 79
diff --git a/firmware/export/dm320.h b/firmware/export/dm320.h
index 3d932c69c1..d6599a6745 100644
--- a/firmware/export/dm320.h
+++ b/firmware/export/dm320.h
@@ -27,17 +27,14 @@
#ifndef __DM320_H__
#define __DM320_H__
-#define LCD_BUFFER_SIZE (LCD_WIDTH*LCD_HEIGHT*2)
-#define TTB_SIZE (0x4000)
-/* must be 16Kb (0x4000) aligned */
-#if 1
-#define MEM_END 0x00900000 + (MEM*0x00100000)
-#define TTB_BASE_ADDR (MEM_END - TTB_SIZE)
-#else
-#define TTB_BASE_ADDR (0x04900000 - TTB_SIZE)
+#if !defined(__ASSEMBLER__) && !defined(__LD__)
+/* These variables are created during linking (app/boot.lds) */
+extern unsigned long _lcdbuf;
+extern unsigned long _ttbstart;
#endif
-#define TTB_BASE ((unsigned long *)TTB_BASE_ADDR) /* End of memory */
-#define FRAME ((short *) (TTB_BASE_ADDR - LCD_BUFFER_SIZE)) /* Right before TTB */
+
+#define TTB_BASE_ADDR (_ttbstart) /* End of memory */
+#define FRAME ((short *) (&_lcdbuf)) /* Right before TTB */
#define PHY_IO_BASE 0x00030000
#define DM320_REG(addr) (*(volatile unsigned short *)(PHY_IO_BASE + (addr)))