A Windows 98 & ME forum. Win98banter

If this is your first visit, be sure to check out the FAQ by clicking the link above. You may have to register before you can post: click the register link above to proceed. To start viewing messages, select the forum that you want to visit from the selection below.

Go Back   Home » Win98banter forum » Windows 98 » General
Site Map Home Authors List Search Today's Posts Mark Forums Read Web Partners

Windows 98 Memory Patch (replace VMM32.VXD to allow use of up to 4 gbsystem RAM)

Thread Tools Display Modes
Old October 1st 14, 02:29 AM posted to microsoft.public.win98.gen_discussion,alt.windows98,alt.comp.os.windows-98
98 Guy[_3_]
external usenet poster
Posts: 128
Default Windows 98 Memory Patch (replace VMM32.VXD to allow use of up to 4 gbsystem RAM)

The following is basically a reformulation / refinement of a post I made
to multiple win-98 newsgroups back on May 15 / 2014. I've added much
more background information regarding where these files originated from.

At the time, I posted this as:

Subject: Major new development in Windows 98 RAM memory capability
patch has been discovered!

What I will leave out in this post, but will include in a future post
for those that ask, are automated patch files developed by others as a
result of analysis of this German patch. I haven't tested these patch
files myself, but they should allow any Windows 98 system (regardless of
language or country version) to have their existing VMM32.VXD file
patched so that the 4 critical bytes are changed, allowing use of up to
4 gb of system ram.

Yes. Only 4 bytes of code are changed from Micro$oft's original code,
allowing win-98 systems to not crash when run on systems with more than
1.5 gb of installed ram. Even more significant than not crashing is
that win-98 will use at least 3 gb (if not 4?) when 4 gb of ram is


Back in 2008, some hacking was done in Germany on a third-party
Windows-98 memory patch to remove elements of copy-protection or
proprietary installation and convert the files into fully portable,
fully distributable working versions.

In Early 2014, some mention of these hacked files was made on certain
english-language web-forums, and the link from which these files could
be downloaded was discovered. The files in question are replacements
for VMM32.vxd and VMM.vxd. They allow Windows 98 to boot and run on
systems with up to 4 gb of installed RAM, and (I believe) make use of up
to 3 gb of RAM.

I myself have been running a win-98se system (With KernelEx) with 2 gb
of ram since May 2014 with little or no problems, and my system reports
2046 MB RAM under system properties. The only side-effect of using
these files as-is, is that when you get blue-screen errors, the text of
the errors is written in German - not english.

Here is a link to these VMM32.vxd and VMM.vxd files that allow Windows
98 to use all available ram on any motherboard you have, up to 4 gb:


Scroll down to the last item, which is:

4 GB Hauptspeicher für WIN 98SE (mit vmm98sed.zip) hot!

But don't click on it. Instead, click on the small little "Download"
button right beside the "Details" button.

What you will download is Vmm98sed.zip (about 1mb in size). When you
unpack it, you will find a reproduction of the Windows directory tree
that helps tell you where to put these files.

Inside WINDOWS\SYSTEM\ you will find VMM32.VXD and you will copy that
file to your own WINDOWS\SYSTEM directory, over-writing the existing
file which you should first rename to VMM32.vxd.old.

