🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: comp.os.msdos.programmer
6 messages
6 total messages Started by James Jarrett Mon, 11 Jan 1993 13:54
LOADFIX and low-memory EXE loading
#7586
Author: James Jarrett
Date: Mon, 11 Jan 1993 13:54
21 lines
1263 bytes
A kind soul gave me a tip on my problem running my program from the DOS
prompt.  He suggested that I use LOADFIX to run my program.  It works, and
that's great, but I'd like some details.

My DOS manual does not mention LOADFIX, so all I have is the HELP LOADFIX
documentation.  How does it work and why is it necessary?

Next, how can I write a program so it doesn't need LOADFIX?  For my current
project, it doesn't matter, since I only have 1 user, and she has DOS 5.0.
My next project, however, is supposed to run on almost any machine.  I 
cannot require LOADFIX, and I would like to be able to circumvent the 
problem inside my program. 

Does anyone have ANY technical information on this problem?  Get as detailed
as necessary to allow me to implement a solution.

Thanks,
Jim Jarrett

PS Again, please respond to jjarrett@csugrad.cs.vt.edu if possible.  It's
easier for me to receive answers this way.
Re: LOADFIX and low-memory EXE loading
#7602
Author: Jeremy Mathers
Date: Mon, 11 Jan 1993 18:52
21 lines
1537 bytes
In article <C0ozzJ.DJA@csugrad.cs.vt.edu> jjarrett@csugrad.cs.vt.edu (James Jarrett) writes:
...
>Next, how can I write a program so it doesn't need LOADFIX?  For my current
>project, it doesn't matter, since I only have 1 user, and she has DOS 5.0.
>My next project, however, is supposed to run on almost any machine.  I 
>cannot require LOADFIX, and I would like to be able to circumvent the 
>problem inside my program. 

It was my understanding that this problem only manifests if you use
EXEPACK on your (I.e., the developer's) executable file.  So, if you are
the developer, the easy solution is, "DON'T USE EXEPACK".

************************************************************************
Lackland's Laws:
	1.  Never be first.
	2.  Never be last.
	3.  Never volunteer for anything

	- pynq@quads.uchicago.edu, who is still costing the net
	  hundreds, if not thousands, of dollars, every time he posts -
************************************************************************
Re: LOADFIX and low-memory EXE loading
#7601
Author: Fuzzy Fox
Date: Tue, 12 Jan 1993 00:52
27 lines
1592 bytes
jjarrett@csugrad.cs.vt.edu (James Jarrett) writes:

>My DOS manual does not mention LOADFIX, so all I have is the HELP LOADFIX
>documentation.  How does it work and why is it necessary?

LOADFIX allocates memory up to the first 64K segment, then loads your
program at that point, avoiding the problems that occur when the code
segment is below the 64K boundary.  Normally only DOS is below this
boundary, but DOS 5 can load high and thus allow programs to run there.

>Next, how can I write a program so it doesn't need LOADFIX?

You must be doing something strange to generate a program that fails.
The only problems I have heard of are a buggy version of PKLITE and an
old bug appearing in the EXEPACK module from Microsoft.  Are you linking
with the /EXEPACK (or /PACK or whatever) option on your linker?  You
might just stop using that option, and see.

A program called LOWFIX (available at Simtel-20 and other archive sites)
will patch programs to fix their problems when loading below 64K.  See
what it thinks of your program.

-- 
#ifdef TRUE        | Fuzzy Fox (a.k.a. David DeSimone)       fuzzy@netcom.com
#define  TRUE   0  |
#define  FALSE  1  |  "911 Emergency Rescue Service - Can you hold, please?"
#endif             |
Re: LOADFIX and low-memory EXE loading
#7607
Author: James Jarrett
Date: Tue, 12 Jan 1993 13:12
13 lines
1061 bytes
I have received some great information about loadfix, etc, but what I still
don't understand is why my program works when using LOADFIX and doesn't
when it isn't used.  This only occurs on some machines (configurations
vary widely, the only common factor being DOS 5 loaded high).  The program
was compiled under Borland C++ 3.1, which, as far as I can tell, does not
use packed executables.

Are there any other problems my program may have that just seem to be
cleared up by LOADFIX?  Are there other concerns about memory below 64K?

Thanks,
Jim
Re: LOADFIX and low-memory EXE loading
#7615
Author: Jeremy Mathers
Date: Tue, 12 Jan 1993 14:40
30 lines
1966 bytes
In article <1993Jan12.005245.9608@rei.com> fox@rei.com (Fuzzy Fox) writes:
>jjarrett@csugrad.cs.vt.edu (James Jarrett) writes:
>
>>My DOS manual does not mention LOADFIX, so all I have is the HELP LOADFIX
>>documentation.  How does it work and why is it necessary?
>
>LOADFIX allocates memory up to the first 64K segment, then loads your
>program at that point, avoiding the problems that occur when the code
>segment is below the 64K boundary.  Normally only DOS is below this
>boundary, but DOS 5 can load high and thus allow programs to run there.
>
>>Next, how can I write a program so it doesn't need LOADFIX?
>
>You must be doing something strange to generate a program that fails.

Yup.  The poster mentions that he is not, as far as he knows, using
EXEPACK, but it is possible that some compiler or linker is doing it or
the equivalent behind his back.  I would get LZEXE (from Simtel, et al),
and try running UPACKEXE on the executable file.  It might tell you
something...

************************************************************************
"The rich are different from you and me."
		- Fitzgerald -
"Yes.  They have more money."
		- Hemmingway -

	- pynq@quads.uchicago.edu, who is still costing the net
	  hundreds, if not thousands, of dollars, every time he posts -
************************************************************************
Re: LOADFIX and low-memory EXE loading
#7623
Author: James Jarrett
Date: Tue, 12 Jan 1993 21:03
5 lines
698 bytes
Unfortunately, I have tried LZEXE's UPACKEXE.EXE utility and it doesn't 
recognize Borland generated EXE files as packed (bad header error).

Jim
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads