
Damnation
Content Type
Profiles
Forums
Events
Posts posted by Damnation
-
-
I used the most recent iasl version to both disassemble and rebuild my tables.
use acpidump -b to get a dump of your acpi tables.
0 -
Ah, good, you're up to where you should be.
Easy2boot normally makes a 2nd partition, it did for me, but it might only be 1 partition for you.
I created a separate /acpi/ folder on the second partition and put my modded .aml files in there.
(hd0) is the Sandisk USB drive.
0 -
I have not made an E2B drive on XP before, I've only ever made them on Windows 10, I hope the tutorial described works for you.
My Sandisk 32GB USB thumb drive shows up as a removable disk, so this has not been an issue for me.
0 -
I'm not sure if it'll make much of a difference but maybe try disabling ACPI and set resources manually.
0 -
Can you also upload a dump of the ACPI tables of your Z690 motherboard for me to have a look at too? I should be able to do the same mod for your board that worked for me.
0 -
I've never had to deal with that, perhaps Easy2boot + A1live grub file manager set it all up for me as I can just select my XP boot drive as a menu item from within Agfm.
Do you have any Windows 10 PCs so you can setup Easy2boot + Agfm on a USB?
0 -
I'm using a1ive grub2 File Manager that gets bundled with Easy2boot, but if you prefer to use something else then use that.
0 -
Here are my original and modded ACPI tables -
You should try the grub2 boottime method. It's a much safer option once it's setup.
like for mine all I need to type in the grub console is
grub> acpi (hd0,2)/acpi/dsdt.aml
grub> acpi (hd0,2)/acpi/ssdt2.aml
grub> acpi (hd0,2)/acpi/ssdt3.aml
grub> acpi (hd0,2)/acpi/ssdt6.aml
and then boot XP and it worked.
Have you got any USB drives with grub2 installed on it?
0 -
For my case, the processor definition was in an SSDT, but yes I confirmed that this worked earlier using grub2 -
the SSDT mod I did also removed the ACPI0007 IDs and reintroduced old deprecated Processor() Opcode which is actually what resolved the issue and was not removing the ACPI0010 container like I'd originally thought.
0 -
The acpi.sys driver of Windows 7, 8.0 and 8.1 all handle ACPI0007 correctly and gets installed as ACPI\Processor - no handling of the ACPI0010 device is necessary.
So we only need to figure out how acpi.sys of Windows 7/8.0/8.1 is able to convert ACPI0007 into ACPI\Processor and then it should work.
1 -
This if my acpi.sys attempt at getting the ACPI0007 device to work as a processor without much success.
Processors don't show up with this version, my approach is most certainly not correct.
0 -
Mac Forum posts about the same issue -
https://www.tonymacx86.com/threads/cpu-wrapping-ssdt-cpu-wrap-ssdt-cpur-acpi0007.316894/
0 -
So Looking at the Windows 8.0 acpi.sys driver and comparing to my compiled version I think that
Quote"ACPI0007", &AcpiProcessorIrpDispatch,
and
Quote"ACPI0007", DEV_MASK_INTERNAL_DEVICE | DEV_CAP_PROCESSOR, //0x10 0030 0000
is what the code should be looking at the both acpi.sys drivers in disassembly and comparing AcpiInternalDeviceFlagTable in hex between the two.
So I think the only thing that the Windows 8.0 acpi.sys driver does at this point is somehow convert the string "ACPI\ACPI0007" into "ACPI\Processor" and it then gets processed by cpu.inf - so code for ACPI0010 may not be necessary?
0 -
Try burning an XP Integral ISO to disc, does the same issue still occur?
0 -
I've heard that using rufus doesn't always work properly for XP, try using WinPrepUSB instead.
0 -
Try XP Integral Edition and see if that works for you -
0 -
It might be a GPU driver issue, try removing GPU drivers from your XP ISO and just use the basic driver, although I'm not sure which GPU drivers XP includes by default.
Do you know what your GPU is?
0 -
on hold.
0 -
OK,
Adding this code
QuoteINTERNAL_DEVICE_FLAG_TABLE AcpiInternalDeviceFlagTable[] = {
...
ACPI0007, DEV_CAP_NO_FILTER | DEV_CAP_NO_STOP | DEV_CAP_PROCESSOR, //0x10 0030 0000
...
}
this caused all of the ACPI0007 devices to completely disappear from the ACPI0010 container.
this line
Quote"Processor", &AcpiProcessorIrpDispatch,
"ACPI0007", &AcpiProcessorIrpDispatch,
this at first seemed like it did nothing, except now when I manually brute force install the processor it now freezes my system. With the older acpi.sys it simply says "Device cannot Start (code 10)" after a brute force install and does not freeze.
any more ideas I could try?
0 -
Could we try telling the XP acpi.sys to treat the CompatibleID "ACPI\ACPI0007" the same as it treats "ACPI\Processor" ?
I don't think the driver does anything with that ACPI0007 ID currently.
I'm not entirely sure how to do this in source code though.
0 -
ACPI0007 makes use of AcpiProcessorIrpDispatch the same as Processor in Windows 10 acpi.sys
AcpiProcessorIrpDispatch does not seem to have been altered since XP and remains the same.
10 AcpiProcessorIrpDispatch
XP AcpiProcessorIrpDispatch
I did try to add ACPI0007 in to XP acpi.sys - but my lack of good programming skills meant I was not able to do this successfully.
edit: In \driver\nt\dat.c
// // Any device in this table is considered to be 'special' // INTERNAL_DEVICE_TABLE AcpiInternalDeviceTable[] = { "ACPI0006", &AcpiGenericBusIrpDispatch, "FixedButton", &AcpiFixedButtonIrpDispatch, "PNP0000", &AcpiRawDeviceIrpDispatch, ... "DockDevice", &AcpiDockPdoIrpDispatch, "ThermalZone", &AcpiThermalZoneIrpDispatch, "Processor", &AcpiProcessorIrpDispatch, NULL, NULL } ;
0 -
Is there anything in the Windows 10 ACPI driver or in the Linux ACPI driver source code that gives hints for how to deal with this change to the ACPI specification?
0 -
I found this in the most recent ACPI documentation -
https://uefi.org/specs/ACPI/6.4/08_Processor_Configuration_and_Control/declaring-processors.html
0 -
The newer iASL compilers do have this message -
^ Legacy Processor() keyword detected. Use Device() keyword instead.
I'm going to assume using Device() instead of Processor() will be the norm for new hardware from now on.
0
Compiling ACPI v2.0 driver for Windows XP SP3 and Windows 2003 SP2 (x32/x64)
in Windows XP
Posted
@Dietmar
You must use the compiled AML binary file and not the DSL file, do not rename DSL file, compile it into AML.
I may have gotten the command slightly wrong
instead of
grub> acpi (hd0,2)/acpi/dsdt.aml
it should be
grub> acpi (hd0,msdos2)/acpi/dsdt.aml
you can check if this is correct by typing
grub> acpi (hd0,msdos2)/
and then pressing TAB to see the directory listing and see where you are.
Make sure the /acpi/ folder exists.