JayEll64@aol.com wrote:
>
> In a message dated 10/13/99 6:00:52 PM MDT, malcolmj1@juno.com writes:
>
> > this email is mainly directed towards jimmy mardell but i thought i'd
> > write it here on asm85.
> >
> > how did you make the relocation program (the one using the '&'s in the
> > source for absolute addresses) and implement it with usgard.
> >
> > does usgard search the program to find special bytes signifying an
> > absolute call and add the program address to it?
> >
> > does the relocation program add a certain constant address to the
> > absolute jumps?
> >
> > are these addresses calculated among the assembler's tasks, at run time,
> > or just before run time?
> >
> > thanks a ton.
> >
> > jimi
>
> What I *think* happens is that Usgard, when compiling the source code into
> object code (or binary code or whatever code comes between the source and
> *.85s file), it creates a table at the end that lists all the addresses that
> relocation needs to occur at. I don't think it has the addresses the actual
> instructions are referring to, though. Then maybe it's compressed...that's
> my theory...I'd actually be interested in knowing if you ever figure out the
> answer ;)
>
> JayEll
i asked jimmy about this once.
i believe he said that the table is the abs. address, i.e. when you do "ld hl,(&whatever)", it does the same as "ld hl,(program_addr)\ld de,(whatever)\add hl,de" (that actually is common sense - even i know that.) anyway, i believe they're not relative. 'course there's a 50% chance i'm wrong.
speaking of, anyone else out there use macs? 'cuz i know josh morris (macross) does... 'cuz i read the page. anyway, that was just a question