BL5S220 not booting from flash

Can anyone explain this for a new user of a BL5S220 SBC.
To check my new board, I ran a simple routine to pulse the STAT pin. All OK when run in ram. Compiled to flash, disconnected programmer and reboot. Still OK.Booted from flash.
Then loaded a slightly more advanced program - sent a “hello world” to a serial lcd on RS232 port F. Once again, all OK when run in ram, but failed to run when complied to flash, with program cable disconnected, then reboot. (Note: works when run from flash when cable still attached, just won’t work from a reboot. ??)
Thanks all

Hello, I hope you are using the latest version of Dynamic C 10.72A?

Before creating the binary file,under Dynamic C 10.72A IDE options–>Project options–>Compiler,Choose Store Program in Flash, enable “Enable separate instruction and data spaces” Also select BL5S220 from Target less tab.
Now create the .bin file using Compile–>compile to .bin file–> then upload on to the module using Rabbit field utility application and test.

Thanks.

Thanks for your help. Yes, I am using DC10.72A. I tried the RFU method using a bin file created as you described. It appeared to load OK in the RFU but still no boot to my program after reset.
Just a question: why is is necessary to compile a bin file and use the RFU, and not simply the “compile to flash” in the target option?

Problem simply fixed by an endless loop at end of “main”
while(1) {
}

Without that endless loop, main() will exit and the board will reboot.

Thanks for the explanation. I should have tried this a few days ago.