diff options
| -rw-r--r-- | firmware/export/font.h | 8 | ||||
| -rwxr-xr-x | tools/buildzip.pl | 29 |
2 files changed, 27 insertions, 10 deletions
diff --git a/firmware/export/font.h b/firmware/export/font.h index 01751ad..beb6347 100644 --- a/firmware/export/font.h +++ b/firmware/export/font.h @@ -26,9 +26,13 @@ #if defined(HAVE_LCD_BITMAP) || defined(SIMULATOR) -/* max static loadable fonts buffer*/ +/* max static loadable font buffer size */ #ifndef MAX_FONT_SIZE -#define MAX_FONT_SIZE 4000 /* max total fontsize allocation*/ +#if LCD_HEIGHT > 64 +#define MAX_FONT_SIZE 10000 +#else +#define MAX_FONT_SIZE 4000 +#endif #endif /* diff --git a/tools/buildzip.pl b/tools/buildzip.pl index a75f424..bdad0fc 100755 --- a/tools/buildzip.pl +++ b/tools/buildzip.pl @@ -14,6 +14,10 @@ if($ARGV[0] eq "-v") { shift @ARGV; } +my $target = $ARGV[0]; +my $cppdef = $target; + +my $exe = $ARGV[1]; sub filesize { my ($filename)=@_; @@ -95,13 +99,26 @@ sub buildzip { closedir DIR; my $maxfont; - open(HEADER, "<$ROOT/firmware/export/font.h"); - while(<HEADER>) { - if(/^\#define MAX_FONT_SIZE[ \t]*(\d+)/) { + + open(SIZE, ">ziptemp"); + print SIZE <<STOP +\#include "font.h" +Font Size We Want: MAX_FONT_SIZE +STOP +; + close(SIZE); + my $c="cat ziptemp | gcc $cppdef -I. -I../firmware/export -E -P -"; + # print STDERR "C: $c\n"; + open(GETSIZE, "$c|"); + + while(<GETSIZE>) { + if($_ =~ /^Font Size We Want: (\d*)/) { $maxfont = $1; + last; } } - close(HEADER); + close(GETSIZE); + unlink("ziptemp"); die "no decent max font size" if ($maxfont < 2000); for(@fonts) { @@ -182,10 +199,6 @@ sub runone { ($type eq "player")?0:1); }; -my $target = $ARGV[0]; - -my $exe = $ARGV[1]; - if(!$exe) { # not specified, guess! if($target =~ /(recorder|ondio)/i) { |