Last time I bought a second hand motherboard for my old Pentium III processor. However while I was running Windows XP sp 2 I got my Windows freezing (hung). What the heck with this !!!!.
The next part will explain about how to deal with this problem.
Let’s analyze the problem. I’m sure that Windows will not freeze if there is no problem. First I open Event Viewer (eventvwr.msc) from Run
What is this ACPI ???. ACPI stands for Advanced Configuration and Power Interface. Hmm power management. So what is the relations of ACPI to my “freezing” computer??. I saw trough the error log it says:
AMLI: ACPI BIOS is attempting to write to an illegal IO port address (0x70), which lies in the 0x70 – 0x71 protected address range. This could lead to system instability. Please contact your system vendor for technical assistance.
Wow ACPI BIOS is trying to write illegal IO port address. According to Microsoft manual of ACPI and an article in internet :
What is ACPI?
The Advanced Configuration and Power Interface (ACPI) is a part of the BIOS and the operating system. The presence of ACPI in the BIOS on a given system determines whether operating systems of the Windows 2000/XP generation can make full use of features such as Power Management and Plug and Play (PnP).
The Power Management applet, accessed in the Control Panel, lets you control power usage and power savings. For example, you can configure a system to go into hibernation (sleep mode) after a preset time period, or to restore power at the touch of a button.
ACPI has its uses on all systems, but it’s particularly beneficial on laptops, where power management can be crucial. ACPI also interacts with PnP and can help PnP routines successfully load drivers for PnP devices.
An error such as the one above involves interaction between the BIOS and the operating system via the Hardware Abstraction Layer (HAL) driver. To fully understand what’s going on, let’s take a deeper look at how ACPI in the BIOS (ACPI BIOS) and in the operating system (ACPI OS) talk to each other in situations that might give rise to this error.
Part of Microsoft’s development of XP involved finding new ways for ACPI BIOS implementations to access and modify hardware resources. Traditionally, ACPI BIOS implementations try to manipulate hardware resources directly through BIOS code. When the ACPI BIOS tries to access and/or modify the hardware resources at the same time as the operating system, an imbalance arises because these operations can’t be synchronized. This imbalance can give rise to system instability and/or a hung machine, which needs to be shut down. It’s at this point the user is likely to see an ACPI-related error message such as the one above. In pre-Win2K operating systems, this error would often be unrecoverable, and the machine would crash with a Blue Screen of Death. So, although the error is annoying, at least it’s an improvement over the previous situation.
The work to improve this weakness involved identifying which system resources would generate the error, and the result was a list of affected resources called I/O Blocked Ports. This list is shown in Table A.
|0x000 – 0x00F||DMA Controller 1|
|0x020 – 0x021||Programmable Interrupt Controller||Access is never allowed*|
|0x040 – 0x043||System Timer 1|
|0x048 – 0x04B||Timer 2 Failsafe|
|0x070 – 0x071||System CMOS, RTC|
|0x074 – 0x076||Extended CMOS|
|0x081 – 0x083||DMA1 Page Registers|
|0x087||DMA1 CH0 Low Page|
|0x089||DMA2 CH2 Low Page|
|0x08A – 0x08B||DMA2 CH3 Low Page|
|0x08F||DMA2 Low Page Refresh|
|0x090 – 0x091||Arbitration Control Port Card Select Feedback|
|0x093 – 0x094||Reserved System Board Setup|
|0x096 – 0x097||POS Channel Select|
|0x0A0 – 0x0A1||Cascaded Programmable Interrupt Controller||Access is never allowed*|
|0x0C0 – 0x0DF||ISA DMA|
|0x4D0 – 0x4D1||PIC Edge/Level Control Registers||Access is never allowed*|
|0xCF8 – 0xD00||PCI Configuration Space Access|
|*Read or write accesses to these ports are always blocked.|
I/O Blocked Ports list
As you can see, the 0x70-0x71 address range appears in the list, and it refers specifically to problems with CMOS/RTC. The ACPI interpreter, which ships with the XP kernel, monitors all events that attempt to read or write to or from the above list of restricted ports. When such an event occurs, there are various possible outcomes:
- The event log will flag an error stating that the ACPI interpreter has detected such an illegal operation.
- If the ACPI BIOS code is compatible with XP’s version of ACPI, the operating system will prohibit the read or write from happening, but an error will still be logged in the event viewer.
- If the BIOS code is compatible only with pre-XP operating systems, XP will attempt to synchronize access to resources, and the read/write events will likely be allowed. However, an error will be logged in the event viewer.
In this last situation, the machine may remain unstable. The exception is when the Programmable Interrupt Controller (PIC) and cascaded PIC are involved in attempted read/writes—these addresses are always blocked because they can induce catastrophic system failure. In multiprocessor configurations, the relevant address register can actually become corrupted.
Now that we’ve looked at how BIOS ACPI and operating system ACPI work (or don’t work) together, let’s take a look at how to recover from this error.
This error shouldn’t prevent your system from booting, even if it does demand that it be shut down immediately. If you’re having boot problems, it’s likely there’s at least one other issue involved.
Flash the BIOS
Flashing the BIOS simply means you need to find, download, and apply the latest BIOS update for your motherboard. These updates are usually ready for download from the Web site of your motherboard’s manufacturer. If you’re not sure which motherboard and BIOS you’re using, this information is presented on the screen when you first boot a system. Just write it down and go from there.
A potential problem with this solution is that the latest BIOS updates don’t always correct these types of ACPI problems. This is because different motherboards run different chipsets, which in turn run different BIOSs, and it’s up to the manufacturer to decide when to release a given update. Whether that BIOS update will actually include the required ACPI version update can be anyone’s guess. For more information, you should contact technical support at your motherboard manufacturer.
Load the default BIOS settings
If flashing the BIOS doesn’t work, you can also try to load the BIOS’s default settings. Most BIOS interfaces have an option to “Load Safe Defaults.” This may remedy the situation, or at least give you general stability so that you can tweak various other settings and restore normal operations.
A further step is to disable ACPI in the BIOS, although not all BIOSs allow this procedure. If you do, you may lose all ACPI-related functions in the operating system, and you may not be able to boot XP at all. So use this measure with great caution.
Install Windows XP as a ‘Standard PC’
Another reported fix is to install XP as a “Standard PC,” which disables ACPI and changes the HAL driver.
According to some sort of remedies tips:
- Updating BIOS
This option is not suitable for me since my motherboard has no brand and I could not find any update for my motherboard. Jeez what a problem.
- Kill ACPI settings in BIOS
Not all motherboard has this feature so do mine.
- Disable ACPI while in Windows XP installation
Sorry my computer is already installed with Windows XP
- Update ACPI driver to “standard pc” for already installed PC
I think this is the solution. Let’s take some time to update the driver.
Go to system properties by right-click in My Computer.
If we open Computer tree there will be ACPI PC. Try to right-click and update driver
Then just simply restart Windows XP and Windows will be re-initialized all of its drivers. Then if you are doing right way you should find this thing in device manager.
Yes … and finally I have no more problem with my Windows XP installed PC. That’s all hope this will help you.