summaryrefslogtreecommitdiff
path: root/rbutil/ipodpatcher/main.c
diff options
context:
space:
mode:
Diffstat (limited to 'rbutil/ipodpatcher/main.c')
-rw-r--r--rbutil/ipodpatcher/main.c23
1 files changed, 15 insertions, 8 deletions
diff --git a/rbutil/ipodpatcher/main.c b/rbutil/ipodpatcher/main.c
index 1dcb916240..e1002b23c9 100644
--- a/rbutil/ipodpatcher/main.c
+++ b/rbutil/ipodpatcher/main.c
@@ -31,7 +31,11 @@
31#include "ipodpatcher.h" 31#include "ipodpatcher.h"
32#include "ipodio.h" 32#include "ipodio.h"
33 33
34#define VERSION "3.0 with v3.0 bootloaders" 34#ifdef RELEASE
35#undef VERSION
36#define VERSION "4.0 with v3.0 bootloaders (v1.0 for 2nd Gen Nano)"
37#endif
38
35 39
36enum { 40enum {
37 NONE, 41 NONE,
@@ -80,14 +84,14 @@ void print_usage(void)
80 fprintf(stderr," -l, --list\n"); 84 fprintf(stderr," -l, --list\n");
81 fprintf(stderr," -r, --read-partition bootpartition.bin\n"); 85 fprintf(stderr," -r, --read-partition bootpartition.bin\n");
82 fprintf(stderr," -w, --write-partition bootpartition.bin\n"); 86 fprintf(stderr," -w, --write-partition bootpartition.bin\n");
83 fprintf(stderr," -rf, --read-firmware filename.ipod\n"); 87 fprintf(stderr," -rf, --read-firmware filename.ipod[x]\n");
84 fprintf(stderr," -rfb, --read-firmware-bin filename.bin\n"); 88 fprintf(stderr," -rfb, --read-firmware-bin filename.bin\n");
85 fprintf(stderr," -wf, --write-firmware filename.ipod\n"); 89 fprintf(stderr," -wf, --write-firmware filename.ipod[x]\n");
86 fprintf(stderr," -wfb, --write-firmware-bin filename.bin\n"); 90 fprintf(stderr," -wfb, --write-firmware-bin filename.bin\n");
87#ifdef WITH_BOOTOBJS 91#ifdef WITH_BOOTOBJS
88 fprintf(stderr," -we, --write-embedded\n"); 92 fprintf(stderr," -we, --write-embedded\n");
89#endif 93#endif
90 fprintf(stderr," -a, --add-bootloader filename.ipod\n"); 94 fprintf(stderr," -a, --add-bootloader filename.ipod[x]\n");
91 fprintf(stderr," -ab, --add-bootloader-bin filename.bin\n"); 95 fprintf(stderr," -ab, --add-bootloader-bin filename.bin\n");
92 fprintf(stderr," -d, --delete-bootloader\n"); 96 fprintf(stderr," -d, --delete-bootloader\n");
93 fprintf(stderr," -f, --format\n"); 97 fprintf(stderr," -f, --format\n");
@@ -97,6 +101,8 @@ void print_usage(void)
97 fprintf(stderr," -x --dump-xml filename.xml\n"); 101 fprintf(stderr," -x --dump-xml filename.xml\n");
98 fprintf(stderr,"\n"); 102 fprintf(stderr,"\n");
99 103
104 fprintf(stderr,"The .ipodx extension is used for encrypted images for the 2nd Gen Nano.\n\n");
105
100#ifdef __WIN32__ 106#ifdef __WIN32__
101 fprintf(stderr,"DISKNO is the number (e.g. 2) Windows has assigned to your ipod's hard disk.\n"); 107 fprintf(stderr,"DISKNO is the number (e.g. 2) Windows has assigned to your ipod's hard disk.\n");
102 fprintf(stderr,"The first hard disk in your computer (i.e. C:\\) will be disk 0, the next disk\n"); 108 fprintf(stderr,"The first hard disk in your computer (i.e. C:\\) will be disk 0, the next disk\n");
@@ -148,7 +154,8 @@ int main(int argc, char* argv[])
148 int type; 154 int type;
149 struct ipod_t ipod; 155 struct ipod_t ipod;
150 156
151 fprintf(stderr,"ipodpatcher v" VERSION " - (C) Dave Chapman 2006-2007\n"); 157 fprintf(stderr,"ipodpatcher " VERSION "\n");
158 fprintf(stderr,"(C) Dave Chapman 2006-2009\n");
152 fprintf(stderr,"This is free software; see the source for copying conditions. There is NO\n"); 159 fprintf(stderr,"This is free software; see the source for copying conditions. There is NO\n");
153 fprintf(stderr,"warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n\n"); 160 fprintf(stderr,"warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n\n");
154 161
@@ -364,9 +371,9 @@ int main(int argc, char* argv[])
364 return 1; 371 return 1;
365 } 372 }
366 373
367 if (getmodel(&ipod,(ipod.ipod_directory[0].vers>>8)) < 0) { 374 if (getmodel(&ipod,(ipod.ipod_directory[ipod.ososimage].vers>>8)) < 0) {
368 fprintf(stderr,"[ERR] Unknown version number in firmware (%08x)\n", 375 fprintf(stderr,"[ERR] Unknown version number in firmware (%08x)\n",
369 ipod.ipod_directory[0].vers); 376 ipod.ipod_directory[ipod.ososimage].vers);
370 return -1; 377 return -1;
371 } 378 }
372 379
@@ -391,7 +398,7 @@ int main(int argc, char* argv[])
391 if (ipod.ramsize > 0) { printf("(%dMB RAM) ",ipod.ramsize); } 398 if (ipod.ramsize > 0) { printf("(%dMB RAM) ",ipod.ramsize); }
392 printf("(\"%s\")\n",ipod.macpod ? "macpod" : "winpod"); 399 printf("(\"%s\")\n",ipod.macpod ? "macpod" : "winpod");
393 400
394 if (ipod.ipod_directory[0].vers == 0x10000) { 401 if (ipod.ipod_directory[ipod.ososimage].vers == 0x10000) {
395 fprintf(stderr,"[ERR] *** ipodpatcher does not support the 2nd Generation Nano! ***\n"); 402 fprintf(stderr,"[ERR] *** ipodpatcher does not support the 2nd Generation Nano! ***\n");
396#ifdef WITH_BOOTOBJS 403#ifdef WITH_BOOTOBJS
397 printf("Press ENTER to exit ipodpatcher :"); 404 printf("Press ENTER to exit ipodpatcher :");