You will also see a subdirectory called VMM32 which contains VMM.VXD
(which you should copy to your WINDOWS\SYSTEM\VMM32\ directory, and
there will be no pre-existing file with that name.

There is some indicatation that a file called ENABLE.VXD should also be
placed in the WINDOWS\SYSTEM\VMM32\ directory. That file is not
normally found on win-9x systems, but it is on the win-98 CD. (see
below for a link to obtain enable.vxd directly).

The two files VMM32.VXD and VMM.VXD seem to have been in circulation
since January 2010 because they were submitted to virustotal.com on that
date for malware analysis. That was the first and only time they have
been seen by Virustotal until I submitted them (in May / 2014). The
scan 4 years ago was negative, and so was my scan, so they are clean as
far as 53 Anti-virus programs are concerned.

For your convienence, I have uploaded these files to Filepost:


When downloading from filepost, select the "slow" or Free option, wait
for the count-down, disregard (close) any other windows that pop-up,
answer the captcha, and download the above file when offered.

The file is password protected. The password is "a" (no quotes).

Inside that file you will find:


So regarding Bs_ram9x_V102:

Setup of Win98SE with more than 1GB of Ram - new version (Bs_ram9x_V102)
In this version V1.02 can man between 128 MB and 4000 MB parameterized.
Thus, Benutzungsgößen 1GB are possible and in conjunction with the
VMM32.VXD VMM.VXD slight reductions possible

Here is series of translations from German to English, written by the
hacker who created these files back in 2008:


Post subject: Win98SE with lots of RAM / from 512 MB to 4 GB
Post Posted : Mon August 25, 2008 , 12:18
Location: Leipzig

Summary of problems with a lot of RAM (physical memory ) with Win98SE

Problem : RAM 512 MB

DOS - applications refuse to work (due to insufficient memory)

Microsoft Remedy: entry MaxFileCache = xxxxxx in [vcache] in system.ini
(xxxx = 524288)

Effect : Helps stable

Problem : RAM = 1GB
No more boats (even due to insufficient memory)

Microsoft Remedy: entry MaxPhysPage = xxxxxx in [386Enh] in system.ini

(xxxxxx = must be ertestet / For each PC, otherwise
/ solutions between 512 MB - 1 GB)

Effect : helps to boot but very unstable. After some program calls Blue
Screens / from physically existing 1.5 GB RAM - no starting from Dos
applications (16-bit programs) despite the entry MaxFileCache.

Patch Overview :

1 vmm98sed.zip - enables the use of memory above 1GB
(MaxPhysPage omitted)
2 vcache.zip - dynamic adjustment of Festplattencachgröße
(MaxFileCache omitted)
3 bs_ram9x.zip - limits the Ram as MaxPhysPage However, the system
remains stable here. Helps Neuinstallatien and setups
are rewriting the vmm32.vxd.


For Win98SE there is a trick to use the German version also available
with up to 4 GB of memory. (other versions engl. etc. no test and no
warranty). To this end, only two files are needed. The two files are
located and path in the vmm98sed.zip. The Vmm32.vxd as file already
exists and is vmm.vxd not yet exist as a file. In both files, only a few
bytes of code compared to the original Microsoft have been changed. It
is assured that the patch works great and does not contain any malicious
code , as well as the available physical RAM is used as the main memory.
How to solve?

1) Download Vmm98sed.zip
2) the two files as they are packed in the zip in the directory to
extract to C.
3) You should be system.ini under [386Enh] to select "MaxPhysPage =
xxxxx" he who must of course be still disabled.
4) Reboot - thats it

And who is still an entry in the survey can be found here leaves after
installation in the forum under "Win9x - Software - Rat & Tat -
Tips & Tricks" : D thank you.


Do so could result in the following error message - not bad, so please

Special Info for vmm32.vxd:

In this vmm32.vxd all the VXD's are in it, which are then loaded at
startup in the memory, individually up to what is in the folder
(C:\WINDOWS\SYSTEM\VMM32) are present. This Vmm32 has been modified for
the Ramnutzung. The source was a Vmm32 "German installation without
Accessibility" This is missing in this vmm32.vxd the "enable.vxd" which
is responsible for Accessibility (input help = eyesight and hearing
impaired). If one has in his Windows installation in the setup so with
ticked appears after overwrite the old vmm32.vxd at every boot the
following message: (image). If this error occurs, you should uninstall
the input help and he's gone.

Info :

The VMM32.VXD file in the C:\WINDOWS\SYSTEM is already there -
overwrite only .

The VMM.VXD file in the C:\WINDOWS\SYSTEM\VMM32 does not exist - (It
was from the VMM32.VXD generated)

I recommend when using the Vmm32sed: (tested as the best constellation
with 2GB of physical RAM)

Entry in the autoexec.bat: "C:\XMS\BS_RAM9X.EXE /max=1900 /r" - Basic
see description bs_ram9x
Virtual Memory: "Minimum = Maximum = 2047" and on an extra drive

ConservativeSwapfileUsage = 0

Windows stores here very well indeed and only if the free RAM 200 MB
below / at ConservativeSwapfileUsage = 1 outsourcing comes too late and
a message "not enough memory" without major outsourcing "


When you reinstall or a later setup Win98SE with the "vmm32.vxd" is
rewritten, the "vmm98sed.zip" does not help . This happens, for example,
if you see "Control Panel - Windows Setup - Software" by ticking adds
a new feature of a field. So it is good if you have the bs_ram9x.exe
provided with a rem in his autoexec.bat ready. In addition, the
vmm98sed.zip not for other languages and also for other Win9x versions
(95/ 98 / ME) is suitable.

