summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Stenberg <daniel@haxx.se>2002-05-04 12:19:36 +0000
committerDaniel Stenberg <daniel@haxx.se>2002-05-04 12:19:36 +0000
commitc8b6119b38739a10c5e450c6fe37d2f9101341c8 (patch)
tree691d694c6acf2fabf6d0d094780ea8f93998200c
parent9b79d0b96645901ac76a6c52f249dff0e85c14ff (diff)
downloadrockbox-c8b6119b38739a10c5e450c6fe37d2f9101341c8.tar.gz
rockbox-c8b6119b38739a10c5e450c6fe37d2f9101341c8.zip
Added weird circumvention macros for SIMULATOR builds. When we build a
charcell LCD simulator, we keep the bitmap LCD functions too, as we use the bitmap functionality to put characters on screen. But since the charcell LCD api and the bitmap LCD api use the same function names for a few functions, we include redef and undef files to fix that... git-svn-id: svn://svn.rockbox.org/rockbox/trunk@419 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r--firmware/drivers/lcd.c13
-rw-r--r--firmware/drivers/lcd.h11
2 files changed, 22 insertions, 2 deletions
diff --git a/firmware/drivers/lcd.c b/firmware/drivers/lcd.c
index 6df3f28ffd..66b1c682e7 100644
--- a/firmware/drivers/lcd.c
+++ b/firmware/drivers/lcd.c
@@ -325,6 +325,7 @@ static const unsigned char lcd_ascii[] = {
325}; 325};
326#endif /* HAVE_NEW_CHARCELL_LCD */ 326#endif /* HAVE_NEW_CHARCELL_LCD */
327 327
328#ifndef SIMULATOR
328void lcd_clear_display(void) 329void lcd_clear_display(void)
329{ 330{
330 int i; 331 int i;
@@ -347,8 +348,14 @@ void lcd_define_pattern (int which,char *pattern,int length)
347 for (i=0;i<length;i++) 348 for (i=0;i<length;i++)
348 lcd_write(FALSE,pattern[i]); 349 lcd_write(FALSE,pattern[i]);
349} 350}
351#endif
350 352
351#elif HAVE_LCD_BITMAP /* not CHARCELLS */ 353#endif
354#if defined(HAVE_LCD_BITMAP) || defined(SIMULATOR) /* not CHARCELLS */
355
356#if defined(HAVE_LCD_CHARCELLS) && defined(SIMULATOR)
357#include <chardef.h>
358#endif
352 359
353/* 360/*
354 * All bitmaps have this format: 361 * All bitmaps have this format:
@@ -681,6 +688,10 @@ void lcd_fontsize(char font, char *width, char *height)
681 } 688 }
682} 689}
683 690
691#if defined(HAVE_LCD_CHARCELLS) && defined(SIMULATOR)
692#include <charundef.h>
693#endif
694
684#else 695#else
685/* no LCD defined, no code to use */ 696/* no LCD defined, no code to use */
686#endif 697#endif
diff --git a/firmware/drivers/lcd.h b/firmware/drivers/lcd.h
index 7e0495cd99..21da38188a 100644
--- a/firmware/drivers/lcd.h
+++ b/firmware/drivers/lcd.h
@@ -63,7 +63,12 @@ extern void lcd_backlight(bool on);
63extern void lcd_puts(int x, int y, char *string); 63extern void lcd_puts(int x, int y, char *string);
64extern void lcd_define_pattern (int which,char *pattern,int length); 64extern void lcd_define_pattern (int which,char *pattern,int length);
65 65
66#elif HAVE_LCD_BITMAP 66#endif
67#if defined(HAVE_LCD_BITMAP) || defined(SIMULATOR)
68
69#if defined(HAVE_LCD_CHARCELLS) && defined(SIMULATOR)
70#include <chardef.h>
71#endif
67 72
68#define LCD_WIDTH 112 /* Display width in pixels */ 73#define LCD_WIDTH 112 /* Display width in pixels */
69#define LCD_HEIGHT 64 /* Display height in pixels */ 74#define LCD_HEIGHT 64 /* Display height in pixels */
@@ -82,6 +87,10 @@ extern void lcd_clearpixel(int x, int y);
82 87
83void lcd_fontsize(char font, char *width, char *height); 88void lcd_fontsize(char font, char *width, char *height);
84 89
90#if defined(HAVE_LCD_CHARCELLS) && defined(SIMULATOR)
91#include <charundef.h>
92#endif
93
85#endif /* CHARCELLS / BITMAP */ 94#endif /* CHARCELLS / BITMAP */
86 95
87#endif /* __LCD_H__ */ 96#endif /* __LCD_H__ */