diff options
-rw-r--r-- | apps/Makefile | 7 | ||||
-rw-r--r-- | apps/bitmaps/mono/Makefile | 1 | ||||
-rw-r--r-- | apps/bitmaps/native/Makefile | 1 | ||||
-rw-r--r-- | apps/bitmaps/remote_mono/Makefile | 1 | ||||
-rw-r--r-- | apps/bitmaps/remote_native/Makefile | 1 | ||||
-rw-r--r-- | apps/misc.c | 6 | ||||
-rw-r--r-- | apps/plugins/Makefile | 8 | ||||
-rw-r--r-- | apps/plugins/bitmaps/mono/Makefile | 1 | ||||
-rw-r--r-- | apps/plugins/bitmaps/native/Makefile | 1 | ||||
-rw-r--r-- | apps/plugins/bitmaps/remote_mono/Makefile | 1 | ||||
-rw-r--r-- | apps/plugins/bitmaps/remote_native/Makefile | 1 | ||||
-rw-r--r-- | apps/recorder/icons.h | 49 | ||||
-rw-r--r-- | tools/bmp2rb.c | 61 |
13 files changed, 85 insertions, 54 deletions
diff --git a/apps/Makefile b/apps/Makefile index 26f96a5b79..55386c9e43 100644 --- a/apps/Makefile +++ b/apps/Makefile @@ -8,7 +8,7 @@ # INCLUDES= -I$(FIRMDIR)/include -I$(FIRMDIR)/export -I. -I$(BUILDDIR) \ - -I$(OBJDIR) + -I$(BUILDDIR)/bitmaps -I$(OBJDIR) DEPFILE = $(OBJDIR)/dep-apps LDS := $(FIRMDIR)/app.lds @@ -85,6 +85,8 @@ endif all: $(REALBIN) $(FLASHFILE) $(CODECS) $(ROCKS) $(ARCHOSROM) endif +$(DEPFILE): $(BITMAPLIBS) + dep: $(DEPFILE) build-codecs: @@ -95,7 +97,7 @@ build-bitmaps: @$(MAKE) -C bitmaps OBJDIR=$(OBJDIR)/bitmaps $(BITMAPLIBS): build-bitmaps - + rocks: build-codecs @$(MAKE) -C plugins/lib OBJDIR=$(OBJDIR)/plugins/lib @$(MAKE) -C plugins OBJDIR=$(OBJDIR)/plugins @@ -212,6 +214,7 @@ clean: @$(MAKE) -C plugins clean OBJDIR=$(OBJDIR)/plugins @$(MAKE) -C codecs clean OBJDIR=$(OBJDIR)/codecs @rm -rf $(OBJDIR)/recorder $(OBJDIR)/player + @rm -rf $(BUILDDIR)/bitmaps ifdef SIMVER @$(MAKE) -C $(SIMDIR) clean endif diff --git a/apps/bitmaps/mono/Makefile b/apps/bitmaps/mono/Makefile index ec75520735..a678b01ef4 100644 --- a/apps/bitmaps/mono/Makefile +++ b/apps/bitmaps/mono/Makefile @@ -21,6 +21,7 @@ DEPFILE = $(OBJDIR)/dep-bitmaps-mono BMP2RB = $(BMP2RB_MONO) OUTPUT = $(BUILDDIR)/libbitmapsmono.a +BMPINCDIR = $(BUILDDIR)/pluginbitmaps include $(TOOLSDIR)/makebmp.inc diff --git a/apps/bitmaps/native/Makefile b/apps/bitmaps/native/Makefile index 17e9376dd9..49e941799e 100644 --- a/apps/bitmaps/native/Makefile +++ b/apps/bitmaps/native/Makefile @@ -21,6 +21,7 @@ DEPFILE = $(OBJDIR)/dep-bitmaps-native BMP2RB = $(BMP2RB_NATIVE) OUTPUT = $(BUILDDIR)/libbitmapsnative.a +BMPINCDIR = $(BUILDDIR)/bitmaps include $(TOOLSDIR)/makebmp.inc diff --git a/apps/bitmaps/remote_mono/Makefile b/apps/bitmaps/remote_mono/Makefile index 9f6997c71a..4e119ba76d 100644 --- a/apps/bitmaps/remote_mono/Makefile +++ b/apps/bitmaps/remote_mono/Makefile @@ -21,6 +21,7 @@ DEPFILE = $(OBJDIR)/dep-bitmaps-remotemono BMP2RB = $(BMP2RB_REMOTEMONO) OUTPUT = $(BUILDDIR)/libbitmapsremotemono.a +BMPINCDIR = $(BUILDDIR)/pluginbitmaps include $(TOOLSDIR)/makebmp.inc diff --git a/apps/bitmaps/remote_native/Makefile b/apps/bitmaps/remote_native/Makefile index 882505ded9..573ee554b2 100644 --- a/apps/bitmaps/remote_native/Makefile +++ b/apps/bitmaps/remote_native/Makefile @@ -21,6 +21,7 @@ DEPFILE = $(OBJDIR)/dep-bitmaps-remotenative BMP2RB = $(BMP2RB_REMOTENATIVE) OUTPUT = $(BUILDDIR)/libbitmapsremotenative.a +BMPINCDIR = $(BUILDDIR)/bitmaps include $(TOOLSDIR)/makebmp.inc diff --git a/apps/misc.c b/apps/misc.c index c815589c06..6493e7b46f 100644 --- a/apps/misc.c +++ b/apps/misc.c @@ -604,12 +604,12 @@ int show_logo( void ) int font_h, font_w; lcd_clear_display(); - lcd_bitmap(rockboxlogo, 0, 10, ROCKBOXLOGO_WIDTH, ROCKBOXLOGO_HEIGHT); + lcd_bitmap(rockboxlogo, 0, 10, BMPWIDTH_rockboxlogo, BMPHEIGHT_rockboxlogo); #ifdef HAVE_REMOTE_LCD lcd_remote_clear_display(); - lcd_remote_bitmap(remote_rockboxlogo,10,14,REMOTE_ROCKBOXLOGO_WIDTH, - REMOTE_ROCKBOXLOGO_HEIGHT); + lcd_remote_bitmap(remote_rockboxlogo,10,14,BMPWIDTH_remote_rockboxlogo, + BMPHEIGHT_remote_rockboxlogo); #endif snprintf(version, sizeof(version), "Ver. %s", appsversion); diff --git a/apps/plugins/Makefile b/apps/plugins/Makefile index f7bd102a5b..404f1662e2 100644 --- a/apps/plugins/Makefile +++ b/apps/plugins/Makefile @@ -8,7 +8,8 @@ # INCLUDES = -I$(FIRMDIR)/include -I$(FIRMDIR)/export -I$(FIRMDIR)/common \ - -I$(FIRMDIR)/drivers -I$(APPSDIR) -Ilib -I$(BUILDDIR) + -I$(FIRMDIR)/drivers -I$(APPSDIR) -Ilib -I$(BUILDDIR) \ + -I$(BUILDDIR)/pluginbitmaps CFLAGS = $(GCCOPTS) $(INCLUDES) $(TARGET) $(EXTRA_DEFINES) \ -DTARGET_ID=$(TARGET_ID) -DMEM=${MEMORYSIZE} -DPLUGIN @@ -72,6 +73,10 @@ endif .PHONY: $(SUBDIRS) all: $(BUILDDIR)/libplugin.a $(ROCKS) $(SUBDIRS) $(DEPFILE) +$(DEPFILE): $(BITMAPLIBS) + +dep: $(DEPFILE) + $(BUILDDIR)/credits.raw: $(DOCSDIR)/CREDITS @echo "create credits.raw" $(SILENT)perl credits.pl < $< > $@ @@ -197,5 +202,6 @@ clean: $(SILENT)$(MAKE) -C bitmaps/remote_native clean OBJDIR=$(OBJDIR)/bitmaps/remote_native $(SILENT)$(MAKE) -C rockboy clean OBJDIR=$(OBJDIR)/rockboy $(SILENT)$(MAKE) -C searchengine clean OBJDIR=$(OBJDIR)/searchengine + @rm -rf $(BUILDDIR)/pluginbitmaps -include $(DEPFILE) diff --git a/apps/plugins/bitmaps/mono/Makefile b/apps/plugins/bitmaps/mono/Makefile index 54c06770b8..7b7e052117 100644 --- a/apps/plugins/bitmaps/mono/Makefile +++ b/apps/plugins/bitmaps/mono/Makefile @@ -21,6 +21,7 @@ DEPFILE = $(OBJDIR)/dep-bitmaps-mono BMP2RB = $(BMP2RB_MONO) OUTPUT = $(BUILDDIR)/libpluginbitmapsmono.a +BMPINCDIR = $(BUILDDIR)/pluginbitmaps include $(TOOLSDIR)/makebmp.inc diff --git a/apps/plugins/bitmaps/native/Makefile b/apps/plugins/bitmaps/native/Makefile index fd77a6213c..d7745ee9e2 100644 --- a/apps/plugins/bitmaps/native/Makefile +++ b/apps/plugins/bitmaps/native/Makefile @@ -21,6 +21,7 @@ DEPFILE = $(OBJDIR)/dep-bitmaps-native BMP2RB = $(BMP2RB_NATIVE) OUTPUT = $(BUILDDIR)/libpluginbitmapsnative.a +BMPINCDIR = $(BUILDDIR)/pluginbitmaps include $(TOOLSDIR)/makebmp.inc diff --git a/apps/plugins/bitmaps/remote_mono/Makefile b/apps/plugins/bitmaps/remote_mono/Makefile index 0875b4cbb5..db846e23a7 100644 --- a/apps/plugins/bitmaps/remote_mono/Makefile +++ b/apps/plugins/bitmaps/remote_mono/Makefile @@ -21,6 +21,7 @@ DEPFILE = $(OBJDIR)/dep-bitmaps-remotemono BMP2RB = $(BMP2RB_REMOTEMONO) OUTPUT = $(BUILDDIR)/libpluginbitmapsremotemono.a +BMPINCDIR = $(BUILDDIR)/pluginbitmaps include $(TOOLSDIR)/makebmp.inc diff --git a/apps/plugins/bitmaps/remote_native/Makefile b/apps/plugins/bitmaps/remote_native/Makefile index 91a42908f5..405f3fd5af 100644 --- a/apps/plugins/bitmaps/remote_native/Makefile +++ b/apps/plugins/bitmaps/remote_native/Makefile @@ -21,6 +21,7 @@ DEPFILE = $(OBJDIR)/dep-bitmaps-remotenative BMP2RB = $(BMP2RB_REMOTENATIVE) OUTPUT = $(BUILDDIR)/libpluginbitmapsremotenative.a +BMPINCDIR = $(BUILDDIR)/pluginbitmaps include $(TOOLSDIR)/makebmp.inc diff --git a/apps/recorder/icons.h b/apps/recorder/icons.h index 14e84cd64f..62ed73aeac 100644 --- a/apps/recorder/icons.h +++ b/apps/recorder/icons.h @@ -21,11 +21,19 @@ #include <lcd.h> +#ifdef HAVE_LCD_BITMAP + +/* External bitmaps */ + +#include <rockboxlogo.h> +#ifdef HAVE_REMOTE_LCD +#include <remote_rockboxlogo.h> +#endif + /* * Icons of size 6x8 pixels */ -#ifdef HAVE_LCD_BITMAP /* Symbolic names for icons */ enum icons_5x8 { @@ -78,45 +86,6 @@ extern const unsigned char bitmap_icons_6x8[Icon6x8Last][6]; extern const unsigned char bitmap_icons_7x8[Icon7x8Last][7]; extern const unsigned char bitmap_icon_disk[]; -extern const fb_data rockboxlogo[]; - -#if LCD_DEPTH == 1 -/* Archos targets */ -#define ROCKBOXLOGO_WIDTH 112 -#define ROCKBOXLOGO_HEIGHT 37 - -#elif (LCD_WIDTH == 160) && (LCD_DEPTH == 2) -/* iRiver H1x0 */ -#define ROCKBOXLOGO_WIDTH 160 -#define ROCKBOXLOGO_HEIGHT 53 - -#elif (LCD_WIDTH == 160) && (LCD_DEPTH == 16) -/* iAudio X5 */ -#define ROCKBOXLOGO_WIDTH 160 -#define ROCKBOXLOGO_HEIGHT 50 - -#elif (LCD_WIDTH == 176) && (LCD_DEPTH == 16) -/* iPod Nano */ -#define ROCKBOXLOGO_WIDTH 176 -#define ROCKBOXLOGO_HEIGHT 54 - -#elif (LCD_WIDTH == 320) && (LCD_DEPTH == 16) -/* iPod Video */ -#define ROCKBOXLOGO_WIDTH 320 -#define ROCKBOXLOGO_HEIGHT 98 - -#elif (LCD_WIDTH >= 220) && (LCD_DEPTH == 16) -/* iriver H3x0, iPod Color/Photo */ -#define ROCKBOXLOGO_WIDTH 220 -#define ROCKBOXLOGO_HEIGHT 68 -#endif - -#ifdef HAVE_REMOTE_LCD -extern const unsigned char remote_rockboxlogo[]; -#define REMOTE_ROCKBOXLOGO_WIDTH 112 -#define REMOTE_ROCKBOXLOGO_HEIGHT 37 -#endif - #define STATUSBAR_X_POS 0 #define STATUSBAR_Y_POS 0 /* MUST be a multiple of 8 */ #define STATUSBAR_HEIGHT 8 diff --git a/tools/bmp2rb.c b/tools/bmp2rb.c index d50b8c6f33..16bf7d9633 100644 --- a/tools/bmp2rb.c +++ b/tools/bmp2rb.c @@ -412,22 +412,47 @@ int transform_bitmap(const struct RGBQUAD *src, int width, int height, * some #define's ****************************************************************************/ -void generate_c_source(char *id, int width, int height, +void generate_c_source(char *id, char* header_dir, int width, int height, const unsigned short *t_bitmap, int t_width, int t_height, int t_depth) { FILE *f; + FILE *fh; int i, a; - - f = stdout; + char header_name[1024]; if (!id || !id[0]) id = "bitmap"; - fprintf(f, - "#define BMPHEIGHT_%s %ld\n" - "#define BMPWIDTH_%s %ld\n", - id, height, id, width); + f = stdout; + + if (header_dir && header_dir[0]) + { + snprintf(header_name,sizeof(header_name),"%s/%s.h",header_dir,id); + fh = fopen(header_name,"w+"); + + if (fh == NULL) + { + debugf("error - can't open '%s'\n", header_name); + return; + } + fprintf(fh, + "#define BMPHEIGHT_%s %ld\n" + "#define BMPWIDTH_%s %ld\n", + id, height, id, width); + if (t_depth <= 8) + fprintf(fh, "extern const unsigned char %s[];\n", id); + else + fprintf(fh, "extern const unsigned short %s[];\n", id); + + fclose(fh); + } else { + fprintf(f, + "#define BMPHEIGHT_%s %ld\n" + "#define BMPWIDTH_%s %ld\n", + id, height, id, width); + } + if (t_depth <= 8) fprintf(f, "const unsigned char %s[] = {\n", id); else @@ -478,6 +503,7 @@ void print_usage(void) { printf("Usage: %s [-i <id>] [-a] <bitmap file>\n" "\t-i <id> Bitmap name (default is filename without extension)\n" + "\t-h <dir> Create header file in <dir>/<id>.h\n" "\t-a Show ascii picture of bitmap\n" "\t-f <n> Generate destination format n, default = 0\n" "\t 0 Archos recorder, Ondio, Gmini 120/SP, Iriver H1x0 mono\n" @@ -495,6 +521,7 @@ int main(int argc, char **argv) { char *bmp_filename = NULL; char *id = NULL; + char* header_dir = NULL; int i; int ascii = false; int format = 0; @@ -510,6 +537,23 @@ int main(int argc, char **argv) { switch (argv[i][1]) { + case 'h': /* .h filename */ + if (argv[i][2]) + { + header_dir = &argv[i][2]; + } + else if (argc > i+1) + { + header_dir = argv[i+1]; + i++; + } + else + { + print_usage(); + exit(1); + } + break; + case 'i': /* ID */ if (argv[i][2]) { @@ -600,7 +644,8 @@ int main(int argc, char **argv) if (transform_bitmap(bitmap, width, height, format, &t_bitmap, &t_width, &t_height, &t_depth)) exit(1); - generate_c_source(id, width, height, t_bitmap, t_width, t_height, t_depth); + generate_c_source(id, header_dir, width, height, t_bitmap, + t_width, t_height, t_depth); } return 0; |