[comp.sys.amiga.tech] Lattice 5.02 Blink bug?

watkins@hpspkla.HP.COM (Brian D. Watkins) (03/22/89)

  I ran into an interesting problem the other night when I tried
to assemble Werner Gunther's Xoper program using the Lattice 5.02
version of asm and Blink.

  The program is written to create two code hunks in the object
code.  When the program is executed, the second hunk is detached
from the segment list and launched as a new process.

  When I tried to execute the program my computer crashed.  Using
the Lattice debugger cpr I discovered that the segment being passed
to CreateProc was a data segment, not the second code segment!

  The assembler produces an object file that contains four hunks in
the following order:

  Hunk #     Name     Type
  ------------------------
    0       Startup   Code
    1       Xoper     Code
    2       blabla    Data
    3       Packet    Data

After Blink is used to satisfy the references to the _LVO symbols
and a few library routines from amiga.lib, the executable file
contains hunks in the following order:

  Hunk #     Name     Type
  ------------------------
     0      Startup   Code
     1      blabla    Data
     2      Packet    Data
     3      Xoper     Code
    4..11   various code and data hunks from amiga.lib

It seems that Blink is changing the order of the hunks, which really
screws up the Xoper program.  If I use the 5.0 version of Blink,
however, everything works fine.

  Is this a bug in Blink 5.02, or is it some new feature that I am
unaware of?  I do not have access to the Lattice BBS, so I am not sure
if they already know about this problem.  If anybody knows of a solution
please clue me in.

  Thanks in advance,
 
==============================
Brian Watkins
watkins%hpspkla@hplabs.hp.com 
hplabs.hp.com!hpspkla!watkins