Warum nicht einfach in der Interruptroutine eine Variable setzen (a=1) und dann im Hauptprogramm immer mal wieder überprüfen ob a nun 1 ist und entsprechend das Hauptprogramm verzweigen, anstatt direkt aus der Interruptroutine dorthin zu springen.