VOGONS


Any way to hide RAM?

Topic actions

First post, by FeedingDragon

User metadata
Rank Oldbie
Rank
Oldbie

Yes, I know I can use the "memory" hole feature in bios and DOS will only think there is 15M. I can also set OS/2 > 64 to enabled, and it will think I only have 14M for some reason. But I'm hoping there is a way to hide all my extra RAM without having to either hide it from everything DOS, or having to reboot and go into BIOS every time I want to play one of my games that doesn't like too much RAM present (Privateer.)

I did a search and found 2 utilities that I thought might work (XMSGRAB and XMSDRIVE.) And While they both reserve XMS memory, the game still sees it, and doesn't play right. So far, Privateer is the only culprit with this problem. But I've only just now started installing my games. I have X-Wing, Legacy, Privateer, Shadow Warrior, Tomb Raider, & Secret of Monkey Isle installed so far.... Still digging through boxes. I seem to recall playing Privateer just fine on my 64Mb P1 system, but everything I've read says that 32Mb or more makes it go all wonky (well, the audio is corrupted, random crashes, etc...)

Feeding Dragon

Reply 2 of 9, by Zup

User metadata
Rank Oldbie
Rank
Oldbie

Maybe using a really big RAM disk...

I have traveled across the universe and through the years to find Her.
Sometimes going all the way is just a start...

I'm selling some stuff!

Reply 3 of 9, by jwt27

User metadata
Rank Oldbie
Rank
Oldbie

HimemX / JemmEx can actually hide XMS memory:

 MAXEXT=l      limit extended memory controlled by XMM to <l> kB.
X2MAX=m limit for free extended memory in kB reported by XMS V2
(default 65535). It is reported that some old applications
need a value of <m>=32767.

RAM drive probably works too but you'll need to use one where you can specify the starting address. Most games are unable to use the higher XMS regions.

My favourite solution is to fill it up with disk cache using UIDE:

      /R15   Sets the driver's XMS memory at 16- or 64-MB.   /R15 reserves
/R63 15-MB of XMS, and /R63 reserves 63-MB of XMS, for DOS game
programs that require XMS memory below 16- or 64-MB!

/Sn Specifies the desired cache size, in megabytes of XMS memory.
Values for /S are 5, 15, 25, 40, 50, or any number from 80
to 4093. /S1024 or more will set a 1- to 4-GB cache!

Reply 4 of 9, by keropi

User metadata
Rank l33t++
Rank
l33t++

^ mine is "XMS/EMS RAMdisk v1.9i 16-bit DOS TSR" found on excellent MDGx's DOS Power Toys page.
You can load/unload it and with the /t switch it loads above 16MB for games/progs that need their available ram in the first 16mb. It is a life saver for me.

🎵 🎧 MK1869, PCMIDI MPU , OrpheusII , Action Rewind , Megacard and 🎶GoldLib soundcard website

Reply 5 of 9, by FeedingDragon

User metadata
Rank Oldbie
Rank
Oldbie

When you said XMSDSK worked (I called it XMSDRIVE - sorry,) I went back and took another try. Turns out I wasn't being aggressive enough. I was going with what mem.exe reported and reserved that amount minus 16M. Actually went up to reserving all of it with the same problem. I have 368M in here, and mem.exe was reporting a total of 64M. I had to reserve 352M with XMSDSK to get it to work.

I've since reworked my boot so that mem.exe now reports correctly. I've also started loading XMSDSK in autoexec.bat to reserve 304M for a RAM disk. I know of absolutely no DOS games or programs that needs 64M. I really only have the RAM in there for my Windows 98 boot. So, now, to play Privateer, I just expand the drive to 352M, play the game, then shrink it back down to 304M 😀

Now, what to do with a 300M RAM drive. Tempted to load my OS onto it every time I boot... But that might end up taking some time and really slowing my boot process. Will have to experiment 😀

For the curious out there, my normal boot reserves 8M if INT15 RAM. I know of nothing that needs it that also won't need to be run on DOSBox instead, but figure it can't hurt. I leave EMS at the default 32M. This leaves ~23M of XMS with the RAM drive. Shadow Warrior, for some reason (and it could be this MB,) claims there isn't enough ram unless I leave EMS at the default amount. Even lowering it to 31M causes Shadow Warrior to claim there isn't enough 🙁

So, one more game installed and working 😀 Time to dig out the next one......

Thanks for all the responses.

Feeding Dragon

Reply 6 of 9, by jwt27

User metadata
Rank Oldbie
Rank
Oldbie
FeedingDragon wrote:

Now, what to do with a 300M RAM drive. Tempted to load my OS onto it every time I boot... But that might end up taking some time and really slowing my boot process. Will have to experiment 😀

This is why disk cache is so awesome. You don't have to worry about stuff like that, it automatically determines which files to store in RAM. Suddenly your entire hard disk feels like a RAM drive 😀

Reply 7 of 9, by bjt

User metadata
Rank Oldbie
Rank
Oldbie

For Privateer specifically, limiting EMS to 16MB should fix it.
The problem is that ISA DMA as used by the sound card is limited to physical addresses <16MB.

DEVICE=EMM386.EXE RAM 16384

Reply 8 of 9, by FeedingDragon

User metadata
Rank Oldbie
Rank
Oldbie
bjt wrote:

For Privateer specifically, limiting EMS to 16MB should fix it.
The problem is that ISA DMA as used by the sound card is limited to physical addresses <16MB.

DEVICE=EMM386.EXE RAM 16384

That didn't actually work for me. I lowered EMS all the way down to 8M before I started looking to limit RAM in other ways. First went with the memory hole/OS2 route - and that worked. But it limited RAM from everything (Shadow Warrior for example wouldn't load.) Then tried the other programs I mentioned. The second one worked (after I started using it right.) The first one may work too, I'm going to have to give it a try and find out (later - past my bed time right now.)

Feeding Dragon

Reply 9 of 9, by Sammy

User metadata
Rank Oldbie
Rank
Oldbie

i use bsram9x to reduce the ram from 2 GB to 512 mb.

Otherweise win98 won't Start