Mail Archives: djgpp/2001/01/11/03:04:20
On Wed, 10 Jan 2001, Nate Gaida wrote:
> Program is targeted to run in a DOS only environment, using the standard
> CWSDPMI.
>
> Anyway, I need to launch a program, and once i've launched that, I'm done.
> problem is, i run into
> "CauseWay error 12 : Not enough memory to load application" which is a DOS
> error.
Sorry, you lost me, right there. Are there two programs we are
talking about, one of them compiled with DJGPP, the other not, or only
one program? Or do you have two DJGPP programs?
The solution to your problem depends heavily on which case is true.
> Now, this error is a result of there being only about 430K left below 640K
> while my program is running. The program I need to call requires around
> 600K free. Runs fine without my program running, but errors when called
> from inside my program.
If the child program is a DJGPP program, it doesn't care much about
the memory below 640K mark, so in that case some other factor is at
work.
If the child program _is_ a DOS program, then your only bet is to
install EMM386 and enable UMBs. This should cause CWSDPMI to load
itself high, and save you some conventional memory. You can use
LOADHIGH to force CWSDPMI to load into high memory, if that's
possible. Use "MEM /C" to see where CWDPMI is actually loaded, and
how much memory do you have available at each step.
> Running this situation in a DOS box under Win95 works fine
That's because in the DOS box the DJGPP program doesn't load CWSDPMI,
so it needs much less conventional memory.
- Raw text -