VOGONS


First post, by gabelossus

User metadata
Rank Newbie
Rank
Newbie

Thought I would share my recent experience with everyone in case you plan to use drives larger than 137GB with Windows 9x.

A few nights ago, I booted up my Windows ME build to find an error: "Windows cannot load because NTKERN.VXD is missing or corrupted."

For backstory, I had been using a 160GB Samsung 7200RPM hard drive in this build for 11 years. It had never shown signs of data corruption until this week. Or at least, not any APPARENT signs. The drive could very well be failing but I think the more likely scenario is that I filled it up with data exceeding the native LBA? limit in Windows 9x, and the file system began overwriting previous data, which was causing some of my programs to not open, and corrupting various system files one by one until WinME could no longer boot to the desktop.

Here comes mistake #1 - I decided I would hook up the drive to my Win10 PC to run the faster Windows 10 chkdsk.exe to scan the drive (ScanDisk GUI in Windows 98 and ME is notoriously slow on large drives and constantly restarts). Low and behold it found 80+ gigs worth of bad clusters, and I foolishly used the /R flag to attempt repairs of bad sectors automatically. Long story short, I lost 80 GB of free space because the modern chkdsk.exe does not know what to do with a FAT32 filesystem. It all got marked as bad, and when I threw the drive back in my WinME PC it could not "see" or use any of this space. Now I was stuck with a corrupted WinME with only 200 MB of free space on drive C.

At least now I could boot into Windows, I thought. CHKDSK seemed to have repaired the corrupted VMM32.VXD (containing NTKERN.VXD) but not all the way. Now my onboard soundcard, SoundBlaster Live, and USB ports were marked in yellow inside device manager. Tried to replace the drivers to no avail. At this point I figured I should do an over-the-top reinstall of ME to restore the corrupted system files.

Mistake #2 - I should not have used the ScanDisk GUI to begin with, at all. Once I ran the WinME setup CD, the DOS-based Scandisk within it found errors that neither the GUI Scandisk or Windows 10 CHKDSK noticed. Crap! I could have just repaired the whole filesystem from within here. Unfortunately this was unable to repair the drive because the 80GB of bad clusters I mentioned earlier somehow got rebuilt as its entire own partition after CHKDSK! Now I had no choice but to delete the partitions and reformat the drive.

Right now I am reformatting & reinstalling Windows ME. Thankfully I already had backups of my data. I plan to run RLeow's patch for using large hard drives, and am currently waiting for a smaller 120GB IDE hard drive to arrive in the mail. The goal is to get WinME setup correctly with drivers loaded, and then clone it to this other drive.

Mistake #3 - the install that had been corrupted was done by me 2 years ago using the factory restore CD for this PC, NOT the official Windows ME disc. I will not be doing that again, as the factory image came with much bloatware and for some reason half of the Windows dialog boxes would not show text. This computer appears to have been setup improperly from retail, and taught me it is always better to do a fresh install with the Windows CD on a freshly formatted drive.

Recap: Utilize RLeow's patch for large drives. It doesn't matter if you limit partition sizes, data corruption will eventually occur if the physical drive is larger than 137GB. Don't use the built-in Windows 10 disk management tools on a FAT32 filesystem. It is much better to use FDISK from the Windows ME bootable image command line, or if you must, third party software. I have heard even the Windows XP software does a better job - somewhere in the later NT-based Windows releases, they removed proper support for FAT32. You cannot even format partitions larger than 32GB from within NT-based WIndows.

I have heard a user somewhere on the forum also had a patch for the VMM32.VXD that was notorious for causing driver-related blue screens on some systems. I wish I had known this earlier, as I was CONSTANTLY getting BSOD's for vxd issues related to my GeForce 6200 video card. Whether this card just doesn't agree with WinME or I need this patch, I will find out. I also had a PCI ethernet card and the SoundBlaster I mentioned before installed, so maybe it could have just been memory or IRQ conflicts all along.

Reply 1 of 9, by jmarsh

User metadata
Rank Oldbie
Rank
Oldbie

