If you want to use more than 128MB efficicently, you need tweak your system.ini, msdos.sys, and config.sys files to added some functionality and performance to your system. Some programs actually add the below listed tweaks upon installation. These are just the basic tweaks to get your rig moving faster...for more, buy a book on it, there's a lot of 'em.
Here's some goods from rage3D:
System.ini:
For Windows95, 98, and Me:
Add these under [386Enh]:
DMABufferSize=64 (This will conserve at least 64KB of memory to DMA (direct memory access) to reinsure that your DMA devices always have enough memory allocated. Note that this tweak should only be used if you have one or more DMA enabled devices on your system)
LocalLoadHigh=1 (This setting tells the operating system to load its local drivers into upper memory by default as opposed to trying to squeeze them into conventional memory. This is a good tweak for those of you who have less than 128MB of RAM, but may actually hinder performance for those with 128MB or more - although I have 128MB of RAM and it works for me. Test it for yourself to see)
ConservativeSwapfileUsage=1 (I heard that you might have to leave a blank space under this setting for it to work properly, so I would just to make sure. If you are running Win98, this setting will force the computer to use the swap file in a "conservative" way. If you are running on Windows Me, this setting will tell Windows not to use the swap file at all until all of the RAM is used. After all of the RAM is used, the computer will push most of the infrequently used data to the swap file. This is a great tweak, recommended for everyone on 98 and Me - but don't use for Windows95!) (Windows95 already uses the swap file in a conservative way)
PageBuffers=32 (This setting tells the computer to dedicate a certain amount of RAM to buffer the hard drive rather than allowing the operating system to dynamically handle the buffer. Windows dynamic handling of most memory issues is very inefficient, due to the large difference Windows sets between minimum and maximum values. 32 is the highest setting the operating system allows, so it is recommended that you use this value)
Add these under [vcache]:
Minfilecache=XXXXX (This will set the minimum value to how much swap file in KB your system will dedicate. To figure out what to replace XXXXX with, it is recommended that you take 10% of your RAM and multiply that number by 1024 (to convert to KB). For example, I have 128MB of RAM, so 10% of 128 is 12.8. 12.8 multiplied by 1024 is 13107.2. I would then replace XXXXX with 13107)
Maxfilecache=XXXXX (This will set the maximum value to how much swap file in KB your system will dedicate. To figure out what to replace XXXXX with, it is recommended that you take 25% of your RAM and multiply that number by 1024 (to convert to KB). For example, I have 128MB of RAM, so 25% of 128 is 32. 32 multiplied by 1024 is 32768. I would then replace XXXXX with 32768)
*Note: Some people prefer to set their min and max filecache to the same value, so as to lessen the time the computer spends with the swap file when the swap file is in use. I find that this works very well too, but personally I like to have a bit of a gap between the min and max. Putting a gap there guarantees you will always have sufficient swap file space. If you have large amounts of RAM, namely 256MB or more, you can easily set the min and max to the same size without worry
Chunksize=XXX (This setting determines how large the chunks are that are allocated to each program residing in the vcache. A program can have more than one chunk, but if it doesn't divide evenly into the size of the chunk, some RAM goes unused (i.e. is fragmented). On one hand, having a smaller chunk size allows for less wasted RAM in the vcache, however, on the other hand, a larger chunk size increases the access speed for the vcache. Common values are 128, 256, 512, 1024, and 2048 . On Windows98 or Me, I prefer 1024. The rule of thumb is, if you have any newer monster multi-GigaByte size hard disk, you may want to set this value to "high": 2048 - 4096. If you don't work frequently with multi-MegaByte size files, you may want to set it to "low": 256 - 1024)
Msdos.sys:
For Windows98:
Add these under [Options]:
Dblspace=0 (This will tell the OS not to load the DoubleSpace compression program during boot up, thereby freeing up memory and reducing an unnecessary program from running. Do not use this if you are using have a compressed hard drive!!)
Drvspace=0 (This setting tells the OS not to load the DriveSpace compression program during boot up, thereby freeing up memory and reducing an unnecessary program from running. Do not use this if you are using have a compressed hard drive!!)
Logo=0 (This setting will disable the Windows start-up logo during boot, thereby reducing time to load. If you like the Windows logo, don't use this setting)
Bootdelay=0 (This setting tells the OS not to delay when switching from your BIOS POST to the OS boot up. Although most users already do not experience a delay, this guarantees that you have a zero delay)
Disablelog=1 (This setting will disable all event logging that occurs during boot up, thereby reducing the amount of time wasted to perform this task. If you wish to have your boot up logged, usually in order to find errors, do not use this setting)
Doublebuffer=X (This setting tells the computer whether or not to use double-buffering for your hard drive. If you have a large FAT32 partition or you use SCSI, I recommend that you enable this by inserting a 1 for the X. If you have a smaller FAT32 partition (under 10 GB per partition is a good rule) or you still use FAT16, I recommend that you disable this by inserting a 0 for the X)
For WindowsMe:
*Note: Windows Me users will have to uncheck 'hide protected operating system files' in the Folder Options under View in the Control Panel for you to view Msdos.sys. Also, make sure you right click Msdos.sys, click properties, and then uncheck 'read-only' to be able to save this file once you have added these options. Remember to re-check 'read only' when you are done adding these options!
Add these under [Options]:
Dblspace=0 (This will tell the OS not to load the DoubleSpace compression program during boot up, thereby freeing up memory and reducing an unnecessary program from running. Do not use this if you are using have a compressed hard drive!!)
Drvspace=0 (This setting tells the OS not to load the DriveSpace compression program during boot up, thereby freeing up memory and reducing an unnecessary program from running. Do not use this if you are using have a compressed hard drive!!)
Logo=0 (This setting will disable the Windows start-up logo during boot, thereby reducing time to load. If you like the Windows logo, don't use this setting)
Bootdelay=0 (This setting tells the OS not to delay when switching from your BIOS POST to the OS boot up. Although most users already do not experience a delay, this guarantees that you have a zero delay)
Disablelog=1 (This setting will disable all event logging that occurs during boot up, thereby reducing the amount of time wasted to perform this task. If you wish to have your boot up logged, usually in order to find errors, do not use this setting)
Doublebuffer=X (This setting tells the computer whether or not to use double-buffering for your hard drive. If you have a large FAT32 partition or you use SCSI, I recommend that you enable this by inserting a 1 for the X. If you have a smaller FAT32 partition (under 10 GB per partition is a good rule) or you still use FAT16, I recommend that you disable this by inserting a 0 for the X)
Config.sys:
For Windows98:
Add these:
device=c:\windows\himem.sys (This will load the upper memory management)
Stacks=0,0 (This will speed up the underlying kernel of Windows. This is a good tweak recommended for everyone.)
dos=high,umb (Even though you'd think this wouldn't matter anymore, DOS still does play a role in how fast the operating system is, and conserving whatever resources it might need is important)
devicehigh=c:\windows\setver.exe (Will load setver.exe into the upper memory, freeing up conventional memory)
devicehigh=c:\windows\ifshlp.sys (Will load ifshlp.sys into the upper memory, freeing up conventional memory)
For WindowsMe:
Config.sys entries in WindowsMe must be entered differently than Windows98, since Me won't let you edit the config.sys. In order to apply these settings, click Programs, Accessories, System Tools and then open System Information. Under tools, open the System Configuration Utility:
Under the Environment Tab, click New and then enter this info:
Variable Name: Variable Value:
Stacks: 0,0 (This will speed up the underlying kernel of Windows. This is a good tweak recommended for everyone.)
dos: high,umb (Even though you'd think this wouldn't matter anymore, DOS still does play a role in how fast the operating system is and conserving whatever resources it might need is important)