whatever9:
My application is like a game that is being played until the interrupt occurs,
You haven't said what cause the interrupt. If it is just based on time it should be easy to get the same functionality without an interrupt using millis().
If it is some external device that brings one of the Arduino pins high or low then your code could easily use polling to check it.
I can't imagine a game where microsecond timing matters.
Even if you insist on using an interrupt all it needs to do is set a flag variable that can be checked by your code.
Also, I can't imagine you want the Arduino to reset at the end of a game and lose the ability to keep track of previous game scores. A software reset should be entirely unnecessary.
...R