Thread overview
Module=SDS.lib(c)
Jan 04, 2010
veb
Jan 04, 2010
Walter Bright
Jan 04, 2010
veb
Jan 05, 2010
Walter Bright
Jan 05, 2010
veb
January 04, 2010
Hello,

I have to made a program with the small model of dos 16 bits, so it use SDS.lib to link.

But To use the programme, I need that the 'Program entry point' is before the
segment 0000:8000
Nowaday, my Program entry point is at 0000:8234, so I have a problem

In a detailed map link, I see:
0822EH 08452H 00225H   Module=SDS.lib(c)
So the program begin in Module=SDS.lib(c)

How could I put this module in an other segment (for example 0000:0000 or
0000:6000)?
January 04, 2010
veb wrote:
> Hello,
> 
> I have to made a program with the small model of dos 16 bits, so it use
> SDS.lib to link.
> 
> But To use the programme, I need that the 'Program entry point' is before the
> segment 0000:8000
> Nowaday, my Program entry point is at 0000:8234, so I have a problem
> 
> In a detailed map link, I see:
> 0822EH 08452H 00225H   Module=SDS.lib(c)
> So the program begin in Module=SDS.lib(c)
> 
> How could I put this module in an other segment (for example 0000:0000 or
> 0000:6000)?

Use the lib program to extract the object module from sds.lib that has the entry point, and put that object module first in the command to the linker.
January 04, 2010
Thank you, it works very well!


An other question: I don't use double number(only float), but:
08B9EH 09B30H 00F93H   Module=SDS.lib(double)
It take some place (3ko, and I'm limit to 64ko code)
How could I compile without the 'double' definition?
January 05, 2010
veb wrote:
> An other question: I don't use double number(only float), but:
> 08B9EH 09B30H 00F93H   Module=SDS.lib(double)
> It take some place (3ko, and I'm limit to 64ko code)
> How could I compile without the 'double' definition?

Provide your own definition of the public symbols in it, then they won't get linked in from the library.
January 05, 2010
I tryed:
#undef double
#define double float
but it doesn't do anythind, and I tryed to replace every double and long double in
my  /include to float, but it doesn't change anything.

I think Digital mars is a very good compiler, very fast for compile and to execute, but the exe are maybe a bit biger and the function gotoxy doesn't exist.

Thanks for everything
== Extrait de l'article de « Walter Bright (newshound1@digitalmars.com) »
> veb wrote:
> > An other question: I don't use double number(only float), but:
> > 08B9EH 09B30H 00F93H   Module=SDS.lib(double)
> > It take some place (3ko, and I'm limit to 64ko code)
> > How could I compile without the 'double' definition?
> Provide your own definition of the public symbols in it, then they won't get linked in from the library.