diff options
author | Jens Arnold <amiconn@rockbox.org> | 2009-02-09 00:32:59 +0000 |
---|---|---|
committer | Jens Arnold <amiconn@rockbox.org> | 2009-02-09 00:32:59 +0000 |
commit | 0d935ce75e1408dfd9832ae7dbb7d84df50a645d (patch) | |
tree | 9ddcc5d21dcd0e576d0fa824e74c58755fa9d1a0 /apps/misc.h | |
parent | 94537f954e67d44fdd9703c062c4ee53599e0e74 (diff) | |
download | rockbox-0d935ce75e1408dfd9832ae7dbb7d84df50a645d.tar.gz rockbox-0d935ce75e1408dfd9832ae7dbb7d84df50a645d.zip |
Put the display colours for monochrome and greyscale targets into the target config files, and use them both for the simulator UI and screendumps. The Clip now shows the split display properly in screendumps and simulator. A side effect is that screendumps of ordinary monochrome targets are now 4-bit BMP files (saves an alternate code path, and might be more compatible with some gfx programs). * Simplify the simulation of split display, and also simplify greylib simulation. The simulator now always calculates 129 shades (2*128 for a Clip sim), and just uses 2 (or 4) of those for native display simulation. * Centralised the simulator LCD dimension definition.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19950 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/misc.h')
-rw-r--r-- | apps/misc.h | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/apps/misc.h b/apps/misc.h index 22ae4849a4..99e709c2c8 100644 --- a/apps/misc.h +++ b/apps/misc.h | |||
@@ -93,6 +93,18 @@ void screen_dump(void); | |||
93 | void screen_dump_set_hook(void (*hook)(int fh)); | 93 | void screen_dump_set_hook(void (*hook)(int fh)); |
94 | #endif | 94 | #endif |
95 | 95 | ||
96 | /* Make BMP colour map entries from R, G, B triples, without and with blending. | ||
97 | * Not within HAVE_LCD_BITMAP because it is also used for the Player sim */ | ||
98 | #define RED_CMP(c) (((c) >> 16) & 0xff) | ||
99 | #define GREEN_CMP(c) (((c) >> 8) & 0xff) | ||
100 | #define BLUE_CMP(c) ((c) & 0xff) | ||
101 | |||
102 | #define BMP_COLOR(c) BLUE_CMP(c), GREEN_CMP(c), RED_CMP(c), 0 | ||
103 | #define BMP_COLOR_MIX(c1, c2, num, den) \ | ||
104 | (BLUE_CMP(c2) - BLUE_CMP(c1)) * (num) / (den) + BLUE_CMP(c1), \ | ||
105 | (GREEN_CMP(c2) - GREEN_CMP(c1)) * (num) / (den) + GREEN_CMP(c1), \ | ||
106 | (RED_CMP(c2) - RED_CMP(c1)) * (num) / (den) + RED_CMP(c1), 0 | ||
107 | |||
96 | bool settings_parseline(char* line, char** name, char** value); | 108 | bool settings_parseline(char* line, char** name, char** value); |
97 | long default_event_handler_ex(long event, void (*callback)(void *), void *parameter); | 109 | long default_event_handler_ex(long event, void (*callback)(void *), void *parameter); |
98 | long default_event_handler(long event); | 110 | long default_event_handler(long event); |