[net.micro.pc] Memory allocation in MS-DOS 3.1

lotto@talcott.UUCP (06/13/85)

	KERMIT 2.28 has revealed a possible problem with DOS 3.1.
The .EXE file header describes segments for loading, and the map
confirms that there is a stack segment allocated C8H bytes long,
(I'll use absolute addresses for my machine for ease) in segment
20EEH. Great, the loader (command.com) loads everything correctly
and initializes the ss:sp pair to 20EE:00C8. The problem comes in
when a DOS call 48H (allocate memory block) is made. Unlike a .COM
file, the stack of an .EXE file should be respected by DOS as
previously allocated memory. However, calling function 48H with an
argument of F00H paragraphs (in this case) returns a segment address
of 20EF which of course will end up colliding with the top B8H bytes
of stack. Are we supposed to preallocate stack space in .EXE files?
If not, what is going on here. This apparently does not happen in
previous DOS versions, although I have not tried it.
	Please respond by direct mail for speed, I will summarize
for the net if the problem is solved. I sure hope that it is some-
thing that I am doing wrong, otherwise, this is bad news....

Thanks

(P.S. preliminary bug reports have gone in to CU20B already)

-- 
____________

Gerald Lotto - Harvard Chemistry Dept.

UUCP:  {genrad,cbosgd}!wjh12!h-sc4!harvard!lhasa!lotto
       {seismo,harpo,ihnp4,linus,allegra,ut-sally}!harvard!lhasa!lotto
ARPA:  lotto@harvard.ARPA
CSNET: lotto%harvard@csnet-relay