Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Can't hook BIOS interrupt 15h to limit available XMS memory #89

Open
zhro opened this issue Nov 21, 2022 · 2 comments
Open

Can't hook BIOS interrupt 15h to limit available XMS memory #89

zhro opened this issue Nov 21, 2022 · 2 comments

Comments

@zhro
Copy link

zhro commented Nov 21, 2022

I am trying to use FreeDOS with RLoew's LIMITMEM.SYS to limit the available memory, for applications that have problems with it. For example, RAR for DOS throws an "out of memory" exception with an EMM manager loaded if there is too much system memory.

Using LIMITMEM.SYS with MS-DOS 7.1 works as expected. I see the samller amount of memory in MEM and RAR works fine. But with FreeDOS, the memory size doesn't change and RAR tells me that I'm out of memory.

http://lonecrusader.x10host.com/rloew/limitmem.html

@ecm-pushbx
Copy link
Contributor

Interrupt 15h is not used by the FreeDOS kernel, so your report should be towards HimemX or Jemm386/JemmEx, or whatever XMM or EMM you're using. (You can try to use the Microsoft Himem and EMM386 with FreeDOS, too.)

@zhro
Copy link
Author

zhro commented Nov 21, 2022

This problem exists when there is nothing else other than DEVICE=LIMITMEM.SYS in the CONFIG.SYS. The issue is that when running MEM, the memory size doesn't change. The issue has nothing to do with using the memory (HIMEMX/Jemm386) but rather the information provided by the BIOS interrupt. The method used by LIMITMEM.SYS doesn't seem to work with FreeDOS.

When using FreeDOS, the memory size remains unchanged (1GB in my case), and this is causing problems with some applications. When using MS-DOS, the memory is adjusted correctly to a smaller amount, and my applications run fine. The only difference is that I'm using FreeDOS instead of MS-DOS.

I tried using HIMEMX's /MAX, but this does not hook 15h. I'm also having an unrelated problem when using it to limit the available memory:

Baron-von-Riedesel/HimemX#3

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants