diff options
author | Maurus Cuelenaere <mcuelenaere@gmail.com> | 2008-08-03 19:32:14 +0000 |
---|---|---|
committer | Maurus Cuelenaere <mcuelenaere@gmail.com> | 2008-08-03 19:32:14 +0000 |
commit | 06e3c660ccc09a5161bd600bf0ee5d5d7a59c589 (patch) | |
tree | 2d9015af877f4a4a1113abfbdc2f4c6944817a27 /tools/scramble.c | |
parent | 7a4c33358122e73afc06ea1d417365f06445aefb (diff) | |
download | rockbox-06e3c660ccc09a5161bd600bf0ee5d5d7a59c589.tar.gz rockbox-06e3c660ccc09a5161bd600bf0ee5d5d7a59c589.zip |
Prepare Creative bootloader compilation for future dual boot integration
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18187 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'tools/scramble.c')
-rw-r--r-- | tools/scramble.c | 31 |
1 files changed, 22 insertions, 9 deletions
diff --git a/tools/scramble.c b/tools/scramble.c index ace8337a1b..5dff4f4086 100644 --- a/tools/scramble.c +++ b/tools/scramble.c | |||
@@ -145,6 +145,7 @@ int main (int argc, char** argv) | |||
145 | char modelname[5]; | 145 | char modelname[5]; |
146 | int model_id; | 146 | int model_id; |
147 | enum { none, scramble, xor, tcc_sum, tcc_crc, add } method = scramble; | 147 | enum { none, scramble, xor, tcc_sum, tcc_crc, add } method = scramble; |
148 | bool creative_enable_ciff; | ||
148 | 149 | ||
149 | model_id = ARCHOS_PLAYER; | 150 | model_id = ARCHOS_PLAYER; |
150 | 151 | ||
@@ -341,20 +342,32 @@ int main (int argc, char** argv) | |||
341 | oname = argv[3]; | 342 | oname = argv[3]; |
342 | return ipod_encode(iname, oname, 3, true); /* Firmware image v3 */ | 343 | return ipod_encode(iname, oname, 3, true); /* Firmware image v3 */ |
343 | } | 344 | } |
344 | else if(!strncmp(argv[1], "-creative=", 10)) { | 345 | else if(!strncmp(argv[1], "-creative=", 10)) |
345 | iname = argv[2]; | 346 | { |
346 | oname = argv[3]; | 347 | if(!strcmp(argv[2], "-no-ciff")) |
348 | { | ||
349 | creative_enable_ciff = false; | ||
350 | iname = argv[3]; | ||
351 | oname = argv[4]; | ||
352 | } | ||
353 | else | ||
354 | { | ||
355 | creative_enable_ciff = true; | ||
356 | iname = argv[2]; | ||
357 | oname = argv[3]; | ||
358 | } | ||
347 | if(!strcmp(&argv[1][10], "zvm")) | 359 | if(!strcmp(&argv[1][10], "zvm")) |
348 | return zvm_encode(iname, oname, ZENVISIONM); | 360 | return zvm_encode(iname, oname, ZENVISIONM, creative_enable_ciff); |
349 | else if(!strcmp(&argv[1][10], "zvm60")) | 361 | else if(!strcmp(&argv[1][10], "zvm60")) |
350 | return zvm_encode(iname, oname, ZENVISIONM60); | 362 | return zvm_encode(iname, oname, ZENVISIONM60, creative_enable_ciff); |
351 | else if(!strcmp(&argv[1][10], "zenvision")) | 363 | else if(!strcmp(&argv[1][10], "zenvision")) |
352 | return zvm_encode(iname, oname, ZENVISION); | 364 | return zvm_encode(iname, oname, ZENVISION, creative_enable_ciff); |
353 | else if(!strcmp(&argv[1][10], "zenv")) | 365 | else if(!strcmp(&argv[1][10], "zenv")) |
354 | return zvm_encode(iname, oname, ZENV); | 366 | return zvm_encode(iname, oname, ZENV, creative_enable_ciff); |
355 | else if(!strcmp(&argv[1][10], "zen")) | 367 | else if(!strcmp(&argv[1][10], "zen")) |
356 | return zvm_encode(iname, oname, ZEN); | 368 | return zvm_encode(iname, oname, ZEN, creative_enable_ciff); |
357 | else { | 369 | else |
370 | { | ||
358 | fprintf(stderr, "unsupported Creative device: %s\n", &argv[1][10]); | 371 | fprintf(stderr, "unsupported Creative device: %s\n", &argv[1][10]); |
359 | return 2; | 372 | return 2; |
360 | } | 373 | } |