If you wrote in C then the compiler would have handled this for you.
In assembler you need to use the BANKSEL 'instruction'. Depending on what SFRs you referenced and how much data memory you used, you might have been lucky if everything fitted into Bank 0.
By the way, MPLab 8.9 is very old as are the MCUs you reference.
Anyway, it would not be the IDE that 'always fix(sic) it' as that is only the editor and control mechanism to the compiler/assembler. Hence my first comments.
Susan
It is almost impossible to create a useful assembly language application for a PIC16F628 or PIC16F877 without knowing how to select bank 1 to set and clear bits in the special function registers that control when a GPIO port pin is an input or an output bit.
To be specific the Microchip assembler DOES NOT select the appropriate bank for registers. This must be done explicitly in the assembly language source code.
The most convienient way is to use the assembler directive BANKSEL where the parameter is the full address of the register. This directive causes the assembler to insert the opcode required to set the bank select.