I don't know because I changed the code meanwhile but anyway, as there is an LCDOUT $fe,1 the next LCDOUT would overwrite "0pin..." and it does not.
"finish" is the label at the bottom of the int handler and nothing else will overwrite what is displayed so it shows the GOTO is ignored.

Ever worse, in another part of the code I'm checking what pin has triggered the interruption and I can read port 0 to 3 but not port 4.

I was wondering,... is there a limit to the number of GOTO we can use in a program? Is there such limitation?

"Also, make sure when you GOTO another routine from your interrupt
that the routine isn't outside the DISABLE/ENABLE block. If you do it returns
to the beginning of your interrupt handler. "
-> actually I don't GOTO to something outside the int handler.