OK, wait a minute ... sorry.
I forgot, it's not using DT_INTS anymore.

While the 16F1's do save context automatically, they do not reset BSR.
Whatever bank it's in when the interrupt happens is the bank you are in when getting to the ISR.

BSR = 0
Should be the first statement in an ISR that is not using DT_INTS.

Blushing ...