@echo off :DRIVER_HAL_UPDATE SET HAL= IF %NUMBER_OF_PROCESSORS%==1 ( devcon.exe /find @ROOT\ACPI_HAL\0000 | find /i "Multiprocessor" > NUL && SET HAL=ACPIAPIC_UP devcon.exe /find @ROOT\PCI_HAL\0000 | find /i "Multiprocessor" > NUL && SET HAL=MPS_UP ) ELSE ( devcon.exe /find @ROOT\ACPI_HAL\0000 | find /i "Uniprocessor" > NUL && SET HAL=ACPIAPIC_MP devcon.exe /find @ROOT\PCI_HAL\0000 | find /i "Uniprocessor" > NUL && SET HAL=MPS_MP ) IF NOT "%HAL%"=="" ( ECHO. ECHO ---------------------------------------- ECHO Installing %HAL% HAL ECHO ---------------------------------------- ECHO. devcon.exe sethwid @ROOT\PCI_HAL\0000 := !E_ISA_UP !ACPIPIC_UP !ACPIAPIC_UP !ACPIAPIC_MP !MPS_UP !MPS_MP !SGI_MPS_MP !SYSPRO_MP !SGI_MPS_MP devcon.exe sethwid @ROOT\ACPI_HAL\0000 := !E_ISA_UP !ACPIPIC_UP !ACPIAPIC_UP !ACPIAPIC_MP !MPS_UP !MPS_MP !SGI_MPS_MP !SYSPRO_MP !SGI_MPS_MP devcon.exe sethwid @ROOT\PCI_HAL\0000 := +%HAL% devcon.exe sethwid @ROOT\ACPI_HAL\0000 := +%HAL% devcon.exe update %windir%\inf\hal.inf %HAL% devcon.exe ReScan ECHO. ECHO ---------------------------------------- ECHO Rebooting ECHO ---------------------------------------- ECHO. devcon.exe Reboot ) ELSE ( ECHO. ECHO ---------------------------------------- ECHO Correct HAL Detected ECHO ---------------------------------------- ECHO. ) GOTO :EOF