I've done some more investigation. It looks like the small code loop always works, so there's no issue with coming out of local reset. The stalling problem only happens about 5% of the time, after jumping to the main application, but before it reaches main(). I've verified that the jump address matches the location of_c_int00 in the main app. But this makes me think - is there anything bad about starting the main app this way?
I also added 8 'idle' instructions immediately before the jump to the main app, but is this necessary?
Thanks,
Curtis