• Announcements

    • xper

      MSFN Sponsorship and AdBlockers!   07/10/2016

      Dear members, MSFN is made available via subscriptions, donations and advertising revenue. The use of ad-blocking software hurts the site. Please disable ad-blocking software or set an exception for MSFN. Alternatively, become a site sponsor and ads will be disabled automatically and by subscribing you get other sponsor benefits.
dencorso

Day-to-day running Win 9x/ME with more than 1 GiB RAM

139 posts in this topic

Hello @Dencorso and @Rloew,

@Dencorso, thank you for taking the time to suggest those two books for further technical reading. They will have to wait until summer! :>) Also, thank you for entering my system into the ever expanding "hall of retro-fame"...

@Rloew, Igor Leyko's article was a conceptual game changer for me. A million thanks for pointing me in that direction! :>) If it is not too much to ask, could you comment in your usual precise language on the differences between HIMEM and HIMEMX, especially as they relate to VMM.VXD initialization? It appears that HIMEMX (which I *am* using) significantly expanded options, always in an NRU sense and in the context of *this* topic, right?

Cheers

I'm not sure why you are so obsessed with "NRU". The vast majority of the issues discussed are not affected by "RU" vs. "NRU".

Only the following are different:

With my Patch, Windows 9x is not limited to recognizing 1,158 MB of Physical RAM. It is able to use as much as 4GB without crashing.

There is also a DMA Memory Patch, which fixes a DMA Memory exhaustion issue that has not been discussed so far.

I also have a Non-XMS RAM Disk that is completely unmanaged by Windows, so no Virtual Memory in the System Arena is reserved at any time.

In addition I have a 64-Bit Version that can use 64-Bit Physical Memory, leaving all 32-Bit RAM available for Windows or other purposes.

All other matters, such as the System Arena issue are unaffected.

As to your current question.

The difference between HIMEM and HIMEMX, that I studied, is the way that Memory Allocated outside of Windows is handled. Since XMS RAM Disks are allocated from memory before Windows is loaded, they are affected by this choice.

HIMEM is understood by Windows, so Windows takes over the management of this Non-Windows Memory. To do so, Windows reserves an equal sized area of Virtual memory in the System Arena, to map the Physical RAM of the Non-Windows Memory into Virtual Memory, so accesses to this Memory can be handled within Windows.

HIMEMX is not understood by Windows, so Windows is not aware of the Allocated Non-Windows Memory, and does not reserve Virtual Memory in the System Arena. Calls to HIMEMX, to access this Memory, are passed to Interrupt 15H which is handled by Windows. Windows will then Allocate Virtual Memory from the System Arena to map the RAM being accessed.

In the case of a XMS RAM Disk, using HIMEM will end up Allocating System Arena Virtual Memory for the entire RAM Disk, immediately upon Startup. If the RAM Disk is too big, Windows will crash.

If HIMEMX is used, System Arena Virtual Memory is only Allocated when the RAM Disk is actually accessed. This Memory is never Released, so eventually the entire RAM Disk will be Allocated in System Arena Virtual Memory. With an oversized RAM Disk, Windows will crash as you fill it up.

0

Share this post


Link to post
Share on other sites

Hello @Rloew,

As usual, your response to my latest post has been prompt and, most importantly, quite comprehensive. Thank you very much for staying with me so far! :>)

My references to "NRU"/"RU" do not aim at establishing some kind of objective dichotomy. Rather, they reflect my actual experiences and puzzlements with various aspects related to the topic under discussion. Please remember that, in your case, my subjective status may come across as decidedly "yesterday's news" since "you've been there, done that", so to speak. I am still struggling with basic moving parts that are super-foundational by the their very all-encompassing nature (e.g. XMS issues, 4th GB mapping issues etc.)

Here is an example. Leyko writes:

[What's needed done first is to forget, once and for all, EMM386 and other memory managers; more or less stable work, or even (system) booting can't be guaranteed with them]

What is one to make of this? Is he including such venerable "beasts" as HIMEM or HIMEMX ?!!? What aspects of EMM386 (QEMM etc) are potentially problematic here? Is it the Expanded Memory or, perhaps, the DEVICEHIGH/LOADHIGH invokations, or both? You see what I mean?