This all seems unlikely. Bad clusters are only flagged if sectors within them cannot physically be read (or are detected as unreliable), not due to filesystem corruption. It sounds more like the drive just started to fail, which isn't uncommon for one that's at least 11 years old. Trying to repair the filesystem on a dying drive is like trying to swim in quicksand.

Reply 2 of 9, by Falcosoft

User metadata
Rank l33t
Rank
l33t
gabelossus wrote on 2025-12-16, 21:18:

...It doesn't matter if you limit partition sizes, data corruption will eventually occur if the physical drive is larger than 137GB.

This is definitely not true. The factory/physical drive size does not matter. If the sectors that cannot be addressed by Win9x's 28-bit LBA are not available to Win9x (since no partition contains them) then Win9x has no chance to corrupt the drive.
I can show you 250GB HDD with fully utilized 80 GB FAT32 partition (this is the 1st partition) that is actively used by Win9x without any problems.
Actually the other/bigger part of the drive is also partitioned .But since NTFS is used on the other/bigger partition it is not a problem since Win9x cannot use/write it.
Please, do not spread FUD...

Website, Youtube
Falcosoft Soundfont Midi Player + Munt VSTi + BassMidi VSTi
VST Midi Driver Midi Mapper
x86 microarchitecture benchmark (MandelX)

Reply 3 of 9, by LSS10999

User metadata
Rank Oldbie
Rank
Oldbie

How large was your WinME partition?

On the other hand, you should check the disk with tools such as MHDD or HDAT2 to see whether it's failing.

Reply 4 of 9, by ElTentakel

User metadata
Rank Newbie
Rank
Newbie

I had the issue that i could not even access an oversized 160GB partition from Windoes ME, because Windows as well as Linux identified it as an EFI Partition. Ths is the reason, I will never use ME again, because It is not possible to backup such a partition in an efficiant way.

Also I recommend to have one small System partition, and a second for apps and games. This has the advantage, that scandisk is very quick after crashes and also, it is faster to backup the system either.

Reply 5 of 9, by Falcosoft

User metadata
Rank l33t
Rank
l33t
gabelossus wrote on 2025-12-16, 21:18:

...
For backstory, I had been using a 160GB Samsung 7200RPM hard drive in this build for 11 years.
...

