Booting Windows NT 4.0 from FAT32
Author: Cai Wenping Source: CPCW
Date: 2005-4-29
An Installable File System can be installed on Windows NT 4.0 as a device service, and the same can also be done on Windows 98. FAT32 for Windows NT 4.0 is such a device service for Windows NT 4.0. Microsoft's Windows NT 4.0 does not have the ability to access FAT32 partitions, but access to FAT32 partitions can be achieved by installing FAT32 for Windows NT 4.0.
The documentation for FAT32 for Windows NT 4.0 already states: although FAT32 partitions can be accessed after installing FAT32 for Windows NT4.0, Windows NT 4.0's boot partition cannot be changed to a FAT32 partition.
The difficulty follows from this: to make Windows NT 4.0 boot from FAT32, FAT32 access must be supported right at the beginning of startup. The boot sequence of Windows NT 4.0 (i386) is as follows:
* boot partition --->* NTLDR --> NTDETECT.COM --->* [NTOSKERNL.EXE ---> %SysRoot%\system32\drivers\*.sys]。
The process in square brackets is loaded as a whole, that is to say, support for FAT32 in NTLDR and NTDETECT.COM is the key to booting from FAT32. The %SystemRoot%\system32\drivers\*.sys inside the brackets includes fastfat.sys. fastfat.sys provides FAT file system service support. After FAT32 for Windows NT 4.0 is installed, a device service is added: fat32, with the filename 32.sys, located under %SystemRoot%\system32\drivers. However, during startup fat32.sys does not appear in the bracketed process (this can be observed by booting in VGA mode]).
Theoretically speaking, as long as fat32.sys is started within the bracketed process, the rest will not be difficult. NTLDR and NTDETECT.COM can be replaced with those from Windows 2000 (Windows 2000 supports booting from FAT32).
The above is the principle behind the method practiced in this article; carrying it out still requires a certain amount of skill and courage. (Strong recommendation: the few words below may require a tremendous amount of labor, so read and understand them before taking action.)
This article suggests that your hard disk have two or more primary partitions, which can be done with PQ Magic 4. (For clarity in the following operations, "partition 1" and "partition 2" are used to refer to partitions.) Install Windows 98 and PQ Magic 4 on partition 1, run PQ Magic 4, change the size of partition 1, reduce partition 1 by 500 megabytes (Partition 1 Size-=500M), and at the same time move partition 1 to the end, so that there is 500 MB of free space at the front of the disk.
Create a primary partition in the 500 MB free space, use all of the free space, and format it as FAT(16). Don't forget to unhide this partition.
At this point partition 1 has become partition 2. Please activate partition 1, apply this change, and then exit; the system will restart automatically. (Note: at this point this article assumes you already have the three Windows NT 4.0 setup floppy disks or the CD, or some other way to continue installing Windows NT 4.0.)
Install Windows NT 4.0 Workstation onto partition 1 (the new partition 1). Be careful not to let the installation directory have the same name as the Windows 98 directory (for example, if the Windows 98 installation directory is WINDOWS, then Windows NT 4.0 cannot use WINDOWS as the installation directory name). After installation is complete, install FAT32 for Windows NT 4.0, then use Disk Administrator to activate partition 2.
In Windows 98, copy the Windows NT 4.0 directory from partition 1 (including the WINNT and Program Files directories, but not the files under the root directory of partition 1) to partition 2 (D:\WINNT--- >C:\WINNT). Don't forget to copy all files and the directory structure. Finally, copy BOOT.INI from the root of partition 1 into the Windows 98 directory on partition 2.
Go to system32\drivers under the Windows NT 4.0 directory on partition 2, copy fat32.sys to fastfat.sys, then copy fastfat.sys to fat32.sys. It can be understood better with DOS commands:
cd \winnt\system32\drivers
copy fastfat.sys *.bak
copy fat32.sys fastfat.sys
copy fastfat.bak fat32.sys
del fastfat.bak
Start PQ Magic, delete partition 1, then move partition 2 back to its original place and restore its size. At this point, partition 2 becomes partition 1. Start Windows 98 and install Windows 2000 Professional. Do not choose to upgrade Windows 98, and do not choose to copy files to the hard disk. (We only need NTLDR, NTDETECT.COM, BOOTFONT.BIN, BOOTSECT.DOS, and the boot code of the boot partition.)
After restarting, choose Microsoft Windows from the Windows 2000 boot menu, then copy the BOOT.INI previously copied into the Windows 98 directory to the root directory (overwrite). Remove the hidden, read-only, and system attributes from BOOT.INI in the root directory, and add C:\="Microsoft Windows" to the [operating system] section (as appropriate), then restore its attributes and restart again.
At this point, you have successfully booted Windows NT 4.0 from FAT32. The files in the root directory: $LDR$,CDLDR,INF*.SWP, and the directories: $*.~*, can all be safely deleted.
As for disk scanning, under Windows NT 4.0 you can use chkfat32 to perform a read-only check, but to repair disk errors you still need to use Scandisk from Windows 98, and for disk defragmentation also use Windows 98's "Disk Defragmenter".
All of the above was done under Windows NT 4.0 Workstation. From an architectural point of view, it should also be possible under Windows NT 4.0 Server.
Author: Cai Wenping Source: CPCW
Date: 2005-4-29
An Installable File System can be installed on Windows NT 4.0 as a device service, and the same can also be done on Windows 98. FAT32 for Windows NT 4.0 is such a device service for Windows NT 4.0. Microsoft's Windows NT 4.0 does not have the ability to access FAT32 partitions, but access to FAT32 partitions can be achieved by installing FAT32 for Windows NT 4.0.
The documentation for FAT32 for Windows NT 4.0 already states: although FAT32 partitions can be accessed after installing FAT32 for Windows NT4.0, Windows NT 4.0's boot partition cannot be changed to a FAT32 partition.
The difficulty follows from this: to make Windows NT 4.0 boot from FAT32, FAT32 access must be supported right at the beginning of startup. The boot sequence of Windows NT 4.0 (i386) is as follows:
* boot partition --->* NTLDR --> NTDETECT.COM --->* [NTOSKERNL.EXE ---> %SysRoot%\system32\drivers\*.sys]。
The process in square brackets is loaded as a whole, that is to say, support for FAT32 in NTLDR and NTDETECT.COM is the key to booting from FAT32. The %SystemRoot%\system32\drivers\*.sys inside the brackets includes fastfat.sys. fastfat.sys provides FAT file system service support. After FAT32 for Windows NT 4.0 is installed, a device service is added: fat32, with the filename 32.sys, located under %SystemRoot%\system32\drivers. However, during startup fat32.sys does not appear in the bracketed process (this can be observed by booting in VGA mode]).
Theoretically speaking, as long as fat32.sys is started within the bracketed process, the rest will not be difficult. NTLDR and NTDETECT.COM can be replaced with those from Windows 2000 (Windows 2000 supports booting from FAT32).
The above is the principle behind the method practiced in this article; carrying it out still requires a certain amount of skill and courage. (Strong recommendation: the few words below may require a tremendous amount of labor, so read and understand them before taking action.)
This article suggests that your hard disk have two or more primary partitions, which can be done with PQ Magic 4. (For clarity in the following operations, "partition 1" and "partition 2" are used to refer to partitions.) Install Windows 98 and PQ Magic 4 on partition 1, run PQ Magic 4, change the size of partition 1, reduce partition 1 by 500 megabytes (Partition 1 Size-=500M), and at the same time move partition 1 to the end, so that there is 500 MB of free space at the front of the disk.
Create a primary partition in the 500 MB free space, use all of the free space, and format it as FAT(16). Don't forget to unhide this partition.
At this point partition 1 has become partition 2. Please activate partition 1, apply this change, and then exit; the system will restart automatically. (Note: at this point this article assumes you already have the three Windows NT 4.0 setup floppy disks or the CD, or some other way to continue installing Windows NT 4.0.)
Install Windows NT 4.0 Workstation onto partition 1 (the new partition 1). Be careful not to let the installation directory have the same name as the Windows 98 directory (for example, if the Windows 98 installation directory is WINDOWS, then Windows NT 4.0 cannot use WINDOWS as the installation directory name). After installation is complete, install FAT32 for Windows NT 4.0, then use Disk Administrator to activate partition 2.
In Windows 98, copy the Windows NT 4.0 directory from partition 1 (including the WINNT and Program Files directories, but not the files under the root directory of partition 1) to partition 2 (D:\WINNT--- >C:\WINNT). Don't forget to copy all files and the directory structure. Finally, copy BOOT.INI from the root of partition 1 into the Windows 98 directory on partition 2.
Go to system32\drivers under the Windows NT 4.0 directory on partition 2, copy fat32.sys to fastfat.sys, then copy fastfat.sys to fat32.sys. It can be understood better with DOS commands:
cd \winnt\system32\drivers
copy fastfat.sys *.bak
copy fat32.sys fastfat.sys
copy fastfat.bak fat32.sys
del fastfat.bak
Start PQ Magic, delete partition 1, then move partition 2 back to its original place and restore its size. At this point, partition 2 becomes partition 1. Start Windows 98 and install Windows 2000 Professional. Do not choose to upgrade Windows 98, and do not choose to copy files to the hard disk. (We only need NTLDR, NTDETECT.COM, BOOTFONT.BIN, BOOTSECT.DOS, and the boot code of the boot partition.)
After restarting, choose Microsoft Windows from the Windows 2000 boot menu, then copy the BOOT.INI previously copied into the Windows 98 directory to the root directory (overwrite). Remove the hidden, read-only, and system attributes from BOOT.INI in the root directory, and add C:\="Microsoft Windows" to the [operating system] section (as appropriate), then restore its attributes and restart again.
At this point, you have successfully booted Windows NT 4.0 from FAT32. The files in the root directory: $LDR$,CDLDR,INF*.SWP, and the directories: $*.~*, can all be safely deleted.
As for disk scanning, under Windows NT 4.0 you can use chkfat32 to perform a read-only check, but to repair disk errors you still need to use Scandisk from Windows 98, and for disk defragmentation also use Windows 98's "Disk Defragmenter".
All of the above was done under Windows NT 4.0 Workstation. From an architectural point of view, it should also be possible under Windows NT 4.0 Server.
