Using A166 assembler in segmented mode...
I want to allocate some variables that are effectively used globally in one .asm file. They are located in a section that places them at the exact desired place in memory. I add a public declaration in the file where they are declared. BUT, in another .asm file in which I want to use them, I declare them as extern. So, they are visible, but when trying to use the variable I get a missing DPP information warning!
I understand that each file is translated on its own and the extern statement is effectively telling the assembler to "trust me and just use that symbol".
Is there anyway to make sure the assembler can do the DPP allocation for me, otherwise I have to do it all manually which is a massive job.
Eg
In Vars.asm
public someVariable
FIXED_LOC_VARIABLES SECTION DATA WORD 'ACQUIRE' ; These are in the first segment.
someVariable dsw 1
FIXED_LOC_VARIABLES ENDS
In Anotherfile.asm
extern someVariable:word
...
mov R0, someVariable <- D'oh, Missing DPP information warning
If I instead did either of these, it is OK: extern DPP3:someVariable:word mov R0, DPP3:someVariable exts #0, #1 mov R0,someVariable
Anybody know a tidy solution that doesn't involve manually specifying every DPP use. That is pretty scary for maintenance!