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