Here is the issue. I am under the impression that PBP will tend to BANKS for me. So naturally I assume this:
Code:
PIR1.1 = 0
will be included and PBP will select bank 0 before executing this command. Here is my test code to prove to myself this IS NOT the case.

Code:
MAIN: 

   PIR1.1 = 0  
@MOVLW 3        'must use ASM so PBP doesn't set bank to "0" and get it right 
@MOVWF BSR    'by default.
   PIR1.1 = 1       ' This does not happen! PIR1.1 still = 0
@CLRF BSR
   PIR1.1 = 1       ' This one happens now that I have set the BSR to correct bank
   GOTO MAIN
Now if this is a bug, so be it. we can all work around and move on with our day. If this is not a bug, is there a way to find out what things DON'T set the correct bank?