==== email 1 ==== Looks like this: lockflash tftp _fredCerf.bin c0000000 boot c0000000 1 2 &lockflash &tftp _fredCerf.bin c0000000 &boot c0000000 0 1 Meaning.. if you let it boot by itself it wont go into the debugger, if instead you say exec 20000 then it does drop into it at first chance. ==== email 2 ==== This is the bootscript I used. tftp _fredCerf.bin c0000000 flash 00200000 c0000000 20000 &lockflash &tftp _fredCerf.bin c0000000 &boot c0000000 1 2 NB: It does NOT contain any \r (aka carriage return, aka CR, aka 0xD, aka 015) just plain \n (aka line feed, aka LF, aka 0xA, aka 012). I created the file with Emacs and then tr -d "\r" <FlashContentMMLiteAt20000.txt >o This is how I flashed it in place: memset c0000000 0 80 This makes sure there are zeroes at the end Note that the "80" is the size in hex of the file, check that its big enough, if you make the script more fancy. tftp bootscript c0000000 Gets the file from my machine, puts it at the start of SDRAM. dumpmem c0000000 80 Look at it and make sure its right (TFTP is UDP based and could get bad data).. flash 20000 c0000000 80 Stick it in place. Again, note the "80" size. And now for the surprise part. If you look at the script, it contains two type of commands: foo and &foo The second sort is the one that gets executed every time the card reboots, unless of course you stop it (with a CR or somethign). So whats the first sort for you ask. Well, you can get it executed by saying exec 20000 So if you execed the script I sent above it would ftp&flash the MMLite image at 200000. Whats that for you say ? Beats me... :-))