Branching to COMX slots and Elf EMS pages

Any long branch instruction or branch data from a slot or EMS page to a NON slot/page memory location will be corrected if affected by an insert or delete. However branches from NON slot/page memory to a slot or EMS page area will only be corrected if:

The 'LBR Sxx,yyyy' macro can be used for any long branch instruction (LBDF, LBNF, LBNQ, LBNZ, LBQ, LBR or LBZ). 'Sxx' specifies the slot code or EMS page where the branch should jump to and 'yyyy' defines the branch address.

For example, using a COMX with SB and following Program Configurations:

with the following code in RAM:

An 'insert' on address C010 in RAM bank 0 (slot code 11) will result in:

So the S11 branch is corrected as a byte is inserted in bank 0 but the S31 branch will remain unchanged as no byte is inserted in bank 1.

The ': Sxx,yyyy', 'LDL Sxx,Rx,yyyy' and 'LDRL Sxx,Rx,yyyy' macros work the same as the 'LBR Sxx,yyyy' macro. Except they are used for branch addresses and loading memory locations.