In any case, any and all assistance with such matters is greatly appreciated.

Cheers

0

Share this post


Link to post
Share on other sites

No. He meant EMM386, QEMM, CEMM, 386MAX and NETROOM... because they are simple VMMs which run DOS in V86 mode, and have to be suspended in order for Windows own full-fledged VMM to take over, while leaving lots of things for Win VMM to take care of that otherwise wouldn't exist.

0

Share this post


Link to post
Share on other sites

Hello @Dencorso,

Thanks for the prompt response. That's what I thought too! :>) I speculate that, as experienced "old pros", @Rloew and you have seen your fair share of digital pathologies... To this effect, I would like to ask your opinion about a couple of things regarding HIMEMX and EMM386.

First off, when it comes to HIMEMX, is DOS=HIGH required, implied or, even understood? Also, how can one activate the DOS=UMB option? Does one have to use EMM386? Finally, I have read somewhere that there are some drawbacks to using HIMEMX in MS-DOS 7.1 real-mode. Is this true?

My second question has to do with the Win98se environment itself (not real-mode). Is there a drawback to utilizing the DOS=UMB option while making darn sure that EMM386 (or whatever works with HIMEMX) does not provide Expanded Memory services (i.e., NOEMS NOVCPI)?

Thanks for your patience.

0

Share this post


Link to post
Share on other sites

Hello again,

I made some progress in dealing with my second question. I have experimented with EMM386 in the context of HIMEMX. My attempt at just allowing UMA/UMB utilization while blocking the provision of Expanded Memory services (NOEMS NOVCPI) led to quite a surprise. Namely, Win98SE just recognized 384 MB of physical memory!!

I wonder if HIMEMX is compatible with some other, hopefully unobtrusive, way to *just* allow UMA/UMB utilization *within* the Win98SE environment...

0

Share this post


Link to post
Share on other sites
First off, when it comes to HIMEMX, is DOS=HIGH required, implied or, even understood?

It's not required nor implied, but is understood and will work.

Also, how can one activate the DOS=UMB option? Does one have to use EMM386?

Either EMM386, or any of CEMM, 386MAX, QEMM or NETROOM. None are good ideas with Win 9x/ME so, if you cannot live without UMBs, and have an AMD based machine, the best solution (which is not so good) is to keep using EMM386. If you have an Intel based machine, UMBPCI is the way to go.

Finally, I have read somewhere that there are some drawbacks to using HIMEMX in MS-DOS 7.1 real-mode. Is this true?
HIMEMX has some bugs (at least four, I think, but I'm not finding my notes on it), but none are really serious. I don't think it'd cause any problems in Real Mode DOS. The problems it may cause in windows were already described by RLoew, some posts above.

I think this answers the questions your experimentation hasn't already answered. Now, enough of thread hijacking. If you want to discuss anything outside the scope of this thread's title, please do open another thread.

0

Share this post


Link to post
Share on other sites

Since dencorso has updated the list with my new system without doing the usual thread bump ( :whistle::realmad: ), please allow me guys to bump it myself:

This topic has been updated!

What's New?

on post #2:

loblo's 4GB system (the only known 4GB Windows Me system in the world :w00t:) has been added.

:thumbup

Edited by loblo
0

Share this post


Link to post
Share on other sites

loblo's 4GB system (the only known 4GB Windows Me system in the world :w00t:) has been added.

With exactly 4GiB yes. The larger ones all multi-boot ME.

0

Share this post


Link to post
Share on other sites

Please add the following system to the list.

Motherboard: Asus M5A97

OSes: Windows 98SE + Windows 95, ME, 3.11 and XP SP3 + MSDOS 7.10, using RFDISK Multi-Boot Profile MBR

Memory: 32 GiB (4x 8 GiB DDR3 DIMMs; 3069 MiB available to Win 98SE; 29692 MiB available to RAMDISKs and 64-Bit Memory SDK)

CPU: AMD FX-8120 Eight Core

Motherboard Ethernet and Sound Disabled (No Win 9x Drivers)

USB 3 (XP Only)

Video Card: NVIDIA 7200GS PCI-E (with 81.98 Driver, with shutdown problem)

Sound Card: Envy24

Ethernet Card: RTL8139

2 Removable SATA Trays

1TB SATA Hard Drive currently installed

Blu-Ray Writer

TBPLUS Disk Package

CONFIG.SYS:

DEVICE=C:\HIMEMEX.SYS /S /V ; used with RAMDSK64 and 64-Bit Memory SDK.

DEVICE=C:\WINDOWS\HIMEM.SYS /NUMHANDLES=64

AUTOEXEC.BAT:

RAMDSK64 R: 6000000 (6GB non-XMS RAMDISK For Internet Temporaries)

Remaining 64-Bit RAM reserved for 64-Bit RAM and Multi-Core SDKs.

vmm32.vxd (real mode), vcache.vxd: 4.10.0.2222, vmm.vxd: 4.10.0.2226 with RAM Limitation Patch 7.1 (with /M and /P Options)

0

Share this post


Link to post
Share on other sites

This topic has been updated!

What's New?

on post #2:

RLoew's #2 machine has been updated. Now it is the new RAM record holder for 9x/ME: 32 GiB RAM onboard! :thumbup

Let's keep the list up-to-date:

If you are using 9x/ME with more than 1 GiB RAM, do PM me your info and you shall be added to the list!

0

Share this post


Link to post
Share on other sites

loblo's 4GB system (the only known 4GB Windows Me system in the world :w00t:) has been added.

With exactly 4GiB yes. The larger ones all multi-boot ME.

Only known 4GB Windows Me system in the world in daily "production" use I guess then. ;)

