Hi,
I'm trying to load several programs into MSP430 internal flash through an MSP-FET430UIF using the deburserver API.
The problem is I cannot activate the "Retain Unchange memory" programmatically. It seems that the call to:
"debugSession.options.setString("MSP430DownloadOptions", "Retain unchanged memory");"
does nothing ( my simplified java application source code is included below).
Program1.out uses memory range 0x8000-0x8FFF and program2.out is linked above 0x9000 . The application works fine, i.e. successfully loads the .out files into flash. However at the end of the execution, the MSP430's flash memory range 0x8000-0x8FFF is filled with "FF" bytes. If I stop the program just before the loading of program2.out, I can see that program1.out is well loaded in range 0x8000-0x8FFF.
Thanks for your help; this is very critical.
{
dssScriptEnv = ScriptingEnvironment.instance();
debugServer = (DebugServer) dssScriptEnv.getServer("DebugServer.1");
debugServer.setConfig(scenario.getCPUConfigFile());
debugSession = debugServer.openSession("*", "*");
debugSession.options.setBoolean("RemoveDebugStateAtConnect", false);
debugSession.options.setBoolean("AutoRunToLabelOnReset", false);
debugSession.options.setBoolean("AutoRunToLabelOnRestart", false);
debugSession.options.setBoolean("AllowInterruptsWhenHalted", false);
debugSession.options.setString("MSP430DownloadOptions", "Retain unchanged memory");
debugSession.options.printOptions(".*");
debugSession.target.connect();
debugSession.memory.loadProgram("program1.out");
debugSession.memory.loadProgram("program2.out");
debugSession.terminate();