To wrap around the problem I wrote two macros which produce smaller code than the "lgoto" and "lcall" macros from MPASM. They are for 1k devices but can be easily extended for 2k PICs (only 4 cases to check) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - XGOTO MACRO label if label & 0x800 bsf PCLATH, 3 else bcf PCLATH, 3 endif goto label ENDM XCALL MACRO label LOCAL testlabel testlabel: if label & 0x800 bsf PCLATH, 3 else bcf PCLATH, 3 endif call label if testlabel & 0x800 bsf PCLATH, 3 else bcf PCLATH, 3 endif ENDM - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Does the linker produce the same efficient code? Best Regards, Thorsten. -- _____________________________________________ _/ uC-Stuff for MIDI at http://go.to/uCApps /_______ / Music is aesthetisized frequency (Klaus Schulze) / ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~