Hi,

I need to assemble 24-bit integers in avr-as as if they were generated from C code like

        const __pgmx char c = 1;
        const __pgmx char *pc = &c;

where __pgmx generates 24-bit addresses.

If pc just held a 16 bit address the code was

        .global   pc
                .data
                .type   pc, @object
                .size   pc, 2
        pc:
                .word c

Now the question is: How to write down a 24-bit symbol?

        .global   pc
                .data
                .type   pc, @object
                .size   pc, 3
        pc:
                .word c
                .byte hlo8(c) ??? error from as

gives an error from the assembler, same for .byte hh8(c)

Moreover, a const-integer offset can be added to c:

                .word c+2
                .byte hlo8(c+2) ??? error from as

What is the right way to write it own?

Many thanks,

Johann


_______________________________________________
AVR-GCC-list mailing list
AVR-GCC-list@nongnu.org
https://lists.nongnu.org/mailman/listinfo/avr-gcc-list

Reply via email to