Как исправить nvlddmkm.sys синий экран в Windows 7/10
Пользователи графических карт «Nvidia» могут столкнуться внезапным появлением на экране их ПК «синего экрана смерти», в тексте которого упомянут неизвестный драйвер «nvlddmkm.sys». Часто это происходит после установки в систему очередного системного обновления или какой-либо внешней программы, после чего «синий экран» начинает появляться с завидным постоянством. Появление ошибки video_tdr_failure (nvlddmkm.sys) сигнализирует о некорректной работе драйвера для графической карты «Нвидиа», и обычно решается набором стандартных способов. В данном материале я разберу суть рассматриваемой дисфункции, а также представлю способы устранить экран смерти nvlddmkm.sys на Виндовс 7/10.
Причины дисфункции с Nvidia
Рассматриваемая мной проблема nvlddmkm.sys является довольно частым гостей в системах, работающих на ОС Виндовс 7,8 и 10. При этом разработчики от «Нвидиа» и «Майкрософт» всячески открещиваются от своей вины в появлении данной ошибки, отправляя жалующихся на проблему юзеров в «Майкрософт» (в случае «Нвидиа»), и в «Нвидиа» (в случае «Майкрософт»).
При тщательном рассмотрении можно сделать вывод, что в статистическом большинстве случаев причиной возникновения проблемы является драйвер от «Нвидиа». Во время инсталляции большинства графических драйверов в ОС Виндовс старая версия драйвера «nvlddmkm.sys» часто копируется в директорию:
Программы обращаются туда за новейшей версией драйвера, но находят там лишь устаревший вариант.
Кроме некорректной версии графического драйвера, причиной возникновения дисфункции также может быть:
Рассмотрим несколько эффективных способов исправить возникшую ошибку.
Решение №1. Переименовываем и копируем файл nvlddmkm.sys
Скачайте и установите на ваш ПК самые свежие драйвера «Нвидиа». Теперь перейдите в папку:
найдите там файл nvlddmkm.sys, и переименуйте его в nvlddmkm.sys.old.
Теперь перейдите в директорию Нвидиа (обычно это C:\Nvidia), и найдите там файл nvlddmkm.sy_. Скопируйте данный файл на ваш рабочий стол (или в директорию рабочего стола на диске). Теперь нажмите на кнопку «Пуск», в строке поиска впишите cmd, и нажмите ввод.
В открывшемся окне командной строки введите:
и вновь нажмите на ввод.
После это скопируйте файл nvlddmkm.sys с вашего рабочего стола в:
Перезагрузите ваш ПК.
Решение №2. Выполняем откат графического драйвера
Если ранее проблем не наблюдалось, а они появились после установки какого-нибудь обновления (нового драйвера), попробуйте откатить ПК на предыдущий драйвер.
Решение №3. Осуществляем чистую установку драйвера
Если предыдущие решения оказалась неэффективны в решении синего экрана nvlddmkm.sys, тогда необходимо полностью удалить графический драйвер «Нвидиа» и его составляющие из системы с помощью специального инструментария (например, программы «DriverSweeper»).
Затем перезагрузите ПК, загрузитесь в безопасном или обычном режиме, и запустите или установщик новых драйверов от «Нвидиа». Если на жёстком диске он отсутствует, его необходимо предварительно скачать на жёсткий диск, или специальную программу для обновления драйверов уровня «ДрайверПак Солюшн». После установки новых драйверов перезагрузите вашу машину.
Решение №4. Проверяем модули памяти
В некоторых случаях причиной дисфункции nvlddmkm.sys является нестабильная работа планок памяти ПК. Если у вас подключено несколько планок, тогда попробуйте попеременно задействовать лишь одну, и понаблюдать, будет ли появляться ошибка. Если ошибка исчезнет, значит виновата какая-либо из неподключенных в данный момент планок.
Также можно воспользоваться специальными инструментами для тестинга памяти, уровня «Memtest86».
Решение №5. Деактивируем разгон системы
Причиной ошибки также может являться перегрев системы (в частности из-за её искусственного разгона). Отключите такой разгон в БИОС (при наличии такой возможности), и деактивируйте программы для такого разгона.
Решение №6. Задействуем более мощный БП
Ещё одним эффективным решением nvlddmkm.sys станет задействование в системе более мощного БП. У ряда пользователей рассматриваемая в статье ошибка возникала из-за недостаточной мощности БП, потому замену на мощную альтернативу позволила устранить проблему.
Решение №7. Используем функционал утилиты CHKDSK
Ещё одним вариантом решения дисфункции будет проверка винчестера на наличие ошибок. Для этого необходимо задействовать функционал утилиты CHKDSK. Запустите командную строку, и там введите:
и нажмите ввод. Дождитесь окончания процедуры проверки.
Устранение неполадок BSOD с Wd.sys : практическое руководство
Последнее обновление: 06/30/2021[Время на прочтение статьи: 5 мин.]
Файлы Microsoft Watchdog Timer Driver, такие как wd.sys, используют расширение SYS. Файл считается файлом Win32 EXE (Драйвер) и впервые был создан компанией Microsoft для пакета ПО Microsoft® Windows® Operating System.
Первый выпуск файла wd.sys на платформе Windows Vista состоялся 11/08/2006 для Windows Vista. Самый последний выпуск для Windows 8 состоялся 08/01/2012 [версия 6.2.9200.16384 (win8_rtm.120725-1247)]. Файл wd.sys входит в комплект Windows 8, Windows 7 и Windows Vista.
Ниже приведены исчерпывающие сведения о файле, инструкции для простого устранения неполадок, возникших с файлом SYS, и список бесплатных загрузок wd.sys для каждой из имеющихся версий файла.
Рекомендуемая загрузка: исправить ошибки реестра в WinThruster, связанные с wd.sys и (или) Windows.
Совместимость с Windows 10, 8, 7, Vista, XP и 2000
✻ Фрагменты данных файлов предоставлены участником Exiftool (Phil Harvey) и распространяются под лицензией Perl Artistic.
Что такое сообщения об ошибках wd.sys?
Wd.sys — ошибки «синего экрана» (BSOD)
Существует ряд причин, по которым вы можете столкнуться с проблемами с wd.sys. Большинство проблем с файлами SYS связаны с ошибками «синего экрана» (BSOD). Эти типы ошибок wd.sys могут быть вызваны аппаратными проблемами, устаревшей прошивкой, поврежденными драйверами или другими проблемами, связанными с программным обеспечением (например, обновление Windows). В число этих ошибок входят:
Обнаружена проблема, в результате которой ОС Windows завершила работу, чтобы предотвратить повреждение компьютера. По всей видимости, причиной проблемы стал следующий файл: wd.sys.
🙁 На вашем ПК возникла проблема, которую не удалось устранить, и его необходимо перезагрузить. Сведения об ошибке можно найти в Интернете: [BSOD] (wd.sys).
STOP 0×0000007A: KERNEL DATA INPAGE (wd.sys) STOP 0x00000050: PAGE FAULT IN A NONPAGED AREA (wd.sys) STOP 0x0000007E: SYSTEM THREAD EXCEPTION NOT HANDLED (wd.sys) STOP 0x0000001E: KMODE EXCEPTION NOT HANDLED (wd.sys) STOP 0x0000003B: SYSTEM SERVICE EXCEPTION (wd.sys) STOP 0x0000000A: IRQL NOT LESS EQUAL (wd.sys)
Крайне важно устранять ошибки «синего экрана»
В большинстве случаев ошибки BSOD wd.sys возникают после установки нового оборудования, программного обеспечения (Windows) или выполнения неудачного обновления Windows. В остальных случаях к ошибке «синего экрана» wd.sys может привести повреждение программного обеспечения, вызванное заражением вредоносным программным обеспечением. Таким образом, крайне важно, чтобы антивирус постоянно поддерживался в актуальном состоянии и регулярно проводил сканирование системы.
СОВЕТ ОТ СПЕЦИАЛИСТА: Как показывает опыт, целесообразно всегда создавать резервную копию системы Windows и (или) точку восстановления системы, прежде чем вносить какие-либо изменения в аппаратное или программное обеспечение на компьютере. Таким образом, в случае неблагоприятного поворота событий и возникновения связанной с файлом wd.sys ошибки «синего экрана» после недавних изменений можно восстановить систему в предыдущее состояние.
Как исправить ошибки wd.sys — 3-шаговое руководство (время выполнения:
Если вы столкнулись с одним из вышеуказанных сообщений об ошибке, выполните следующие действия по устранению неполадок, чтобы решить проблему wd.sys. Эти шаги по устранению неполадок перечислены в рекомендуемом порядке выполнения.
Шаг 1. Восстановите компьютер до последней точки восстановления, «моментального снимка» или образа резервной копии, которые предшествуют появлению ошибки.
Чтобы начать восстановление системы (Windows XP, Vista, 7, 8 и 10):
Если на этапе 1 не удается устранить ошибку wd.sys, перейдите к шагу 2 ниже.
Шаг 2. Запустите средство проверки системных файлов (System File Checker), чтобы восстановить поврежденный или отсутствующий файл wd.sys.
Средство проверки системных файлов (System File Checker) — это утилита, входящая в состав каждой версии Windows, которая позволяет искать и восстанавливать поврежденные системные файлы. Воспользуйтесь средством SFC для исправления отсутствующих или поврежденных файлов wd.sys (Windows XP, Vista, 7, 8 и 10):
Следует понимать, что это сканирование может занять некоторое время, поэтому необходимо терпеливо отнестись к процессу его выполнения.
Если на этапе 2 также не удается устранить ошибку wd.sys, перейдите к шагу 3 ниже.
Шаг 3. Выполните обновление Windows.
Когда первые два шага не устранили проблему, целесообразно запустить Центр обновления Windows. Во многих случаях возникновение сообщений об ошибках wd.sys может быть вызвано устаревшей операционной системой Windows. Чтобы запустить Центр обновления Windows, выполните следующие простые шаги:
Если Центр обновления Windows не смог устранить сообщение об ошибке wd.sys, перейдите к следующему шагу. Обратите внимание, что этот последний шаг рекомендуется только для продвинутых пользователей ПК.
Если эти шаги не принесут результата: скачайте и замените файл wd.sys (внимание: для опытных пользователей)
Если этот последний шаг оказался безрезультативным и ошибка по-прежнему не устранена, единственно возможным вариантом остается выполнение чистой установки Windows 8.
General configuration notes for DOS, W98SE, and ISA-era BIOS
Last modified: Sun Jun 28 20:06:38 EDT 2020
IRQs and DMAs for ISA cards
At a minimum, a sound card is going to need one IRQ and one DMA to emulate a Sound Blaster. The most likely choices are IRQ 5 and DMA 1. Additional IRQs may be needed for native-mode sound, the MPU-401, and/or the CD-ROM interface (tertiary IDE or SCSI controller). Additional DMAs may be needed for 16-bit sound, full-duplex operation, and/or the CD-ROM interface.
The standard fixed claims for 486 and newer PCs are shown in the table below. Additional IRQs may be claimed by USB controllers, network devices, video cards, and IDE/SCSI controllers. Additional DMAs may be claimed by SCSI controllers. Resources can be freed up by disabling unneeded devices or tweaking PCI interrupt sharing in the BIOS.
IRQ
DMA
Normally claimed by
3
Serial port COM2 (if present)
4
Serial port COM1
6
2
Floppy drive controller
7
3
Parallel port
9
ACPI (if present)
12
PS/2 mouse port
14
Primary IDE (1 cable 2 drives)
15
Secondary IDE
Toward the end of the ISA era some motherboards gained I/O APICs which made it possible for PCI devices to use IRQs above 15. This at least reduces competition for the low-numbered IRQs.
Award Modular BIOS, circa 1999
Standard CMOS Setup
Hard Disk Mode (Auto, Normal/CHS, LBA, or Large)
Always set it to LBA. If left on the default AUTO it will use the weird «Large» (extended CHS) remapping scheme on some disks, which screws up LILO.
BIOS Features Setup
XX000-XXFFF Shadow (Enable or Disable)
I have not found these settings to have any impact on UMBPCI’s ability to repurpose shadow RAM to create UMBs. There seems to be no harm in leaving them all enabled. If necessary, the addresses used by ROMs can be determined by probing with DEBUG in DOS. They are pretty obvious in the hex dump.
Chipset Features Setup (VIA MVP3 version)
AGP-2X Mode
Enable. (Worst BIOS default ever!)
SDRAM Cycle Length (2 or 3)
Set this to the CL (CAS Latency) of the DIMMs, or just say 2 if the DIMMs are rated for a higher frequency than the motherboard.
DRAM Timing (SDRAM 10ns, SDRAM 8ns, Normal, Medium, Fast, or Turbo)
The menu is mysterious, but Turbo seems to be a good choice. I’ve never encountered a problem with PC133 DIMMs that was solved by twiddling this. PC100 = 10 ns (reciprocal of 100 MHz); PC133 = 7.5 ns (reciprocal of 133 MHz).
Other more or less obscure speedup options available on this page seem to be mostly harmless. Some clearly apply only to 72-pin SIMMs.
Chipset Features Setup (Intel 430TX version)
SDRAM(CAS Lat/RAS-to-CAS) (2/2 or 3/3)
Set this to the CL (CAS Latency) of the DIMMs, or just say 2 if the DIMMs are rated for a higher frequency than the motherboard.
Other settings
The horrible «Turbo» menu is gone, but this screen is still a cryptic mix of options that might be specific to either 168-pin DIMMs or 72-pin SIMMs.
PNP/PCI Configuration
PNP OS Installed
Yes: The BIOS will initialize mainboard devices, PCI and AGP cards but not ISA PnP cards.
No: The BIOS will also attempt to initialize ISA PnP cards. This is a desperate way to maybe get a PnP card to work when you have no drivers for it.
Resources Controlled By
If the BIOS is grabbing IRQs or DMAs that are needed, set this to Manual and then change the assignments for those resources from PCI/ISA PnP to Legacy ISA. A setting of Legacy ISA is just a reservation to prevent the BIOS from grabbing a particular IRQ or DMA for the devices that it initializes. It has no effect on initializations of PnP cards by DOS or W98SE drivers.
Assign IRQ For USB
If not using the USB headers on the motherboard, disable this to reduce IRQ contention.
Integrated Peripherals
Onboard Serial Port 1/2 and Parallel Port
Disable unneeded serial and parallel ports to free up three IRQs and one DMA.
IDE Prefetch Mode and HDD Block Mode
If BIOS is used at all for disk access, these options will do something. Block mode is always good, but prefetch might be redundant.
Phoenix OEM BIOS (Dell and Gateway), circa 1999–2000
The following are all under the Advanced tab.
Plug & Play O/S
Yes: The BIOS will initialize mainboard devices, PCI and AGP cards but not ISA PnP cards.
No: The BIOS will also attempt to initialize ISA PnP cards. This is a desperate way to maybe get a PnP card to work when you have no drivers for it.
Peripheral Configuration
Disable unneeded serial and parallel ports to free up three IRQs and one DMA.
Resource Configuration
IRQ 3/4/5/7/10/11 (Available or Reserved)
A setting of Reserved prevents the BIOS from grabbing a particular IRQ for the devices that it initializes. Note that IRQ 9 is permanently grabbed for ACPI and there’s no menu to reserve DMAs.
Shared PCI IRQs (Auto, Share One IRQ, Share Two IRQs, or Share Three IRQs)
If set to Share One IRQ, all PCI and AGP devices share IRQ 9. On Auto, all non-reserved IRQs get grabbed. This option did not appear on the Dell (1999, PhoenixBIOS 4.0 Release 6.0).
USB legacy emulation
USB legacy emulation (a BIOS feature) is necessary for a USB mouse or keyboard to be visible in plain DOS (not yet tested: USBDOS driver), W98SE Safe Mode, and the early stages of W98SE installation.
The BIOS may try to be «smart» about when to enable the emulation. Example: EeePC 1000, booting DOS through LILO, enables legacy emulation for the touchpad. However, if the first bootloader is Grub2 and it chainloads LILO to boot DOS, the touchpad doesn’t work.
If the motherboard has just one PS/2 port that supports either keyboard or mouse, let the mouse have it. Legacy emulation is more likely to work right for the keyboard.
N.B., PCI cards that add PS/2 ports don’t work without drivers.
The relevant flavors of DOS are FreeDOS and occasionally MS-DOS 7.1 (FORMAT /S of W98SE). See empirical comparison of candidate DOS kernels (98SE, ME, FreeDOS).
Partitioning and formatting
I’m currently using W98SE FDISK to get partitions that work with everything (i.e., no complaints from FreeDOS, W98SE, or LILO). Sometimes both that and the FreeDOS FDISK will crash on launch and there is no choice but to use Linux fdisk.
FreeDOS’s FORMAT will sometimes crash when attempting to save unformat information. To avoid this, do FORMAT /S /Q /U C: (optionally adding /V:DOS to specify the volume label). The /Q /U combo means «Quick formats the disk but does NOT preserve unformat data and does NOT wipe or scan the surface. Just deletes everything FAST. This is the default if an unformatted harddisk is detected.»
About «drivers» package
The programs XMGR.SYS, XHDD.SYS, UHDD.SYS, XDVD2.SYS, UDVD2.SYS, and UIDE.SYS all come from a package called «the Jack R. Ellis drivers» or just «drivers.»
Since 2003–2004, this collection of drivers has changed form many times without significant changes to function. The drivers have been revised, updated, deleted, re-added, merged, split, renamed, refactored, open-sourced, closed-sourced, plagiarized, and embargoed.
Most testing I did using the 2015-03-05 version, which remains in the Ibiblio archive under several different symlinks. The package was dropped from FreeDOS prior to the FreeDOS 1.2 release, and for a while after that the drivers would abort launch if the FreeDOS kernel was detected. The current incarnation, as of 2018-06, is available from Johnson Lam’s web site (menu page, direct link). Reasons to prefer the current version include, but are not limited to:
Memory management
NOTE: For MS-DOS, adding AUTO after UMB on the DOS= line will move DRIVEDATA to the UMA, but will also attempt to automatically load HIMEM.SYS, IFSHLP.SYS, DBLBUFF.SYS, and SETVER.EXE if they exist.
Option 1: Virtual 8086 mode with VCPI
Although real mode is generally preferred for game performance, some PCI sound card drivers require the EMM.
JEMMEX (in JEMM package) provides the functionality of HIMEM.SYS + EMM386.EXE together in a single driver, but it is not as reliable as the combination of XMGR + JEMM386.
Option 2: Real mode with XMS, HMA, and UMBs
UMBPCI followed by XMGR provides XMS, HMA, and UMBs in real mode on supported chipsets. This is the best option if it works, but UMBPCI causes a slowdown on chipsets where UMBs are not cacheable (e.g., MVP3) and does not work at all on some chipsets.
Much is said in the UMBPCI documentation about chipsets that don’t allow DMA to UMBs, but I haven’t had any resulting problems. XHDD works around. SCSI drives and TSRs that cache the floppy drive might have trouble.
Option 3: Real mode with XMS and HMA
Just XMGR is enough to get DOS loaded high.
IDE driver/cache
All three of the following options need SHSUCDX in AUTOEXEC.BAT as follows:
Option 1: UDMA + cache
When it works, UIDE speeds up HDD access using Ultra DMA, provides disk caching, and handles CD/DVD drives, all in one efficient driver. Unfortunately, it causes lockups with many sound cards and has other complications. I have not determined whether different versions of the driver make any difference.
I have found that loading UIDE into UMBs provided by UMBPCI may lead to spontaneous reboots or lockups when protected-mode games are running. (Problems occurred on two different 440BX motherboards, one Dell one Gateway, with UMBPCI v3.85 and UIDE rev. 2015-03-05.) Since UIDE needs only 5 KB of RAM, just load it low. (With the W98SE kernel, most of that 5 KB is moved to the HMA; not sure why this doesn’t work with FreeDOS.)
Accepted values for UIDE.SYS /S cache size (from README.TXT, 20150305): 5, 15, 25, 40, 50, or any number from 80 to 4093 (MiB). Accepted values for XHDD.SYS /S cache size (from README.TXT, 20180630): 5, 10, 15, or any number from 20 to 4093 (MiB).
Option 2: regular BIOS + cache
/E tells UIDE to use BIOS calls to access drives. This avoids lockups in some cases but not others.
Option 3: DVD-ROM only
UDVD2 by itself has never conflicted with anything in DOS.
If disk caching is important, LBACACHE might work, but I have not tested it much. Its maximum cache size is 32767 KiB, it does not do Ultra DMA, it is much larger than UIDE (38 KB versus 4 KB), and I could not get it to load successfully in CONFIG.SYS instead of AUTOEXEC.BAT (it just hung every time).
Other CONFIG.SYS
Long filename driver
DOSLFNMS was the one that worked. Its downside is that disk caching is essential to avoid a major slowdown.
Mouse driver
CTMOUSE works with all normal serial and PS/2 mice and never conflicts with anything.
CPU idle
In FreeDOS, just put IDLEHALT=1 in CONFIG.SYS. For MS-DOS, FDAPM.
Sound
For specific sound card details, see ISA or PCI.
MS-DOS 7.1 / W98SE tweak
To avoid unnecessary splash screens and logs, install the following in the root directory as MSDOS.SYS:
W98SE
Basics
W98 is a single-CPU operating system. Additional cores provide no benefit. The last single-core CPUs in Intel’s desktop category were the Prescott Pentium 4 series. However, running on one core of a multi-core CPU does work.
W98 has a host of problems with systems that have more than 512 MiB of RAM. There are workarounds, but if the PC is being configured for W98 and compatible 128/256/512 MiB DIMMs are available then it’s preferable to limit the amount of RAM.
W98 has another host of problems related to hard disk size and partitioning. It is absolutely unable to access anything beyond the 128 GiB limit of 28-bit LBA, and it is unlikely to play nicely in a partition that was defined by Linux fdisk.
W98 works with SATA drives and SSDs, but often it is necessary to configure the SATA controller for «Legacy Mode,» «Compatible Mode,» or «IDE» rather than «Native Mode,» «Enhanced Mode,» or «AHCI» in order to get through the installation process. Once installed, it may continue working if AHCI is re-enabled.
Whenever W98 complains that it can’t find a file and pops up a dialog box to let you locate it, the place to browse to is either the WIN98 directory of the installation CD or the directory from which you are trying to install something. It will generally pick it up even though it’s buried in a CAB file.
Patches
If maximum patching up is desired, there is an unofficial service pack maintained by PROBLEMCHYLD, or see the ostensibly complete list of hotfixes & updates for Windows 98SE on MSFN. See also, tons of miscellaneous stuff from MDGx. The following is my short list.
Partitioning and formatting
W98SE must reside entirely within the first 128 GiB (137 GB) of the hard drive to avoid overflowing its 28-bit LBA implementation. Setup is basically wack when it comes to large disks, so run FDISK and FORMAT manually before entering it. Use the patched versions noted above and ignore any incorrectly printed sizes.
Various disk-trashing misbehaviors can occur if one does not walk on eggshells around W98 FDISK and FORMAT. Repartitioning (as opposed to creating a new partition table) should always be done using Linux fdisk, never a Windows installation CD. Windows will trash your partition table every time.
Installation process
After launching setup, just continue past the warnings about there already being an OS in the partition, and about NT file system. Any unrecognized partition type is assumed by setup to be NT.
When setup finishes its first phase, you are instructed to remove the floppy (meaning take the CD out) and reboot. Setup has already clobbered the MBR, so when you reboot you enter the GUI portion of setup. It is at this point that memory size hacks become necessary if 1 GiB or more of RAM is present.
Two reboots later, W98SE’s hardware wizard is busy installing drivers. You have to humor it until it goes away. Even when it has no driver for a particular device, it must be allowed to search for it; if you just cancel out, the dialog will come back again every time you reboot.
Memory size hacks
W98SE fails in a variety of ways when more than 512 MiB of RAM is installed. Usually the error says «Insufficient memory» or «There is not enough memory available» or some such ass-backwards shiat.
The free workarounds for the most obvious failures are described below. There also exists a third-party binary patch, but as of 2014 it was still being aggressively defended as commercial intellectual property. Probably no solution is going to be perfect except for physically reducing the amount of RAM.
SYSTEM.INI configurables
Add the following settings to WINDOWS\SYSTEM.INI per kb184447 and kb253912:
All numbers are subject to adjustment, as the interactions are weird and the best numbers depend on the actual amount of RAM installed. MaxPhysPage is a count of 4 KiB pages in hexadecimal, so 30000 means 768 MiB and 40000 means 1 GiB. MaxFileCache is kB in decimal, so 131072 means 128 MiB.
HIMEM workaround
The HIMEM.SYS that W98SE loads automatically is bugged and unstable when there is a lot of RAM. Loading a different XMM in CONFIG.SYS works around that; however, the amount of XMS left available to Windows still must be limited to avoid subsequent failures.
Option 1, using HIMEMX.EXE rev. 3.34:
Option 2, using recent Ellis drivers (tested version 2018-06-15):
And then, in AUTOEXEC.BAT, run XMSFIXER.COM.
General drivers (excluding sound, video, and add-in cards)
CPU idle driver AMNHLT (amnhltm.zip)
AMNHLT appears to be redundant if ACPI is enabled. I did not notice a wattage drop after installing it on a P4 PC. According to this forum post, in case the regular installation fails to enable ACPI, setup /p j forces it.
To install AMNHLT, run the batch file.
VIA chipset drivers
4in1 4.43 for older chipsets, Hyperion Pro 5.24A for newer ones.
Maximus Decim Native USB drivers
These drivers include INF. Intel or VIA INF may prevent them from working, as will any previously installed drivers for USB cards.
DOS drivers for CD/DVD/BD, mouse, etc.
If Windows fails to see some device but you have a driver that works in plain DOS, you can install that manually in CONFIG.SYS and/or AUTOEXEC.BAT and Windows might work with it. In recent times, the issue has been SATA Blu-Ray drives not showing up. I had success by changing the SATA mode in BIOS setup from AHCI to IDE and then installing a known good DOS driver similar to Microsoft’s advice.
Sound
Sound drivers can be either VxD or WDM. Microsoft’s GS softsynth only works with WDM drivers. However, all WDM sound drivers cause glitching of sound effects in DOOM. kb242937 does not fix that.
The MS softsynth is legitimate Sound Canvas.
Commonly, the only mixer will be hidden underneath the Microsoft volume control in the bottom right corner of the screen: single-click the tiny icon for volume, double-click it for the mixer.
For specific sound card details, see ISA or PCI.
Video
If no good vendor drivers exist, W98’s plain old «Standard PCI Graphics Adapter (VGA)» driver usually works. However, it is limited to 640×480 16-color mode and is slow. In my experience, it is reliable across a broad range of video cards, including older PCIe ones, but with a GTX 970 it produced glitched graphics.
A PCIe GeForce 8500 GT connected via DVI responded acceptably to the «Standard PCI Graphics Adapter (VGA)» driver, but for some reason felt the need to put a thin black border around the entire screen.
The VBEMP 9x Universal VESA/VBE Video Display Driver (or here) works on a similar principle. It too is slow, but unlike the Microsoft driver it allows access to high resolution, true color modes supported by the video BIOS. It worked without glitching at 1920×1080 32 bpp on the GTX 970. To install it, navigate through device manager or right click on desktop → Properties → Settings → Advanced → Adapter to the current display driver, choose Update Driver or Change, navigate some more through to «Have Disk» and «Browse,» and browse to the 128MB directory of the VBEMP distribution.
Milestones in Nvidia Windows driver version history:
96.85
Last «ForceWare» drivers.
93.71
Last Windows version «supporting» GeForce2 MX, GeForce3, and GeForce4.
81.98
Last version supporting Windows 98 SE. Does NOT work with TNT2 64.
77.72
Last W98 version in the 7x series. Does NOT work with TNT2 64.
72.14
Last Windows version «supporting» GeForce 256 and non-MX GeForce 2.
71.89
Best Nalu benchmark under Windows XP.
71.84
Last W98 version prior to 72.14. Last W98 version that works with TNT2 64.
66.94
Last W98 version in the 6x series (no release notes). Works with TNT2 64 (PCI) and TNT (AGP).
61.76
First Windows version to support 6800 series GPUs.
56.72
Last Windows version that «supports» Vanta and TNT2.
56.64
Last W98 version in the 5x series. Did not work with TNT (AGP).
53.04
Last Windows version that «supports» TNT.
45.23
Last «Detonator» drivers (allegedly better for old GPUs). DID NOT WORK with TNT (AGP): «unable to locate a detected device’s PCI ID in NVAGP.INF.»
GPU «support» was determined from the release notes. The User’s Guide for 66.93 still claims support for Vanta, TNT, and TNT2. Neither the release notes nor the users guides are correct—when tested, a TNT2 64 actually worked up through version 71.84!
Nvidia’s official support for W98 ended with the GeForce 6 series GPUs. Maximus-Decim’s modded 82.69 drivers supposedly work some of the time up through the GeForce 9 series, but they didn’t work for me.
When DOOM running in a DOS box tries to switch to full-screen 320×200 mode, Nvidia drivers often give a black screen (maybe just with LCD monitors?). The standard VGA driver and the VBEMP VESA driver don’t have that problem.
The 71.84 and 81.98 ForceWare drivers did not render 640×400 mode correctly for DOOM 95. Versions 12.41, 53.04 and 66.94 all worked.
Image quality in 640×400 mode is improved by checking the box NVIDIA Display → Display Mode Timing → Enable doublescan for lower resolution modes (if it exists in the version used).
For some versions, EnableRefreshRateLock.reg is needed to enable setting a non-default refresh rate that will stick within games.
Almost unattended installation
As described here and here, most installation prompts can be pre-configured using a batch tool that is provided on the W98SE installation CD (under tools\reskit\batch). Burn the resulting msbatch.inf file into the WIN98 subdirectory of the installation CD and most prompts go away. It still has a few nits:
To get rid of the task scheduler, run msconfig, select Startup tab, uncheck Scheduling Agent, reboot.
Other install CD tweaks
The W98SE install CD’s boot image has this in CONFIG.SYS for both the SETUP_CD and CD menu options, which makes for a slow and messy boot:
Replace that with this:
And in AUTOEXEC.BAT:
This only affects the environment for Setup.
Dropping the patched FORMAT.COM and FDISK.EXE into the WIN98 subdirectory of the installation CD apparently causes these versions to be installed automatically.
Installing as plain DOS
Using W98SE as a version of plain DOS is actually much easier than getting it to work in Windows mode. DOS has no failures triggered by memory over 512 MiB and will use BIOS calls for disk access.
FreeDOS has a better installer and bundles superior, enthusiast-maintained replacements for many of the DOS programs that come with W98SE. As a compromise, one can take the kernel, COMMAND.COM, FORMAT.COM, FDISK.EXE, and SYS.COM from W98SE for better MS-DOS compatibility, but throw out everything else and use free replacements.
Multiboot considerations
If you installed Linux before W98, you will need the Linux install CD or an emergency boot something to get you back into Linux to reinstall LILO or GRUB after W98 does its damage. Alternately, you can back up your MBR before installing W98 and then just restore it afterward.
Every version of Windows insists on owning the C: drive, so some workaround is always needed to get two Windows installations to coexist without jumbling their system files together in the same partition. The easiest way to get XP and W98 to be good neighbors is to exploit the fact that W98 ignores NTFS partitions. If you put XP on NTFS in the first partition and put W98 on FAT32 in the second partition, then each OS will see its own partition as the C: drive. If for some reason this approach is unusable then you will have to fall back to more drastic options such as hiding and unhiding partitions or remapping drives at boot time. N.B., even when the NTFS partition comes first, if XP is allowed to see W98’s file system it will activate System Restore on it and create a subdirectory called System Volume Information in the root directory. So while it is not strictly necessary to do so, you might want to hide the W98 partition just to keep the taint of XP off of it.
If you run Linux, it is generally easier and more reliable to boot W98 and/or XP using LILO or GRUB than using Microsoft’s own boot loader. LILO and GRUB support partition hiding and drive remapping if you should need those features. On the other hand, the XP boot loader provides access to XP’s safe mode.
Nowadays, modern BIOSes include their own multiboot menus that are launched by hitting a hotkey during POST. When things get out of hand, you can install a different boot manager on every disk and use the BIOS menu to choose among them.