Millfork: a middle-level programming language targeting 6502- and Z80-based microcomputers and home consoles
This project is maintained by KarolS
LUnix uses relocatable code, which means that object addresses (.addr
) are not constants.
To help with this problem, new constants are defined, with a .rawaddr
suffix.
They are not relocated, so to use them, you need to manually relocate them
by adding relocation_offset
to their high bytes:
pointer p
p = variable.rawaddr
p.hi += relocation_offset