The need is increasing to program a second application code image in flash while still executing the microcontroller's application and then switching to the new code image. Example implementations for Freescale microcontroller architectures are presented to demonstrate how to do concurrent programming with application execution and subsequent remap to the new application code image.