If you used that 160 GB as a single FAT32 partition that definitely could cause wrap-around/overwrite problems at the end of the disk. 28-bit LBA can only handle 2^28 that is 268 435 456 sectors.
1 sector is 512 byte (unless it is a modern native 4K advanced format drive but such drives are not supported at all by Win9x anyway) so overall 512 * 268 435 456 = 137 438 953 472 bytes can be handled by Win 9x. Hard drive manufacturers denote this as 137 GB barrier.
But actually Windows uses 1024 as KB/MB/GB divider so you get 137 438 953 472 / 1024 / 1024 / 1024 = 128 GB barrier. This is the same limit only the calculation method is different.
So the maximum safe partition size under Win 9x is less than 128 GB (let's say 127 GB) and this is only true if this partition is the first one so the last used LBA block by the partition is less than 268 435 456.

Website, Youtube
Falcosoft Soundfont Midi Player + Munt VSTi + BassMidi VSTi
VST Midi Driver Midi Mapper
x86 microarchitecture benchmark (MandelX)

Reply 6 of 9, by gabelossus

User metadata
Rank Newbie
Rank
Newbie
LSS10999 wrote on 2025-12-17, 14:21:

How large was your WinME partition?

The full available size of the drive. I now realize how bad of an idea this was, and won’t be doing this for future 9x builds.

Reply 7 of 9, by gabelossus

User metadata
Rank Newbie
Rank
Newbie
Falcosoft wrote on 2025-12-17, 09:34:
This is definitely not true. The factory/physical drive size does not matter. If the sectors that cannot be addressed by Win9x's […]
Show full quote
gabelossus wrote on 2025-12-16, 21:18:

...It doesn't matter if you limit partition sizes, data corruption will eventually occur if the physical drive is larger than 137GB.

This is definitely not true. The factory/physical drive size does not matter. If the sectors that cannot be addressed by Win9x's 28-bit LBA are not available to Win9x (since no partition contains them) then Win9x has no chance to corrupt the drive.
I can show you 250GB HDD with fully utilized 80 GB FAT32 partition (this is the 1st partition) that is actively used by Win9x without any problems.
Actually the other/bigger part of the drive is also partitioned .But since NTFS is used on the other/bigger partition it is not a problem since Win9x cannot use/write it.
Please, do not spread FUD...

That’s the problem, is to my knowledge these sectors ARE available because I allocated the entire 160GB as one partition. System and programs. Correct me if I’m wrong but I believe that could definitely exceed the 28 bit LBA.

Reply 8 of 9, by Falcosoft

User metadata
Rank l33t
Rank
l33t
gabelossus wrote on 2026-01-06, 15:20:
Falcosoft wrote on 2025-12-17, 09:34:
This is definitely not true. The factory/physical drive size does not matter. If the sectors that cannot be addressed by Win9x's […]
Show full quote
gabelossus wrote on 2025-12-16, 21:18:

...It doesn't matter if you limit partition sizes, data corruption will eventually occur if the physical drive is larger than 137GB.

This is definitely not true. The factory/physical drive size does not matter. If the sectors that cannot be addressed by Win9x's 28-bit LBA are not available to Win9x (since no partition contains them) then Win9x has no chance to corrupt the drive.
I can show you 250GB HDD with fully utilized 80 GB FAT32 partition (this is the 1st partition) that is actively used by Win9x without any problems.
Actually the other/bigger part of the drive is also partitioned .But since NTFS is used on the other/bigger partition it is not a problem since Win9x cannot use/write it.
Please, do not spread FUD...

That’s the problem, is to my knowledge these sectors ARE available because I allocated the entire 160GB as one partition. System and programs. Correct me if I’m wrong but I believe that could definitely exceed the 28 bit LBA.

Look at my 2nd post:

If you used that 160 GB as a single FAT32 partition that definitely could cause wrap-around/overwrite problems at the end of the […]
Show full quote

If you used that 160 GB as a single FAT32 partition that definitely could cause wrap-around/overwrite problems at the end of the disk. 28-bit LBA can only handle 2^28 that is 268 435 456 sectors.
1 sector is 512 byte (unless it is a modern native 4K advanced format drive but such drives are not supported at all by Win9x anyway) so overall 512 * 268 435 456 = 137 438 953 472 bytes can be handled by Win 9x. Hard drive manufacturers denote this as 137 GB barrier.
But actually Windows uses 1024 as KB/MB/GB divider so you get 137 438 953 472 / 1024 / 1024 / 1024 = 128 GB barrier. This is the same limit only the calculation method is different.
So the maximum safe partition size under Win 9x is less than 128 GB (let's say 127 GB) and this is only true if this partition is the first one so the last used LBA block by the partition is less than 268 435 456.

So yes, if you used your 160 GB storage as a single FAT32 partition then it is a problem, but a well known problem. It's not because of the factory/physical drive size, but because of the partition size.

Your quoted statement , that is:

..It doesn't matter if you limit partition sizes, data corruption will eventually occur if the physical drive is larger than 137GB.

is still not true.
If you partition and format your disk in such a way that its 1st and only partition is less than 128 GB and leave the remaining space unpartitioned then you can use your disk with Win9x without problems.

Website, Youtube
Falcosoft Soundfont Midi Player + Munt VSTi + BassMidi VSTi
VST Midi Driver Midi Mapper
x86 microarchitecture benchmark (MandelX)

Reply 9 of 9, by zapbuzz

User metadata
Rank Oldbie
Rank
Oldbie

I have run a 500GB PATA/IDE disk with single FAT32 partition on 98SE and ME for years.
Rudolph Lowes high disk capacity patch eliminates the 128GB barrier and is now freeware.
I just had to format fat32 in another machine.