Versuch doch mal, diese ganzen verschachtelten Gosubs aufzulösen - da wird einem ja schwindelig!
Besonders pikant ist der Gosub-Aussprung in der eigentlichen Interrupt-Routine - da spielt der Stack Pointer ganz schnell Roulette.

Lieber ein paar If-Then in der Hauptschleife, und gut ist.

Grüße

Torsten