Make EXPORTed symbols agree with EDASM REL format

This commit is contained in:
David Schmenk 2014-05-24 18:25:55 -07:00
parent e9f854c06a
commit 2f4eb4843c
3 changed files with 3 additions and 3 deletions

View File

@ -1157,7 +1157,7 @@ def loadmod(mod)
;
; EXPORT symbol - add it to the global symbol table.
;
addr = (esd):1 + modfix
addr = (esd):1 + modfix - MODADDR
if uword_isge(addr, bytecode)
;
; Use the def directory address for bytecode.

View File

@ -374,7 +374,7 @@ void emit_esd(void)
{
emit_dci(&idglobal_name[i][1], idglobal_name[i][0]);
printf("\t%s\t$08\t\t\t; ENTRY SYMBOL FLAG\n", DB);
printf("\t%s\t%s-_SEGBEGIN\t\t\n", DW, tag_string(idglobal_tag[i], idglobal_type[i]));
printf("\t%s\t%s\t\t\n", DW, tag_string(idglobal_tag[i], idglobal_type[i]));
}
}
printf("\t%s\t$00\t\t\t; END OF ESD\n", DB);

View File

@ -394,7 +394,7 @@ int load_mod(byte *mod)
else if (esd[0] & 0x08)
{
addr = esd[1] | (esd[2] << 8);
addr += modfix;
addr += modfix - MOD_ADDR;
if (show_state) printf("\tEXPORT %s@$%04X\n", string, addr);
if (addr >= bytecode)
addr = def_lookup(cdd, addr);