Hi All, 

First, nearly all the features I wanted for the initial release of LOGGER have 
been implemented. The only thing remaining is the advanced capture. That is not 
complicated and won’t take long. I just put it off until the end. Like I 
mentioned before, I am very time constrained at present. Hopefully, I should be 
able to squeeze out the initial release over the next day or so. It has some 
neat features. :-)

Anyhow...

I noticed what appears to be a memory management bug when allocating a upper 
memory block. I usually do not mess around with allocating memory in that 
region. So, correct me if I am wrong. 

After performing a call to DOS (INT 0x21) to set the memory strategy 
(AX=0x5801) to allocate a “best fit, high memory only” (BX=0x0041), a 
subsequent call to allocate memory (INT 0x21, AH=0x48) should either return a 
segment in upper memory or fail. 

When the requested allocation can be made in the high memory area, it does 
return successfully with the segment for the block allocated in that region.

However, if it cannot allocate memory in the high memory area, it allocates it 
in lower memory. 

Although strategy 0x41 was set, 0x81 was actually performed. Documentation 
seems to indicate it should not do that and should fail.

I did not investigate any further. It is easy enough to work around by simply 
verifying the segment of the memory block returned. 

But, still seems like a bug to me.

Don’t know if the issue is in the Kernel (0.85a), HimemX (3.38), JEMM386 (5.83) 
or My Head. 

:-)

Jerome

_______________________________________________
Freedos-devel mailing list
Freedos-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-devel

Reply via email to