
yandong31
-
Posts
3 -
Joined
-
Last visited
Content Type
Profiles
Forums
Events
Downloads
Posts posted by yandong31
-
-
I just tried to modify it manually following your post, but what should I do with this kind of code? G001 isn't even defined. I'm wondering if I should keep the content in the else block.
If (LEqual (G001, One)) { M460 (" OEM-ASL-\\_SB.GPIO._AEI return BUNP (MS)\n", Zero, Zero, Zero, Zero, Zero, Zero) Return (BUNP) } Else { M460 (" OEM-ASL-\\_SB.GPIO._AEI return BUFF (S3)\n", Zero, Zero, Zero, Zero, Zero, Zero) Return (BUFF) }
Attached is my original DSDT
-
On 6/1/2025 at 6:41 AM, spakk said:
Hey@ll
here is the tool – it took a bit of time. I had to fix some errors in the tool, and I hope now everyone can use this simple Python tool.I included everything you need in the zipped file DSDT-Analysis-Tool.zip, including a help file and some images in the "Picture" folder.
It’s not a professional tool, but it should automatically generate everything you need.
If you find any bugs in the code, feel free to fix and improve it — and share it freely with everyone.
With that said, enjoy!
🛠️ What does the DSDT-Analysis-Tool.py do?
The DSDT-Analysis-Tool.py is a small but useful Python script that helps you analyze a
DSDT.aml
file and automatically generate matching SSDTs and OpenCore patches — perfect for Hackintosh users.
✅ What the tool can do automatically:
-
Select DSDT.aml
With one click, you can load yourDSDT.aml
file. It gets copied to the working folder. -
Decompile the DSDT (make it readable)
The tool usesiasl.exe
to convert theDSDT.aml
into aDSDT.dsl
file, which is readable and editable. -
Find devices with "If" conditions
It automatically searches forIf
conditions and the devices inside them, showing which devices are only active under certain conditions. -
Create SSDT-Force
The tool generates an SSDT file with dummy devices so that OpenCore or Clover can recognize them properly. -
Create an OpenCore patch template
A ready-to-use patch template is created automatically for use in OpenCore. -
Check for important devices
It checks if key devices likeHDEF
,GFX0
, orXHC
are present. If any are missing, you get a warning. -
Create individual SSDTs for each device (optional)
If you want, the tool can generate a separate SSDT for each found device.
💾 Where are the files saved?
All generated files are saved automatically in this folder:
C:\Users\Mein\Desktop\DSDT-Analysis-Tool\DSDT_xxx\
🌍 Language Support
The tool detects your system language (German, English, etc.). If your language isn’t supported, it defaults to English.
📦 What’s included in the ZIP file?
The
DSDT-Analysis-Tool.zip
contains:-
The tool itself
-
The required
iasl.exe
-
A help file
-
Example images in the “Bilder” (Images) folder
📌 Note
This is not a professional tool, but it automates many tasks to save time.
If you find a bug or want to improve something:
Feel free to change and share it freely with others!
Have fun using it! 😊
ycg31@ycg31deiMac-Pro ~ % python3 /Users/ycg31/Downloads/DSDT-Analysis-Tool-macOS-Linux/DSDT-Analysis-Tool-macOS-Linux.pyc RuntimeError: Bad magic number in .pyc file ycg31@ycg31deiMac-Pro ~ %
Excuse me, how to solve the following error when using this tool。
-
Bug fix for AM5 new firmware motherboards (DSDT-FIX)
in General
Posted
Method (_ON, 0, NotSerialized) // _ON_: Power On { M000 (0x30D0) M460 (" OEM-ASL-\\_SB.PCI0.GPP1.P0NV._ON\n", Zero, Zero, Zero, Zero, Zero, Zero) Store (G017, Local0) Store (0x02, Local2) Store (\PWGS (Zero), Local5) M460 (" OEM-ASL-\\_SB.PCI0.GPP1.P0NV._ON D3Cold = 0x%X WD3C First = 0x%X SI3V = 0x%X\n", Local0, WD3C, Local5, Zero, Zero, Zero) If (LEqual (Local0, One)) { PWEN () } If (LOr (LEqual (WD3C, One), LEqual (Local5, Zero))) { RPCF () Sleep (0x0A) If (CondRefOf (\UPWD)) { \UPWD () } Store (Zero, WD3C) } Store (One, D0NV) M000 (0x30D1) }
Given that the variables G000 to G020 and three methods have been deleted in the cpvs section previously,Is it correct to modify this code as follows?
Method (_ON, 0, NotSerialized) // _ON_: Power On { M000 (0x30D0) M460 (" OEM-ASL-\\_SB.PCI0.GPP1.P0NV._ON\n", Zero, Zero, Zero, Zero, Zero, Zero) Store (0x02, Local2) If (LEqual (WD3C, One)) { RPCF () Sleep (0x0A) Store (Zero, WD3C) } Store (One, D0NV) M000 (0x30D1) }