[net.micro.cpm] LINK-80

phil@westcsr.UUCP (Phil Thompson) (01/03/85)

<>
	I have a library in .IRL format that contains, amongst others,
one routine called IN and another called OUT. When linked with LINK-80
these are correctly read from the library and appear in the symbol table
but the instructions that CALL them have the wrong addresses.

	I assume that if I were to give them different names then everything
would be OK (other routines from the library link with no problems) and the
only thing about these two is that they have the same names as 8080 op-codes
but LINK doesn't know about those.

	Can anybody suggest what might be going on and provide a fix. I
don't want to change the names of the routines because I have a lot of
source code that refers to them.

Thanks,
Phil Thompson	..!ukc!west44!westcsr
		..!ukc!west44

andrew@orca.UUCP (Andrew Klossner) (01/07/85)

[]

	"I have a library in .IRL format that contains, amongst others,
	one routine called IN and another called OUT. When linked with
	LINK-80 these are correctly read from the library and appear in
	the symbol table but the instructions that CALL them have the
	wrong addresses ... Can anybody suggest what might be going on
	and provide a fix."

Look to the assembler instead of the linker.  Many assemblers will
quietly substitute the value of the opcode (such as IN or OUT) when you
use it as an address in an instruction.

  -- Andrew Klossner   (decvax!tektronix!orca!andrew)       [UUCP]
                       (orca!andrew.tektronix@csnet-relay)  [ARPA]