Motherboard Drivers - Which Are Critical?

Discussion in 'other software & services' started by TheKid7, Jun 20, 2012.

Thread Status:
Not open for further replies.
  1. TheKid7

    TheKid7 Registered Member

    Joined:
    Jul 22, 2006
    Posts:
    3,585
    Next week I plan to upgrade a PC with a new motherboard, CPU and memory. The hard drive has Windows XP Pro 32 bit SP3 installed on it. The PC owner has lost the Windows XP Pro CD. Therefore, I cannot do a clean install.

    I realize that Windows XP Pro will deactivate and boot to Safe Mode when it sees the hardware changes.

    I plan to use the Terabyte OSD Tool (Image for Linux) to uninstall all of the drivers, except the IDE drives. After the driver uninstall, I plan to install (using OSD Tool in Image for Linux) the driver(s) which are necessary to boot the PC. I will install the default IDE drivers using the OSD Tool. I looked on the motherboard manufacturer's website and I see that all of the motherboard driver downloads are in the exe format (not zip format). The OSD Tool requires the INF format. Only one of the driver exe's (chipset driver) has INF mentioned in the driver description.

    How do I extract the exe's? Do the extracted exe's have the INF format when extracted? Do I really need any additional drivers to get Windows to boot, since the default IDE drives will already be installed and Windows XP should provide the standard VGA drivers until the proper VGA drivers are installed in Windows? If I can get the PC to boot with the default IDE drivers and the Windows standard VGA driver, I should be able to install the remaining drivers in Windows (After getting Windows Activated).

    Thanks in Advance.

    Motherboard Drivers Page:

    http://www.gigabyte.com/products/product-page.aspx?pid=3549#dl
     
  2. chrisretusn

    chrisretusn Registered Member

    Joined:
    Jun 16, 2004
    Posts:
    1,688
    Location:
    Philippines
    I have never seen Windows XP Pro boot to Safe Mode when moving a hard drive to a new system. I've done this numerous times. Windows XP will detect what is needed and install it if needed. This may required a couple of extra reboots to get it all working properly. Then if needed the motherboard drivers can be installed. Most of the time I simply don't bother with motherboard drivers unless there is a feature I need that XP's drivers do not provide.

    You will mostly like has to Activate XP again, but that's not a big deal unless you go over your quota. :)

    I'd make an image of the drive first, then just plug it to the new machine and fire it up. In all of the time I have done this I have never had a failure.
     
  3. Sully

    Sully Registered Member

    Joined:
    Dec 23, 2005
    Posts:
    3,719
    Make an image of the drive before doing anything else. Very critical.

    Your problems will be the HAL and the limitation of new/different hardware. Some machines you can just move the HDD to the new mobo, and it works, others you will get a HAL error.

    A couple of things you could try, at your own risk. First, you can set the processor to be unicode single acpi (I think that is right, might google that up as I forget now). This changes the HAL to something that is more universal, in a manner of speaking.

    You can remove drivers and uninstall hardware, then shut down and install HDD in new mobo. See what happens.

    You can extract all the HAL dlls and name them, then create boot.ini entries to use them. This works really well, providing it is only a HAL issue.

    Meh, there are lots of other tricks of the trade as well. These are probably the "easy" ones, even though they aren't that easy for the novice really. (I won't even go into sysprep)

    If it were me, I would hook that new mobo up before I put it in the case. Put the video and ram in it, a PSU, a momentary switch for power, and boot it up. I even leave the existing in place 100% and just switch cables to the HDD as needed between new and old. This lets you totally bork the install on the HDD until you learn how to coerce the drive to booting on the new hardware.

    And trust me, having done this way too many times, if your HDD does not boot in the new hardware, you are going to learn something worthwhile.

    As for drivers, my order has always been put chipset drivers on first, followed by network then audio (if not in the chipset package) and finally video. It is debatable if you use chipset drivers for the IDE/SATA hardware. Sometimes microsoft drivers are better, sometimes not. It is the only drivers I ever test for performance, if I think it is worth doing.

    HTH>

    Sul.
     
  4. Brian K

    Brian K Imaging Specialist

    Joined:
    Jan 28, 2005
    Posts:
    12,415
    Location:
    NSW, Australia
    Sul,

    Just curious but what do you mean by "HAL error"? What do you see?
     
  5. Sully

    Sully Registered Member

    Joined:
    Dec 23, 2005
    Posts:
    3,719
    You see the ntldr error I think. Basically you can't boot. Since you asked, I am going to tell. Here is more info that you ever wanted to know about it.

    HAL = Hardware Abstract Layer --- when installing the OS, a specific HAL is extracted from archive, and renamed to HAL.dll. NTLDR is the boot sector file, and other boot files worth paying attention to are NTDLL.dll and win32k.sys. There are others as well, but usually it is HAL.dll, NTLDR or NTDLL.dll that are the issue (corrupted).

    When you install a HDD to new hardware, you request that the current HAL be used to boot from. Remember, it is labeled HAL.dll and there is only one. If it is incorrect, you don't boot. Easiest thing to do then is to have all HALs on hand. Here is my boot.ini for troubleshooting
    Code:
    [boot loader]
    timeout=30
    default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
    [operating systems]
    multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="XP Pro SP2 ACPI APIC Multi" /noexecute=optin /fastdetect /hal=halmacpi.dll
    multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="XP Pro SP2 ACPI APIC Uni" /noexecute=optin /fastdetect /hal=halaacpi.dll
    multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="XP Pro SP2 ACPI " /noexecute=optin /fastdetect /hal=halacpi.dll
    multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="XP Pro SP2 MPS APIC Multi" /noexecute=optin /fastdetect /hal=halapicm.dll
    multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="XP Pro SP2 MPS APIC Uni" /noexecute=optin /fastdetect /hal=halapicu.dll
    multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="XP Pro SP2 APM Standard PC" /noexecute=optin /fastdetect /hal=halapm.dll
    I call that mldr.ini and it uses a modified NTLDR file, labeled MTLDR. This lets me make directories where I want for organization etc. In my boot directory lives all of the files I might possibly need for repairing or booting the machine. I also have another boot file, called oldr.ini, looks like this (and I have the NTLDR modified as OTLDR as well)
    Code:
    [boot loader]
    timeout=30
    default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
    [operating systems]
    C:\CMDCONS\BOOTSECT.DAT="Microsoft Windows Recovery Console" /cmdcons
    multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="XP Pro - Check for Serial Devices" /bootlog /sos
    multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="XP Pro - SafeBoot w/Alt Shell" /safeboot:minimal(alternateshell)
    multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="XP Pro - Base Video" /bootlog /sos /basevideo /fastdetect
    multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="XP Pro - No DEP" /bootlog /sos /noexecute=alwaysoff /fastdetect
    multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="XP Pro - All DEP ON" /bootlog /sos /noexecute=alwayson /fastdetect
    multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="XP Pro - Default DEP" /bootlog /sos /noexecute=optin /fastdetect
    multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="XP Pro - Physical Address Extention OFF (DEP OFF)" /bootlog /sos /noexecute=alwaysoff /nopae /fastdetect
    multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="XP Pro - Physical Address Extention ON (DEP OFF)" /bootlog /sos /noexecute=alwaysoff /pae /fastdetect
    multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="XP Pro - CPU Throttling OFF" /bootlog /sos /usepmtimer
    In the past I used ini files like this one
    Code:
    [boot loader]
    timeout=30
    default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
    [operating systems]
    multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="XP Pro - Normal boot" /noexecute=optin /fastdetect
    C:\CMDCONS\BOOTSECT.DAT="Microsoft Windows Recovery Console" /cmdcons
    
    multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="XP Pro - SOS (verbose drivers)" /sos /fastdetect
    multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="XP Pro - LOG - SOS" /bootlog /sos /fastdetect
    multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="XP Pro - LOG - SOS - Serial Mice" /bootlog /sos
    
    multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="XP Pro - SafeBoot" /safeboot:minimal
    multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="XP Pro - SafeBoot w/Network" /safeboot:network
    multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="XP Pro - SafeBoot w/Alt Shell" /safeboot:minimal(alternateshell)
    
    multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="XP Pro - Base Video (vga driver)" /basevideo /fastdetect
    multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="XP Pro - LOG - Base Video" /bootlog /basevideo /fastdetect
    multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="XP Pro - LOG - SOS - Base Video" /bootlog /sos /basevideo /fastdetect
    multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="XP Pro - LOG - SOS - Base Video - Serial Mice" /bootlog /sos /basevideo
    
    multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="XP Pro - Last Known Good Registry Settings" /lastknowngood /fastdetect
    multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="XP Pro - LOG - Last Known Good" /bootlog /lastknowngood /fastdetect
    multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="XP Pro - LOG - SOS - Last Known Good" /bootlog /sos /lastknowngood /fastdetect
    multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="XP Pro - LOG - SOS - Last Known Good - Serial Mice" /bootlog /sos /lastknowngood
    
    multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="XP Pro - No DEP" /noexecute=alwaysoff /fastdetect
    multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="XP Pro - LOG - No DEP" /bootlog /noexecute=alwaysoff /fastdetect
    
    multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="XP Pro - All DEP ON" /noexecute=alwayson /fastdetect
    multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="XP Pro - LOG - All DEP ON" /bootlog /noexecute=alwayson /fastdetect
    
    multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="XP Pro - Only Matching DEP" /noexecute=optin /fastdetect
    multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="XP Pro - LOG - Only Matching DEP" /bootlog /noexecute=optin /fastdetect
    
    multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="XP Pro - Only Non Matching DEP" /noexecute=optout /fastdetect
    multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="XP Pro - LOG - Only Non Matching DEP" /bootlog /noexecute=optout /fastdetect
    
    multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="XP Pro - Physical Address Extention OFF (DEP OFF)" /noexecute=alwaysoff /nopae /fastdetect
    multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="XP Pro - LOG - Physical Address Extention OFF (DEP OFF)" /bootlog /noexecute=alwaysoff /nopae /fastdetect
    
    multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="XP Pro - Physical Address Extention ON (DEP OFF)" /noexecute=alwaysoff /pae /fastdetect
    multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="XP Pro - LOG - Physical Address Extention ON (DEP OFF)" /bootlog /noexecute=alwaysoff /pae /fastdetect
    
    multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="XP Pro - CPU Throttling OFF ??" /usepmtimer
    
    ;noexecute - if using dep, pae is enabled, so no need to declare it, else delcare if dep disabled
    /noexecute=optin
    /noexecute=optout
    /noexecute=alwayson
    /noexecute=alwaysoff
    
    ; logging
    /bootlog
    
    ; no logging
    /basevideo
    /lastknowngood
    /nopae
    /pae
    /safeboot:minimal
    /safeboot:network
    /safeboot:minimal(alternateshell)
    /sos
    /usepmtimer
    
    ; fastdetect
    /fastdetect
    Here are some notes I collected on the topic. A little scatter-brained, but they worked for me back then.
    Code:
    i386 source file: i386\driver.cab\halmacpi.dll
    Computer type: ACPI Multiprocessor PC
    Copy to this folder: winnt\System32
    Rename to this file name: hal.dll
    
    i386 source file: i386\driver.cab\halaacpi.dll
    Computer type: ACPI Uniprocessor PC
    Copy to this folder: winnt\System32
    Rename to this file name: hal.dll
    
    i386 source file: i386\driver.cab\halacpi.dll
    Computer type: Advanced Configuration and Power Interface (ACPI) PC
    Copy to this folder: winnt\System32
    Rename to this file name: hal.dll
    
    i386 source file: *i386\driver.cab\halapic.dll
    Computer type: MPS Uniprocessor PC
    Copy to this folder: winnt\System32
    Rename to this file name: hal.dll
    
    i386 source file: *i386\driver.cab\halmps.dll
    Computer type: MPS Multiprocessor PC
    Copy to this folder: winnt\System32
    Rename to this file name: hal.dll
    
    i386 source file: *i386\driver.cab\hal.dll
    Computer type: Standard PC
    Copy to this folder: winnt\System32
    Rename to this file name: hal.dll
    
    ntoskrnl.exe for Uniprocessor
    ntkrnlmp.exe for Multiprocessor
    
    \\Windows\System32\  rename to Hal.dll and Ntoskrnl.exe respectively
    
    example ini would be, for xp, with a limit of 10 entries
    
    [boot loader]
    timeout=30
    default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS  -- or Winnt or whatever you call your directory
    [operating systems]
    multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /noexecute=optin /fastdetect
    
    multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /noexecute=optin /fastdetect /hal=hal.dll /sos
    
    /hal = *the name of the hal to load .dll
    /sos *display drivers as they load
    
    
    
    Common Multiprocessor kernel files	Copy to the following directory	Rename to the following filename	
    i386\driver.cab\ntkrnlmp.exe		winnt\System32			ntoskrnl.exe	
    i386\driver.cab\ntkrpamp.exe	winnt\System32			ntkrnlpa.exe	
    i386\driver.cab\kernel32.dll		winnt\System32			kernel32.dll	
    i386\driver.cab\ntdll.dll		winnt\System32			ntdll.dll	
    i386\driver.cab\win32k.sys		winnt\System32\drivers		win32k.sys	
    i386\driver.cab\winsrv.dll		winnt\System32			winsrv.dll	
    
    Common Uniprocessor kernel files	Copy to the following directory	Rename to the following filename	
    i386\driver.cab\ntoskrnl.exe		winnt\System32			ntoskrnl.exe	
    i386\driver.cab\ntkrnlpa.exe		winnt\System32			ntkrnlpa.exe	
    i386\driver.cab\kernel32.dll		winnt\System32			kernel32.dll	
    i386\driver.cab\ntdll.dll		winnt\System32			ntdll.dll	
    i386\driver.cab\win32k.sys		winnt\System32			win32k.sys	
    i386\driver.cab\winsrv.dll		winnt\System32			winsrv.dll	
    
    4.	Expand the Ntdll.dll file from the original Windows 2000 CD-ROM (i386\driver.cab) or installed service pack to the %SystemRoot%\system32 folder of your original Windows 2000 installation.
    
    For example: 
    drive:\i386\driver.cab /f:ntdll.dll c:\winnt\system32 
    where drive is the drive letter of your CD-ROM drive containing the Windows 2000 Server CD-ROM.	
    
    5.	Expand the Win32k.sys file from the original Windows 2000 CD-ROM (i386\driver.cab) or installed service pack to the %SystemRoot%\system32 folder of your original Windows 2000 installation.	
    
    6.	Expand the Kernel32.dll and Winsrv.dll from the Windows 2000 CD-ROM (i386\driver.cab) or installed service pack to the %SystemRoot%\system32 folder of your original Windows 2000 installation. For example, type the following commands expand drive:\i386\driver.cab /F:kernel32.dll %systemroot%\system32\kernel32.dll
    
    expand drive:\i386\driver.cab /F:winsrv.dll %systemroot%\system32\winsrv.dll
    
    where drive is your CD-ROM drive letter. 
    
    Getting a machine to boot is a good skill to have. I used to carry around floppies with all the hals on them, or a cd and different tools to get non-booting machines fixed. I haven't had to do that is quite some time now come to think of it.

    Anyway, as I understood it, there is a certain "amount" of new hardware that the OS can detect. If I remember correct there is a weight applied to different hardware. Something like an optical drive would be worth 3 pts and a cpu worth 5 pts, and when a change of hardware totaling X pts existed, the machine went into "you are a pirate" mode. And it was that mode, that very feature, that put a severely sour taste into my mouth. I never was a pirate, but I was treated like one, and I never forgot that. I am still being treated like a pirate today. But, I digress...

    So there you have it, some good data from my archives. I don't claim to be the author of any of it, although I might have been. I went off seeking infos, and I jotted down what I found, or even copy/pasted it. Do with it what you will ;) Ignore the windows 2000 references though lol.

    Sul.
     
  6. Brian K

    Brian K Imaging Specialist

    Joined:
    Jan 28, 2005
    Posts:
    12,415
    Location:
    NSW, Australia
    Sul,

    Thanks. That's my experience too. A black screen with no error message. On the next boot you see the Start Windows Normally screen but you don't get past that screen.

    TheKid7 will be using TBOSDT and I don't expect him to have any trouble getting the new "computer" to boot into Windows. TBOSDT can Remove installed drivers (and backup the registry), install storage controller drivers and change the HAL if needed. All done in a minute or two.
     
  7. DVD+R

    DVD+R Registered Member

    Joined:
    Aug 2, 2006
    Posts:
    1,979
    Location:
    The Antipodes
    Don't forget to change the SATA configuration in BIOS or you'll Blue Screen everytime you Startup, XP doesnt like ACHI SATA configuration
     
  8. Sully

    Sully Registered Member

    Joined:
    Dec 23, 2005
    Posts:
    3,719
    The problem is that you don't have the AHCI driver installed. There is a method you can use to switch the driver in the registry, then turn off the machine, change the AHCI mode, then boot up and it works fine. You just have to know this is happening and how to fix it.

    I prefer AHCI now. Every time I have tested it, it is markedly faster than without it.

    Sul.
     
  9. Rules

    Rules Registered Member

    Joined:
    Mar 3, 2009
    Posts:
    730
    Location:
    EU
    The method to switch driver in AHCI is :

    Start>Run>Regedit

    After go to [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\msahci]

    In the right window look for the "Start" Value and set it to zero (default is 3), then restart.

    Rules.
     
  10. Sully

    Sully Registered Member

    Joined:
    Dec 23, 2005
    Posts:
    3,719
    Yep, thats the one I use. Works a charm.

    Sul.
     
Thread Status:
Not open for further replies.
  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.