summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJens Arnold <amiconn@rockbox.org>2008-09-23 18:46:27 +0000
committerJens Arnold <amiconn@rockbox.org>2008-09-23 18:46:27 +0000
commit15d996a0236bd0c54567805e2647741a7dd61dd9 (patch)
treebdb0cab9df2c903b50aa12f27dc5fcef70ab9f5c
parent17a798400b69e0b64f635d953aeaac7e82c9263a (diff)
Disable bidirectional text handling and arabic joining in the bootloaders in order to save space. * Disable greyblitting in archos bootloaders for the same reason.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18584 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r--firmware/bidi.c15
-rw-r--r--firmware/target/sh/archos/lcd-as-archos-bitmap.S9
2 files changed, 19 insertions, 5 deletions
diff --git a/firmware/bidi.c b/firmware/bidi.c
index a7a3211c39..e6a4341f79 100644
--- a/firmware/bidi.c
+++ b/firmware/bidi.c
@@ -43,6 +43,7 @@
#define _isnewline(c) ((c=='\n' || c=='\r') ? 1 : 0)
#define XOR(a,b) ((a||b) && !(a&&b))
+#ifndef BOOTLOADER
static const arab_t * arab_lookup(unsigned short uchar)
{
if (uchar >= 0x621 && uchar <= 0x63a)
@@ -132,14 +133,18 @@ static void arabjoin(unsigned short * stringprt, int length)
}
}
}
+#endif /* !BOOTLOADER */
unsigned short *bidi_l2v(const unsigned char *str, int orientation)
{
- int length = utf8length(str);
static unsigned short utf16_buf[SCROLL_LINE_SIZE];
+ unsigned short *target, *tmp;
+#ifndef BOOTLOADER
static unsigned short bidi_buf[SCROLL_LINE_SIZE];
- unsigned short *heb_str, *target, *tmp; /* *broken_str */
+ unsigned short *heb_str; /* *broken_str */
int block_start, block_end, block_type, block_length, i;
+ int length = utf8length(str);
+#endif
/*
long max_chars=0;
int begin, end, char_count, orig_begin;
@@ -151,6 +156,11 @@ unsigned short *bidi_l2v(const unsigned char *str, int orientation)
str = utf8decode(str, target++);
*target = 0;
+#ifdef BOOTLOADER
+ (void)orientation;
+ return utf16_buf;
+
+#else /* !BOOTLOADER */
if (target == utf16_buf) /* empty string */
return target;
@@ -282,5 +292,6 @@ unsigned short *bidi_l2v(const unsigned char *str, int orientation)
return broken_str;
#endif
return heb_str;
+#endif /* !BOOTLOADER */
}
diff --git a/firmware/target/sh/archos/lcd-as-archos-bitmap.S b/firmware/target/sh/archos/lcd-as-archos-bitmap.S
index 31b83f4a2f..0396483737 100644
--- a/firmware/target/sh/archos/lcd-as-archos-bitmap.S
+++ b/firmware/target/sh/archos/lcd-as-archos-bitmap.S
@@ -203,7 +203,7 @@ _lcd_write_data:
/* This is the place to reenable the interrupts, if we have disabled
* them. See above. */
-
+#ifndef BOOTLOADER
.align 2
.global _lcd_grey_data
.type _lcd_grey_data,@function
@@ -345,7 +345,10 @@ _lcd_grey_data:
.short 0x0080
.align 2
-.lcdr:
- .long LCDR
.pmask:
.long 0x80808080
+#endif
+
+ .align 2
+.lcdr:
+ .long LCDR