In an nterrupt process, you have the Mainline Program (MLP) and the Interrupt Sub Routine (ISR).
When you say "reset the program", do you mean that the MLP will be executed (once the ISR execution is done) from the beginning address and NOT from the return address?