NEW! : Also improves properties of the revised VMM su

From 1 GB Ram it can and more than 1 GB of Ram it is guaranteed to be a
boot problem. The following error message:

Insufficient memory to initialize Windows. Quit one or more
memory-resident programs, remove unnecessary Utilities from your
CONFIG.SYS and AUTOEXEC.BAT files and restart your computer.

If a "VMM32.VXD" created, you can overwrite the file so afterwards.
Therefore, it is necessary to reduce the memory when reinstalling
physically to 512 MB. This may already be problems if you only have a 1
GB bar or even a 2 GB bar.

To get around this problem simply calls before the setup on the
BS_RAM9X.EXE and the memory is automatically reduced. If you want to be
sure and the whole still want to have message visually, you call it like
so: "BS_RAM9X.EXE /max=500 /ra"

For more detailed explanations in the bs_ram9x.txt which is in the zip
with. Before the second boot process, you can then select
"C:max=/path-of-Bs_ram9xExe \BS_RAM9X.EXE /500 ra" autoexec.bat enter in
the. If the setup is complete and you have copied the two new VMM to the
appropriate paths, one prescribes the entry in the autoexec.bat, just a
rem in front and to use from the moment its completely installed RAM.

When RAM 768 MB and full Rambenutzung by the VMM it comes to problems
with the Office Assistant and the TTS engine (text -to-speech ) remains
silent. Substituting the BS_RAM9X.exe still a by Ram reduced by about
100 MB, everything is functional again. With 2 GB of RAM, this would be
the final entry: "C:\path-of-Bs_ram9xExe\BS_RAM9X.EXE /max=1900 /r"


If you have more than 512MB physical RAM, one such entry or with smaller
values in the system.ini must make in Win98.

MaxFileCache = 523264

The reason is as follows:
Vcache reserved when Windows starts up as much memory addresses in the
system arena called to fully utilize his maximum cache of up to 800MB as
needed (3-4 GB).

A DOS program (16-bit application) even the MS DOS command prompt that
is running in the so-called viertuellen machine mode of the CPU. It then
gets assigned its own memory area of the system area. Is the Ram already
reserved for the vcache it comes to the well-known message. "Out of
memory ... "

A customized VCACHE.VXD (Win98SE German version) eliminates the need to
rumexerimentieren with any numerical values to the entry "MaxFileCache".

The VCACHE.VXD file belongs to folder C:\WINDOWS\SYSTEM\VMM32 and is not
yet available. If they put it there it will be used at the start of Win
and nonexistent loaded into memory in the vmm32.vxd (internal)

How to solve?

1) Download Vcache.zip
2) as it is packed in the zip in the directory Extract the file
3) entry MaxFileCache = xxxxxx in [vcache] in disable system.ini.

-- Detailed additional information - only for programmers to know the
hex ---

I got me to vcache looked at times more closely in assembler after many
tests (with different cache sizes). The vcache.vxd always works in MB
The value of the one is entering into Maxfilechache in MB converted
524288 results 0x0200 [in hex]) or 512 MB. The original value in the
file is 0x0320 (800MB) is available starting with the low-order part
(Intel Typical) Various modified sizes have a second effect to the value
0x0200 (512MB) it does not happen so properly with the drive down in the
file offset 0x5D25 located the one in use cache memory. The cache
utilization must in fact be reduced when new Progs need storage and
available RAM is scarce. From 0x1FF it adapts nicely to dynamic, the
more memory you request the smaller the cache. This is especially
important for 16bit applications otherwise the above message comes. The
value MaxFileCache = 523264 results in the 0x01FF. Somehow seems to
generate tion problem, the next bit.

--------- End detailed additional info -----------------

At least that is justifiable with the Sytemmonitor so. But he has also
some (I hope only textual) problems.

Lamp222 Best regards and good luck
Last as re-marked by lamp222 on Mon August 25, 2008


Fr 5. Dez 2008
Post subject: Vcache.zip - VCACHE Fix attempt by Xeno86

Hello, a brief comment on this downloadable here Vcache.zip for Windows
98Se, as I have myself busy and I noticed this file here by random

In the "Vcache.vxd " file is a part of Unofficial Windows 98 SE Out of
Memory Errors Q253912 VCACHE.VXD 4.10.2223 Fix VCACHE Fix attempt by
Xeno86 msfn.org/board/VCACHE-fix-attempt-t105373.html

