Index: tools/configure =================================================================== --- tools/configure (revision 12593) +++ tools/configure (working copy) @@ -581,11 +581,12 @@ ==Archos== ==iriver== ==Apple iPod== 0) Player/Studio 10) H120/H140 20) Color/Photo 1) Recorder 11) H320/H340 21) Nano - 2) FM Recorder 12) iHP-100/110/115 22) Video + 2) FM Recorder 12) iHP-100/110/115 22) Video (30Gb) 3) Recorder v2 13) iFP-790 23) 3G 4) Ondio SP 14) H10 20Gb 24) 4G Grayscale 5) Ondio FM 15) H10 5/6Gb 25) Mini 1G 6) AV300 26) Mini 2G + 27) Video (60Gb) ==iAudio== ==Toshiba== ==SanDisk== 30) X5/X5V/X5L 40) Gigabeat F 50) Sansa e200 @@ -986,11 +987,11 @@ t_model="nano" ;; - 22|ipodvideo) + 22|ipodvideo32) target_id=15 - archos="ipodvideo" + archos="ipodvideo32" target="-DIPOD_VIDEO" - memory=32 # 30GB models have 32MB, 60GB have 64MB + memory=32 # 30GB models have 32MB arm7tdmicc tool="$rootdir/tools/scramble -add=ipvd" bmp2rb_mono="$rootdir/tools/bmp2rb -f 0" @@ -1011,6 +1012,31 @@ t_model="video" ;; + 27|ipodvideo64) + target_id=15 + archos="ipodvideo64" + target="-DIPOD_VIDEO" + memory=64 # 60GB have 64MB + arm7tdmicc + tool="$rootdir/tools/scramble -add=ipvd" + bmp2rb_mono="$rootdir/tools/bmp2rb -f 0" + bmp2rb_native="$rootdir/tools/bmp2rb -f 4" + output="rockbox.ipod" + appextra="recorder:gui" + archosrom="" + flash="" + plugins="yes" + codecs="libmad liba52 libffmpegFLAC libTremor libwavpack libmusepack libalac libfaad libm4a libspeex" + bootoutput="bootloader-$archos.ipod" + # toolset is the tools within the tools directory that we build for + # this particular target. + toolset=$ipodbitmaptools + # architecture, manufacturer and model for the target-tree build + t_cpu="arm" + t_manufacturer="ipod" + t_model="video" + ;; + 23|ipod3g) target_id=16 archos="ipod3g" Index: firmware/target/arm/crt0-pp.S =================================================================== --- firmware/target/arm/crt0-pp.S (revision 12597) +++ firmware/target/arm/crt0-pp.S (working copy) @@ -88,7 +88,12 @@ ldr r3, =0x3f84 /* r3 and r1 values here are magic, don't touch */ orr r3, r3, r5 /* adjust for execute address */ ldr r2, =0xf000f014 +#if MEM > 32 + mov r1, #0x7400 /* r1 appears to indicate how much memory (not in + bytes) is remapped */ +#else mov r1, #0x3a00 +#endif ldr r0, =0xf000f010 mov pc, #0x40000000