I need a way to "assemble" a 16 bit reference to a ***BYTE*** address to some label that has been defined within the .text section .
asm code of some sort goes here
.word foo ; this will assemble a cell address, i need byte address
.word (2 * foo) failes. cannot use *
.word (foo + 5) works but .word (foo + foo) does not
also .word pm(foo) also does not work because when i do this some rjmp assembled further on in the build suddenly fails to assemble because its target is now mysteriously out of range.
i have spent the past 3 or 4 hours trying to figure this out
also, doing the conversion at run time is exactly what I am trying to avoid, in fact having to do that would turn my very very very simple code into a horrendously over complificated gordian knot.
I am ***NOT*** using gcc ***AT ALL***
I am therefore NOT using avr-libc lol