Starting Windows NT from a Replacement SCSI Adapter of a Different Type
ID: Q198859
|
The information in this article applies to:
-
Microsoft Windows NT Server, Enterprise Edition version 4.0
-
Microsoft Windows NT Workstation versions 3.1, 3.5, 3.51, 4.0
-
Microsoft Windows NT Server versions 3.1, 3.5, 3.51, 4.0
IMPORTANT: This article contains information about editing the registry.
Before you edit the registry, make sure you understand how to restore it if
a problem occurs. For information about how to do this, view the "Restoring
the Registry" Help topic in Regedit.exe or the "Restoring a Registry Key" Help
topic in Regedt32.exe.
SUMMARY
If the primary startup controller does not work, and you do not have the same make and model SCSI adapter to use as a backup, you may need to use a
different controller. This controller must be compatible with Windows NT
to get the computer back in production. If you use a parallel installation
of Windows NT to enable a different startup controller's driver, the
following error message may be displayed when the computer is starting
the original installation of Windows NT.
STOP:0x0000007B
Inaccessible Boot Device
MORE INFORMATION
Windows NT 4.0 storage (IDE/SCSI) boot controller device drivers require
additional registry entries to initialize the driver properly for system use. If these registry entries are missing or corrupt, the Stop 0x7B error message above may be displayed.
If you use the /sos switch in the Boot.ini file, you may notice that
even though the device driver loads, you still receive the stop 0x7b error message.
The two adapters need to address the hard drive in a similar fashion.
In almost all cases, this means that the two adapters are simply
different models from the same manufacturer. For example, two Adaptec
adapters would have a better chance of success than an Adaptec and a
Future Domain adapter.
Solution
In general, moving an installation of Windows NT version 3.5, 3.51, or 4.0
from one drive to another is not a supported operation. However, provided
the drives are on the same system it is possible, if you follow the procedures below. Before carrying out any of the steps below BACKUP YOUR SYSTEM COMPETELY, INCLUDING THE REGISTRY.
NOTE: Attempting to start Windows NT with a SCSI hard disk
controller other than the one Windows NT is installed and configured
for is not supported. Customers should attempt this workaround
at their own risk.
If possible, have a valid backup of the hard disk drive before
performing the following steps:
Steps for Recovering the System with Windows NT versions 3.1, 3.5, and 3.51
Versions of Windows NT prior to version 4.0 require the registry entry
value for START be set to 0x0 (boot) for the controller's device driver
to be loaded and used during system startup.
WARNING: Using Registry Editor incorrectly can cause serious problems that
may require you to reinstall your operating system. Microsoft cannot
guarantee that problems resulting from the incorrect use of Registry Editor
can be solved. Use Registry Editor at your own risk.
For information about how to edit the registry, view the "Changing Keys and
Values" Help topic in Registry Editor (Regedit.exe) or the "Add and Delete
Information in the Registry" and "Edit Registry Data" Help topics in
Regedt32.exe. Note that you should back up the registry before you edit it.
If you are running Windows NT, you should also update your Emergency
Repair Disk (ERD).
- Install a parallel copy of Windows NT into another directory on the
local hard disk drive or move the hard disk drive to another computer running Windows NT.
- Start Registry Editor (Regedt32.exe) from the newly installed version of Windows NT, and then open the HKEY_LOCAL_MACHINE key.
- Click Load Hive from the Registry menu. Go to the
following registry file on the original Windows NT installation:
%SystemRoot%\System32\Config\System
Type a name other than SYSTEM. For example, TEST.
- The newly loaded hive now appears in the HKEY_LOCAL_MACHINE window
as TEST. Double-click TEST, then highlight the Select
key. Look to see what the value for Current:REG_DWORD:0x1 is. This value
selects which ControlSet00x key to load when the computer starts and should be the one that needs modifications.
- Open the following folder:
TEST\ControlSet00x\Services\<name of NEW Driver>
NOTE: To help determine the driver name for the two adapters, reference the Windows NT 3.5 Resource Kit, Vol. 1, pp. 112-118.
- Change the value Start:REG_DWORD: from 0x4 to 0x0.
- Open the following folder:
TEST\ControlSet00x\Services\<name of OLD Driver>
- Change the value Start:REG_DWORD: from 0x0 to 0x4.
- After making the desired change, highlight the TEST key,
then click UnLoad Hive from the Registry menu.
- From the Windows NT installation media, copy the new driver for the
different SCSI controller to the Windows NT installation folder in the
<winntroot>\system32\drivers folder.
- Shut down and restart your computer using the original version of Windows NT. The device that corresponds to the edited value of 0x0 will now be started and enable the new controller to function.
Steps for Recovering the Computer with Windows NT Version 4.0
Solution
Windows NT 4.0 introduces additional registry entries in addition to the
one above that are necessary to load and use a boot controller device
driver. The additional keys are necessary to assist in supporting
Plug and Play functions not yet fully implemented in this release of Windows NT.
NOTE: This example shows registry entries for the device driver Aic78xx.
The Enum key below and its values are added dynamically when the computer restarts and are not required to be added manually.
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\aic78xx\Enum
0:REG_SZ:Root\LEGACY_AIC78XX\0000
Count:REG_DWORD:0x1
NextInstance:REG_DWORD:0x1
HKEY_LOCAL_MACHINE\Enum\HTREE\ROOT\0
AttachedComponents:REG_MULTI_SZ:Root\LEGACY\... <-- DoubleClick
After you double-click the AttachedComponents entry, the Multi-String Editor populates with several lines of data strings. For example:
Root\LEGACY_DISK\000
Root\LEGACY_NTFS\000
.
.
Root\LEGACY_FLOPPY\000
The entry Root\LEGACY_AIC78XX\000 needs to be present in the above list.
Also, the following key, subkeys, and associated values need to be added.
HKEY_LOCAL_MACHINE\Enum\ROOT\LEGACY_AIC78XX\0000\Control\LogCont
These new entries are normally added by:
- Setup during initial installation.
- Using the Control Panel SCSI tool to add a new device.
- Restarting the computer. After the system is fully initialized, Windows NT recognizes a newly introduced driver and builds the necessary registry entries.
The best way to accomplish adding these new entries to an existing
registry is to follow the steps below. The following example shows you how to replace a failed Adaptec 154x SCSI controller using the driver Aha154x.sys with an Adaptec 2940UW PCI SCSI Controller using the Aic78xx.sys device driver.
- Install a parallel copy of Windows NT 4.0 to a different folder on your local hard disk drive. For example:
C:\Winntsos
- Start Registry Editor (Regedt32.exe) from the new installation of Windows NT and highlight the following key under HKEY_LOCAL_MACHINE:
HKEY_LOCAL_MACHINE
- Click Load Hive on the Registry menu, and open the following registry file from the original Windows NT installation:
%SystemRoot%\System32\Config\System
Assign it a name other than System (such as TEST).
- Go to the following registry key:
HKEY_LOCAL_MACHINE\TEST\Select
Note the value for Current:REG_DWORD:0x#. The # selects which
ControlSet00x key to load when the computer starts, and is the one that needs modification.
- Make sure the ORIGINAL boot controller's START value is still set to start at boot time 0x0. For example, below is the Adaptec 154x adapter setting:
Test\ControlSet00x\System\aha154x
Start:REG_DWORD:0x0
- Find the new boot controller's entry and change the Start value from 0x4 (disabled) to 0x0 (boot). For example, the Adaptec 2940UW Adapter setting is shown below:
Test\ControlSet00x\System\Aic78xx
Start:REG_DWORD:0x4 change to 0x0
- After you have made these changes, highlight the following registry key and then click Unload Hive from the Registry menu:
HKEY_LOCAL_MACHINE\TEST
- Exit Registry Editor.
- Make sure the new boot device driver, Aic78xx.sys, is located in
the original installation's folder in the following location:
%SystemRoot%\System32\Drivers
- Copy the new boot driver Aic78xx.sys file to the original boot
controller driver name Aha154x.sys in the original installation's
%SystemRoot%\System32\Drivers folder.
Cd %OldSystemRoot%\System32\Drivers
Copy Aic78xx.sys Aha154x.sys
- Shut down and restart the computer normally, and then start the original installation of Windows NT.
Windows NT should boot using the good registry entries of the ORIGINAL driver (Aha154x) to load the new driver Aic78xx.sys file that was copied to Aha154x.sys.
Windows NT tries to initialize the new boot driver Aic78xx,
but cannot because the other driver (Aha154x.sys) has already claimed
the device. However, after the system fully initializes, Windows NT
adds the necessary registry entries that are missing on the new boot
driver so it can be used properly during the next startup operation.
After you log on to the original installation, you should confirm that the
new entries were added by Windows NT by looking at the registry
locations noted earlier in this article.
- Using the Control Panel Devices tool, locate the original boot controller device. For example Aha154x, and change the startup value from boot to disabled.
You should now be able to restart and this time, Windows NT starts
from the new boot controller driver (Aic78xx) because the additional required registry entries are in now place.
Manual Method for Adding these Entries Should the Above Method Not Initialize the Registry Entries
Follow steps 1-4 above, then perform the following steps:
- Highlight the following key:
Test\ControlSet00x\Enum\HTREE\ROOT\0
- From the Security menu click Permissions and allow EVERYONE full control of the 0 key.
- Double-click AttachedComponents. The Multi-String
Editor appears and populates several lines of data strings. Add the following:
Root\LEGACY_AIC78XX\000
- Highlight the Test\ControlSet00x\Enum\ROOT key. From the Security menu click Permissions and allow EVERYONE full control of the ROOT key. Do NOT replace permissions on existing subkeys.
- From the Edit menu, click Add Key, then type LEGACY_AIC78XX.
- From the parallel installation's registry, make a copy of the
missing key by highlighting the key and clicking Save Key on the Registry menu.
- Highlight the new key made in step 10 above and overwrite it by
clicking Restore from the Registry menu. Then click the key_name saved above. This operation overwrites the empty key with the saved key.
- After you have made the necessary changes, go to the following
registry key, and then click Unload Hive on the Registry menu:
HKEY_LOCAL_MACHINE\TEST
- Exit Registry Editor.
- Make sure the associated device driver Aic78xx.sys is located
in the original installation's System32\Drivers folder.
- Shutdown and restart the computer normally and start the original
installation of Windows NT. The device that corresponds to the edited keys are now enabled and should allow you to start.
REFERENCES
For additional information about correcting this problem, see the
following article in the Microsoft Knowledge Base:
Q122926 Troubleshooting STOP: 0x0000007B or "0x4,0,0,0" Error
Additional query words:
Keywords :
Version : winnt:3.1,3.5,3.51,4.0
Platform : winnt
Issue type : kbinfo
Last Reviewed: July 12, 1999