Jump to content

Change HAL from Standard PC to ACPI PC


Cixert

Recommended Posts

I open this specific thread after having commented on it in this other one
https://msfn.org/board/topic/186134-ntldr-is-missing-when-updating-the-bios/#comment-1264144

because the matter does not seem easy to resolve.

Unlike Windows 2000, Windows XP does not have options to change the HAL in Device Manager. So to make a HAL change it is necessary to change the 2 kernel files (normal and PAE) and the HAL.dll library to the correct version.
A while ago I mentioned how to do it
https://msfn.org/board/topic/177962-activate-all-processor-cores-at-startup/?do=findComment&comment=1156790
and it works without problems from ACPI uniprocessor to ACPI-APIC uniprocessor or ACPI-APIC multiprocessor and vice versa.
It also works if it is change from the previous ones to Standard PC (non-ACPI) and I think that in that case it is possible to return to the ACPI version.
But not if the original Windows XP installation was done as Standard PC, the previous method does not work to switch to ACPI, since the BSOD 0x7B occurs.
This website
https://falconfour.wordpress.com/2011/03/19/how-to-switch-windows-xp-hal-_back_-from-standard-pc-to-acpi-the-clean-way/comment-page-1/
describes a method so that the option to change to HAL ACPI in Windows XP appears in the device manager in the Computer section, but the result is the same BSOD 0x7B.

A possible solution would be to reinstall XP with the repair option but I have a VL-VOL-VLK copy and the repair option does not come, so another parallel XP has been installed in C: but the new copy neither has ACPI installed.
I am testing with an old motherboard with Slot 1 and 440BX chipset.
After updating the BIOS, the Windows XP installation still does not set ACPI by default.

When installing XP it is possible to choose the correct HAL when the installation CD during boot says "press F6 if you want to change the hard drive drivers", then by pressing F5 instead of F6 a menu appears after a few seconds to choose the HAL .

 

Other way I have found to install ACPI on this computer is by pasting a system image with ACPI created from another computer, so it works without problems, If we have the knowledge of how to transfer XP installations images from one computer to another.

I want to find a method to directly change the HAL from Standard PC to ACPI in the same XP installation and without reinstalling.
I think the BSOD occurs because the ACPI drivers are missing:
-ACPI fixed feature button.
-ACPI power button.
-Microsoft system compatible with ACPI

So I would like to find a way to install these drivers or modify the registry so that ACPI works. I think that if those drivers are installed and the correct ACPI information is entered into the registry (for example by extracting it from another computer) the system would work.


I still have to try the ACPI 2.0 method, I have to look at it calmly, I don't quite understand it so I don't know if this method would work.
https://msfn.org/board/topic/183464-compiling-acpi-v20-driver-for-windows-xp-sp3-and-windows-2003-sp2-x32x64/

 

Edited by Cixert
Link to comment
Share on other sites


@Cixert

It is not difficult, to change from Standard PC to Acpi Multiprocessor via a Bios, that supports ACPI for XP.

Your case is very different from this:

After Bios update, your DSDT and SSDT tables have changed. Now, XP CANT boot any longer with acpi via them.

From my experiments, mostly this goes to an "new" incompatible Graphik Mode.

Your problem can be easy solved with the acpi patcher at boot time from @Mov AX, 0xDEAD.

There you give them via modded ntldr always your old acpi tables, that you have fetched for example via RWEverthing in binary form.

After this, your compi works like before, tricking out the new Bios

Dietmar

PS: Another way is just to go back to your old Bios. But this can be impossible, even with EEprom Bios chip writer.

Link to comment
Share on other sites

15 hours ago, Dietmar said:

@Cixert

It is not difficult, to change from Standard PC to Acpi Multiprocessor via a Bios, that supports ACPI for XP.

Your case is very different from this:

After Bios update, your DSDT and SSDT tables have changed. Now, XP CANT boot any longer with acpi via them.

From my experiments, mostly this goes to an "new" incompatible Graphik Mode.

Your problem can be easy solved with the acpi patcher at boot time from @Mov AX, 0xDEAD.

There you give them via modded ntldr always your old acpi tables, that you have fetched for example via RWEverthing in binary form.

After this, your compi works like before, tricking out the new Bios

Dietmar

PS: Another way is just to go back to your old Bios. But this can be impossible, even with EEprom Bios chip writer.

Thanks, I'll try it.
I feel like I didn't express myself well with the BIOS update. What I mean is that when installing XP with the old BIOS version, ACPI was not installed by default and neither was it installed once the BIOS was updated. Unless I press F5 during the CD-ROM boot process and choose the correct HALL.
Greetings

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...