news.microsoft.com
2005-10-21 12:40:41 UTC
Hi
This is saga on linkers
1) I am visting a client as a consultant who has a vast program built using
VBDOS + Overlays. He was using the linker that comes with VBDOS Professional
1.0
It has got to the point where if he added a function to his program, it
would fail to link.
He assumes that he is running into some limit (pretty reasonable)
2) At that point I suggested downloading the last 16-bit Microsoft linkier,
that one that comes with Visual C++ 1.52c from Microsofts FTP site.
This worked.Whatever limit was with VBDOS Professional 1.0 seemed to go.
But the snag is found was that this eats 48 bytes of string space per
overlay, everytime one was introduced (I suspect this linker limit was also
present in the VBDOS 1.0 linker)
I also found out about the dynamic overlays and Microsoft MOVE technology
for the first time.
But I am really uncertain as to whether the linker is using the old system
of overlays or the new MOVE system (how can you tell from the MAP file?)
You see the linker response file is in the old format which is what makes me
think the old system is being used.
It does not match the FUNCTION layout in the Microsoft MOVE example.
3) At this point he bought BLINKER 7.0. On using this, it produces a
program. Links okay, no messages.
But the program just dies on the command line.
Literally you can type the name of the executable and it immediately
returns. Any code at the start where it has PRINT "I am here", does not get
executed, so it is dying on startup.
At this point I am at the clients sight trying to sort this out
/Rant Mode On
I have had it up to here with linkers, both Microsoft's 16-bit linker and
Blinker
The map fileas are very uninformative. With Microsoft's I cannot tell if it
is using static or dynamic overlays (and the map file does not say).
With Blinker, I have no idea, (yet) why the executable dies.
With both, I cannot tell what libraries the linkers link from.
The Blinker documentation is weak.
It mentions about dynamic overlays but says that they are only applicable to
Clipper, not VBDOS (wonder if that was true but just a case of old
documentation not updated)
I have not seen proper BLINKER examples.
/Rant Mode Off
Any words of wisdom appreciated
Stephen Howe
This is saga on linkers
1) I am visting a client as a consultant who has a vast program built using
VBDOS + Overlays. He was using the linker that comes with VBDOS Professional
1.0
It has got to the point where if he added a function to his program, it
would fail to link.
He assumes that he is running into some limit (pretty reasonable)
2) At that point I suggested downloading the last 16-bit Microsoft linkier,
that one that comes with Visual C++ 1.52c from Microsofts FTP site.
This worked.Whatever limit was with VBDOS Professional 1.0 seemed to go.
But the snag is found was that this eats 48 bytes of string space per
overlay, everytime one was introduced (I suspect this linker limit was also
present in the VBDOS 1.0 linker)
I also found out about the dynamic overlays and Microsoft MOVE technology
for the first time.
But I am really uncertain as to whether the linker is using the old system
of overlays or the new MOVE system (how can you tell from the MAP file?)
You see the linker response file is in the old format which is what makes me
think the old system is being used.
It does not match the FUNCTION layout in the Microsoft MOVE example.
3) At this point he bought BLINKER 7.0. On using this, it produces a
program. Links okay, no messages.
But the program just dies on the command line.
Literally you can type the name of the executable and it immediately
returns. Any code at the start where it has PRINT "I am here", does not get
executed, so it is dying on startup.
At this point I am at the clients sight trying to sort this out
/Rant Mode On
I have had it up to here with linkers, both Microsoft's 16-bit linker and
Blinker
The map fileas are very uninformative. With Microsoft's I cannot tell if it
is using static or dynamic overlays (and the map file does not say).
With Blinker, I have no idea, (yet) why the executable dies.
With both, I cannot tell what libraries the linkers link from.
The Blinker documentation is weak.
It mentions about dynamic overlays but says that they are only applicable to
Clipper, not VBDOS (wonder if that was true but just a case of old
documentation not updated)
I have not seen proper BLINKER examples.
/Rant Mode Off
Any words of wisdom appreciated
Stephen Howe