That's not why I am posting however, but because my system specs have slightly changed, I have replaced my sound card again and I am now happily using an ESI Juli@.

I had too many issues with the M-Audio 2496 vxd driver, ranging from it not being fully multiclient to having noise in the output of some audio applications and generating OS freezes if using GPU accelerated applications after using certain audio apps such as winamp because of some bad interaction with directdraw apparently... None of that crap with the Juli@ which sounds better than the 2496 and whose wdm driver is apparently flawless and has I believe the lowest known audio latency (down to 1ms). B)

Tip in case of problems for installing/reinstalling wdm audio drivers correctly btw: deleting the HKLM\Enum\SW registry key before install/reinstall is a VERY GOOD IDEA. B)

Edited by loblo
0

Share this post


Link to post
Share on other sites

This topic has been updated!

What's New?

on post #2:

LoneCrusader's #1 machine has been updated, and his new #2 machine has been added. :thumbup

Let's keep the list up-to-date:

If you are using 9x/ME with more than 1 GiB RAM, do PM me your info and you shall be added to the list!

0

Share this post


Link to post
Share on other sites

My system details need a bit of an update now too!

:hello:

I decided to change my graphics card back to the nVidia one I tried out some time ago, as I'm now running more demanding applications on the XP side of the system.

The card is now a XFX branded nVidia GeForce 7950GT AGP card with 512 MB of memory on-board.

Works fine with the unofficial tweaked nVidia Display Driver 82.69 at 1920 x 1080 (I've finally bought a 21st century monitor!)

The AGP aperture is now set to 128 MB (the only configuration that works with the card IIRC).

I now have only (!) 3071 MB available to Win 98SE.

I'm putting up with the bad 98 shutdown caused by the card, in every other respect the system is running beautifully!

Cheers, Dave.

:)

0

Share this post


Link to post
Share on other sites

My #3 machine now has changed video card : Ati Radeon X850XT PE 256MB. Rest is unchanged.

0

Share this post


Link to post
Share on other sites

This topic has been updated!

What's New?

on post #2:

Dave-H's, TmEE's #3 and LoneCrusader's #2 machines configurations have been updated. :thumbup

Let's keep the list up-to-date:

If you are using 9x/ME with more than 1 GiB RAM, do PM me your info and you shall be added to the list!

0

Share this post


Link to post
Share on other sites

Just also noticed that my specs say I'm running PatchMem version 6.0.

I'm actually now running version 7.0.

I've now realised there is a 7.1 so I've contacted Rudolph Loew about an update.

Interesting to see that loblo's second machine is using the same graphics card and driver that I am, but with the AGP aperture set to 64 MB.