There, downloadable under the "Q253912.exe", file size: Vcache.vxd
37.163 kB.

If you delete the row from the publisher:

VCACHE Virtual Device (Version 4.0)

VCACHE_DDB ? ÿ ? ÿ ? 0 ì ? ì ? VS_VERSION_INFO 4 ½ ? Ith ? ®? ®? ? ? ?
String File Info l ? 041504E2 ( ? Company Name Microsoft Corporation @
FileDescription Urz ¹ dzenie wirtualne VCACHE ( wersja 4.0)  File
Version 4.10.2223 ? InternalName VCACHE (Legal Copyright Copyright (C)
Microsoft Corp . 1988-1999 $ OriginalFileName VCACHE.VXD , " Product
Name System operacyjny Microsoft ( R) Windows ( R) Product version
4.10.2222 $ VarFileInfo ? translation â ? ?

follows exactly the presented Vcache.vxd with 36.606 kB. (Will
disassemble needs estimated not explicitly mentioned). It would be very
welcome if the author would call lamp222 the author at least, if he had
blotted it out of the original. The user should also note and learn on
what he gets involved with this measure (for details ,see above

Sincerely yours


Post subject : Re : Vcache.zip - VCACHE Fix attempt by Xeno86
Post Posted : Fri December 5, 2008, 17:12
Location: Leipzig

Hello Guest, What you write is sadly mistaken. I got me the file from
your link downloaded and it is exactly as I thought. Also in this
Vcache.vxd the original value 0x20 0x03 by Microsoft on file offset
0x5D25 is still available see:

Description section VCACHE.ZIP and then - additional detailed
information - only for programmers familiar with the Hex

Can you like to check for yourself! My solution is somewhat simpler (4
bytes changed in the Result / just a huge effort to find and test it)

Incidentally, I have at Creopard (nandlstadt.com) which offer the Xeno86
vcache with, my VCACHE also offered , even sent there
__________________________________________________ ___________
Excerpt from the changelog of Windows 98 SE SP Version 3.0 BETA 3:
3.0 Beta 1
! Added: Xeno86 's VCACHE.VXD fix
__________________________________________________ ___________

I had in fact tested this vcache and found that he even removes the
error but less cache for disposal represents. I was told I should make
it but purely on msfn.org. But I do not feel like me still with English
.. rumzuplagen . Machine language (assembler) from hex code nice enough
for me :-)

beautiful second Advend

PS. Next time read this info. Have just in this case (since there were
only 4 bytes) described exactly what I was facing the Microsoft have
changed with original file offset.
Old October 5th 14, 11:41 AM posted to microsoft.public.win98.gen_discussion,alt.windows98,alt.comp.os.windows-98
Kerr Mudd-John
external usenet poster
Posts: 8
Default Windows 98 Memory Patch (replace VMM32.VXD to allow use of up to4 gb system RAM)

On Wed, 01 Oct 2014 02:29:29 +0100, 98 Guy com 98@guy. wrote:

Yes. Only 4 bytes of code are changed from Micro$oft's original code,
allowing win-98 systems to not crash when run on systems with more than
1.5 gb of installed ram. Even more significant than not crashing is
that win-98 will use at least 3 gb (if not 4?) when 4 gb of ram is

What you will download is Vmm98sed.zip (about 1mb in size). When you
unpack it, you will find a reproduction of the Windows directory tree
that helps tell you where to put these files.


I remember when a 1M D/L for a 4 byte patch would have been seen as
terrible bloat!

It's a money /life balance.

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
Windows 98 Memory Patch Bill_G General 8 October 4th 14 01:00 AM
Major new development in Windows 98 RAM memory capability patch has beendiscovered! 98 Guy[_3_] General 12 May 28th 14 02:47 PM
Microsoft Can't Patch Flaw in Windows 98, ME. Last Patch Tuesday dead ahead. Cymbal Man Freq. General 7 June 15th 06 09:06 AM
Will Windows ME Replace I.E 6.0? J.Bowen Internet 1 October 11th 04 10:40 AM
vmm32.vxd to start windows luwand Software & Applications 2 July 18th 04 06:00 AM

All times are GMT +1. The time now is 12:24 AM.

Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2023, Jelsoft Enterprises Ltd.
Copyright ©2004-2023 Win98banter.
The comments are property of their posters.