I have flashed my clip+ with the unmodified dualboot.S code. It seems to work just fine but there does not seem to be a any extra delay in addition to the boot time for an unpatched firmware(as it appeared there should be from looking at dualboot.S). I tried upping the delay value from 0x500000 to 0x5000000 & 0x50000000 with no difference in the results. Looking closer now and scratching my head. Am I being a bit too paranoid do you suppose?
After looking through the code more closely I still think I should be seeing a delay with the patched firmware in relation to the unpatched and I do not. After I copy the newly patched firmware file to my clip+ it does do the upgrading firmware routine. And when I turn it back on it starts up asking for settings like it normally does after a firmware upgrade. However, there is no added delay when booting. In all cases there is about a 1 sec lag between pushing the power switch and seeing the OF splash start up. This leads me to believe that the delay code(5 sec in SVN & much more in my modified) in dualboot.S is somehow not running.
Here are the steps I used to produce my patched firmware:
- I built a clipv2 bootloader (I don't really think this matters as I'm not running actual rockbox code yet....)
- I used scramble -add=cli+ to produce bootloader-cli+.sansa
- I modified mkamsboot to work for clip+(just removing the #if (0)) and built it.
- I ran mkamsboot to produce patched firmware named Rclppa.bin
- I loaded the patched firmware on the clip+ and renamed to clppa.bin
- After seeing no delay the first time, I modified dualboot.S to try to increase the delay but was not successful.
Here is the diff and console output that I saw. http://pastie.org/807886
The patched firmware that I used seemed to work identically to the unpatched.