summaryrefslogtreecommitdiff
path: root/tools
diff options
context:
space:
mode:
authorDave Chapman <dave@dchapman.com>2008-10-12 19:34:47 +0000
committerDave Chapman <dave@dchapman.com>2008-10-12 19:34:47 +0000
commit6bbe66afa03c6c6728bfc90d340ddf391ef94fbc (patch)
tree5842704a432c1877636c94e8c3181f1c4629845a /tools
parentf958717d43420655519ae079ef0d35aa912411b2 (diff)
downloadrockbox-6bbe66afa03c6c6728bfc90d340ddf391ef94fbc.zip
rockbox-6bbe66afa03c6c6728bfc90d340ddf391ef94fbc.tar.gz
rockbox-6bbe66afa03c6c6728bfc90d340ddf391ef94fbc.tar.bz2
rockbox-6bbe66afa03c6c6728bfc90d340ddf391ef94fbc.tar.xz
Make mkamsboot safer by introducing the use of ".sansa" files to store Sansa V2 bootloader and firmware files. These files are the same format (a simple 8-byte header consisting of a 32-bit checksum followed by 4-char model name is prepended to the binary data) as that used by lots of other Rockbox targets (.ipod, iriver etc). Support added to scramble/mkamsboot for both clip and e200v2, even though the latter is not in SVN yet. Also add a check of the whole-file original firmware checksum to mkamsboot and add a new $scramblebitmaptools toolset variable in configure. The output of this version of mkamsboot is confirmed to be md5sum-identical to the previous version.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18789 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'tools')
-rwxr-xr-xtools/configure30
-rw-r--r--tools/scramble.c6
2 files changed, 21 insertions, 15 deletions
diff --git a/tools/configure b/tools/configure
index 9213aa2..f231d09 100755
--- a/tools/configure
+++ b/tools/configure
@@ -722,9 +722,10 @@ fi
ipodbitmaptools="$toolset scramble bmp2rb"
gigabeatbitmaptools="$toolset scramble descramble bmp2rb"
tccbitmaptools="$toolset scramble mktccboot bmp2rb"
- ams3525bitmaptools="$toolset bmp2rb"
- # generic is used by IFP, H10, Sansa-e200
+ # generic is used by IFP, Meizu and Onda
genericbitmaptools="$toolset bmp2rb"
+ # scramble is used by all other targets
+ scramblebitmaptools="$genericbitmaptools scramble"
# ---- For each target ----
@@ -1030,7 +1031,7 @@ fi
bootoutput="H10_20GC.mi4"
# toolset is the tools within the tools directory that we build for
# this particular target.
- toolset="$genericbitmaptools scramble"
+ toolset=$scramblebitmaptools
# architecture, manufacturer and model for the target-tree build
t_cpu="arm"
t_manufacturer="iriver"
@@ -1054,7 +1055,7 @@ fi
bootoutput="H10.mi4"
# toolset is the tools within the tools directory that we build for
# this particular target.
- toolset="$genericbitmaptools scramble"
+ toolset=$scramblebitmaptools
# architecture, manufacturer and model for the target-tree build
t_cpu="arm"
t_manufacturer="iriver"
@@ -1449,7 +1450,7 @@ fi
bootoutput="pp5020.mi4"
# toolset is the tools within the tools directory that we build for
# this particular target.
- toolset="$genericbitmaptools scramble"
+ toolset=$scramblebitmaptools
# architecture, manufacturer and model for the target-tree build
t_cpu="arm"
t_manufacturer="olympus"
@@ -1572,7 +1573,7 @@ fi
bootoutput="PP5022.mi4"
# toolset is the tools within the tools directory that we build for
# this particular target.
- toolset="$genericbitmaptools scramble"
+ toolset=$scramblebitmaptools
# architecture, manufacturer and model for the target-tree build
t_cpu="arm"
t_manufacturer="sandisk"
@@ -1599,7 +1600,7 @@ fi
bootoutput="pp5022.mi4"
# toolset is the tools within the tools directory that we build for
# this particular target.
- toolset="$genericbitmaptools scramble"
+ toolset=$scramblebitmaptools
# architecture, manufacturer and model for the target-tree build
t_cpu="arm"
t_manufacturer="sandisk"
@@ -1623,7 +1624,7 @@ fi
bootoutput="firmware.mi4"
# toolset is the tools within the tools directory that we build for
# this particular target.
- toolset="$genericbitmaptools scramble"
+ toolset=$scramblebitmaptools
# architecture, manufacturer and model for the target-tree build
t_cpu="arm"
t_manufacturer="sandisk"
@@ -1685,11 +1686,12 @@ fi
arm9tdmicc
bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
bmp2rb_native="$bmp2rb_mono"
- boottool="cp"
- bootoutput="rockbox.bin"
+ tool="$rootdir/tools/scramble -add=clip"
+ output="rockbox.sansa"
+ bootoutput="bootloader-clip.sansa"
appextra="recorder:gui"
plugins=""
- toolset="$ams3525bitmaptools"
+ toolset=$scramblebitmaptools
t_cpu="arm"
t_manufacturer="as3525"
t_model="sansa-clip"
@@ -1713,7 +1715,7 @@ fi
bootoutput="pp5020.mi4"
# toolset is the tools within the tools directory that we build for
# this particular target.
- toolset="$genericbitmaptools scramble"
+ toolset=$scramblebitmaptools
# architecture, manufacturer and model for the target-tree build
t_cpu="arm"
t_manufacturer="tatung"
@@ -1737,7 +1739,7 @@ fi
bootoutput="FWImage.ebn"
# toolset is the tools within the tools directory that we build for
# this particular target.
- toolset="$genericbitmaptools scramble"
+ toolset=$scramblebitmaptools
# architecture, manufacturer and model for the target-tree build
t_cpu="arm"
t_manufacturer="philips"
@@ -1761,7 +1763,7 @@ fi
bootoutput="FWImage.ebn"
# toolset is the tools within the tools directory that we build for
# this particular target.
- toolset="$genericbitmaptools scramble"
+ toolset=$scramblebitmaptools
# architecture, manufacturer and model for the target-tree build
t_cpu="arm"
t_manufacturer="philips"
diff --git a/tools/scramble.c b/tools/scramble.c
index 649af6e..429823a 100644
--- a/tools/scramble.c
+++ b/tools/scramble.c
@@ -122,7 +122,7 @@ void usage(void)
"\t (X values: h100, h120, h140, h300, ipco, nano, ipvd, mn2g\n"
"\t ip3g, ip4g, mini, iax5, iam5, iam3, h10, h10_5gb,\n"
"\t tpj2, c200, e200, giga, gigs, m100, m500, d2,\n");
- printf("\t 9200, 1630, ldax, m200)\n");
+ printf("\t 9200, 1630, ldax, m200, clip, e2v2)\n");
printf("\nNo option results in Archos standard player/recorder format.\n");
exit(1);
@@ -285,6 +285,10 @@ int main (int argc, char** argv)
modelnum = 33;
else if(!strcmp(&argv[1][5], "9200")) /* Philips SA9200 */
modelnum = 34;
+ else if (!strcmp(&argv[1][5], "clip"))
+ modelnum = 50;
+ else if (!strcmp(&argv[1][5], "e2v2"))
+ modelnum = 51;
else {
fprintf(stderr, "unsupported model: %s\n", &argv[1][5]);
return 2;