If I do that with my system Windows 98 won't load the desktop and just sits permanently on a flashing cursor after the splash screen.

I guess that's probably down to being a different motherboard, or possibly because he's running ME not 98SE.

:)

Edited by Dave-H
0

Share this post


Link to post
Share on other sites

I forgot about GFX drivers, they're not Omega but Catalyst 6.2, as Omega does not support X series cards.

0

Share this post


Link to post
Share on other sites

Fixed!

Interesting to see that loblo's second machine is using the same graphics card and driver that I am, but with the AGP aperture set to 64 MB. If I do that with my system Windows 98 won't load the desktop and just sits permanently on a flashing cursor after the splash screen. I guess that's probably down to being a different motherboard, or possibly because he's running ME not 98SE.

Both are good guesses. I'd bet on different boards, different maximum possible specs... but Win ME *is* quite different at the lowest level from 98SE, possibly enough to allow such different results, too.

0

Share this post


Link to post
Share on other sites

Both are good guesses. I'd bet on different boards, different maximum possible specs... but Win ME *is* quite different at the lowest level from 98SE, possibly enough to allow such different results, too.

Yes, that's probably it.

Off topic, but just to mention that Rudolph Loew says there is no point in upgrading from Patchmem 7.0 to 7.1, as functionally they are identical.

Incidentally, my memory spec in post #2 says -

Memory: 4 GiB (4x 1 GiB DIMMs; 3583 MiB available to Win 98SE); 3071 MiB available for Win 98SE

The memory available to 98SE is there twice with different amounts quoted.

Is that a mistake or is it of some significance?

:)

Edited by Dave-H
0

Share this post


Link to post
Share on other sites

Fixed!

It's interesting to notice that windows saw 3583 MiB with the ATI Radeon X850 with 256 MiB VRAM video card, but on moving on to a XFX nVidia GeForce 7950GT AGP with 512 MiB VRAM video card (so 256 MiB more) windows started to see 3071 MiB (which is precisely 512 MiB less, twice the VRAM amount added). Then again, the comparison is not perfect because the original video card was an ATI, while the new one is an nVidia...

0

Share this post


Link to post
Share on other sites

Fixed!

It's interesting to notice that windows saw 3583 MiB with the 256 MiB video card, but on moving on to a 512 MiB video card (so 256 MiB more) windows started to see 3071 MiB (which is precisely 512 MiB less, twice the VRAM amount added). Then again, the comparison is not perfect because the original video card was an ATI, while the new one is an nVidia...

With my board the amount of RAM seen by windows is the same whether I use a 7950GT 512Mb or a 7800GS 256MB. I have an ATI X850 Pro 256MB lying around somewhere so I could try to install that and see if there is a difference but I am too lazy right now...

BTW, Dencorso, please don't forget to replace my audio card specs from M-Audio 2496 to ESI Juli@ if you don't mind.

:hello:

0

Share this post


Link to post
Share on other sites

Fixed!

It's interesting to notice that windows saw 3583 MiB with the 256 MiB video card, but on moving on to a 512 MiB video card (so 256 MiB more) windows started to see 3071 MiB (which is precisely 512 MiB less, twice the VRAM amount added). Then again, the comparison is not perfect because the original video card was an ATI, while the new one is an nVidia...

I have noticed similar things in my Computers. I assume it has to do with the way the BIOS allocates Memory Mapped I/O Space. My ECS Computer dropped from 3647MiB to 3071 MiB when I installed a new video card.

0

Share this post


Link to post
Share on other sites
...replace my audio card specs from M-Audio 2496 to ESI Juli@...

Done :)

0

Share this post


Link to post
Share on other sites

This topic has been updated!

What's New?

on post #2:

ragnargd's machine configuration has been added. :thumbup

Let's keep the list up-to-date:

If you are using 9x/ME with more than 1 GiB RAM, do PM me your info and you shall be added to the list!

0

Share this post


Link to post
Share on other sites

This topic has been updated!

What's New?

on post #2:

TmEE's #4 machine has been added. :yes:

Let's keep the list up-to-date:

If you are using 9x/ME with more than 1 GiB RAM, do PM me your info and you shall be added to the list!

0

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.