. where do you see I'm using a bootloader?
my bad, i was thinking back to bootloader issues i had with a 87j11 and 128k relocations going bad
with similar results.
a quick look at a lst file of your code shows a fair bit of this going on for the "DEC" section of your code
the upper portion of the hserout2j label address is ignored.
Code:
M endif01EE4E 6A1C M clrf (R2) + 2
01EE50 6A1D M clrf (R2) + 3
00270 HSEROUT2DEC?
M MOVE?CW HSEROUT2J, R8 /// hserout2j is a more than a word long when >64k
M ifdef USE_LINKER
M CHK?RP R8
M movlw low (HSEROUT2J)
M movwf R8
M movlw high (HSEROUT2J)
M movwf (R8) + 1
hserout2j being a label
Code:
HSEROUT2 0001EC06HSEROUT2?C
HSEROUT2COUNT?C
HSEROUT2DEC?
HSEROUT2J 0001EC04
HSEROUT2J_USED 00000001
HSEROUT2NUM?W
HSEROUT2_USED 00000001
HSER_BAUD 00000960
HSER_BITS 00000008
Bookmarks