diff --git a/Desktops/desktop-disable.html b/Desktops/desktop-disable.html index 3dcfd46..527eb5f 100644 --- a/Desktops/desktop-disable.html +++ b/Desktops/desktop-disable.html @@ -486,7 +486,7 @@ Method (_SB.PCI0.PEG0.PEGP._DSM, 4, NotSerialized) diff --git a/Desktops/desktop-ec.html b/Desktops/desktop-ec.html index 22c4373..7627154 100644 --- a/Desktops/desktop-ec.html +++ b/Desktops/desktop-ec.html @@ -557,7 +557,7 @@ External (_SB_.PCI0.LPCB.EC0, DeviceObj) <- Rename this diff --git a/Laptops/backlight.html b/Laptops/backlight.html index 9065d61..182b6cb 100644 --- a/Laptops/backlight.html +++ b/Laptops/backlight.html @@ -472,7 +472,7 @@ diff --git a/Laptops/laptop-disable.html b/Laptops/laptop-disable.html index 94b01a3..6ee88e2 100644 --- a/Laptops/laptop-disable.html +++ b/Laptops/laptop-disable.html @@ -507,7 +507,7 @@ External (_SB_.PCI0.PEG0.PEGP._PS3, MethodObj) // dGPU ACPI Path diff --git a/Laptops/laptop-ec.html b/Laptops/laptop-ec.html index 24bc4f9..df6645a 100644 --- a/Laptops/laptop-ec.html +++ b/Laptops/laptop-ec.html @@ -542,7 +542,7 @@ diff --git a/Laptops/trackpad.html b/Laptops/trackpad.html index 636399b..5ddef28 100644 --- a/Laptops/trackpad.html +++ b/Laptops/trackpad.html @@ -487,7 +487,7 @@ diff --git a/Manual/compile.html b/Manual/compile.html index d5795ac..d654159 100644 --- a/Manual/compile.html +++ b/Manual/compile.html @@ -409,20 +409,36 @@

Compiling and decompiling ACPI Tables

+

See General Troubleshooting if you have dumping/compiling errors

+

macOS

So compiling DSDTs and SSDTs are quite easy with macOS, all you need is MaciASL. To compile, just File -> SaveAs -> ACPI Machine Language Binary(.AML), decompiling is just opening the file in MaciASL.

+

For those who prefer the command line, grab iasl-stable and run the following:

+
path/to/iasl.exe path/to/DSDT.aml
+
+ +

Windows

Compiling and decompiling on windows is fairly simple though, you will need iasl.exe and Command Prompt:

path/to/iasl.exe path/to/DSDT.aml
 

-

If compiled .aml file is provided, a decompiled .dsl file will be given and vice versa.

+

Linux

Compiling and decompiling with Linux is just as simple, you will need a special copy of iasl and terminal:

path/to/iasl path/to/DSDT.aml
 
-

If compiled .aml file is provided, a decompiled .dsl file will be given and vice versa.

-

See General Troubleshooting if you have dumping/compiling errors

+
@@ -466,7 +482,7 @@ diff --git a/Manual/dump.html b/Manual/dump.html index cb8d688..1d58c4f 100644 --- a/Manual/dump.html +++ b/Manual/dump.html @@ -490,7 +490,7 @@ fs0:\EFI\OC\Tools> acpidump.efi -b -n DSDT -z diff --git a/Universal/awac.html b/Universal/awac.html index 1a9c06d..572981d 100644 --- a/Universal/awac.html +++ b/Universal/awac.html @@ -493,7 +493,7 @@ diff --git a/Universal/irq.html b/Universal/irq.html index acbf715..77431c4 100644 --- a/Universal/irq.html +++ b/Universal/irq.html @@ -454,7 +454,7 @@ diff --git a/Universal/nvram.html b/Universal/nvram.html index 7e78bbc..abefe85 100644 --- a/Universal/nvram.html +++ b/Universal/nvram.html @@ -475,7 +475,7 @@ diff --git a/Universal/plug.html b/Universal/plug.html index e473d27..19a3564 100644 --- a/Universal/plug.html +++ b/Universal/plug.html @@ -476,7 +476,7 @@ Scope (\_PR.CPU0) <- Rename this diff --git a/Universal/smbus.html b/Universal/smbus.html index d21908e..cadf244 100644 --- a/Universal/smbus.html +++ b/Universal/smbus.html @@ -509,7 +509,7 @@ Device (_SB.PC00.SMBS.BUS0) <- Renamed diff --git a/Universal/spoof.html b/Universal/spoof.html index b2ca7d4..2bfa2e5 100644 --- a/Universal/spoof.html +++ b/Universal/spoof.html @@ -527,7 +527,7 @@ Buffer () diff --git a/cleanup.html b/cleanup.html index ce94238..dec00bf 100644 --- a/cleanup.html +++ b/cleanup.html @@ -461,7 +461,7 @@ diff --git a/index.html b/index.html index 3be4139..9269f1a 100644 --- a/index.html +++ b/index.html @@ -408,30 +408,31 @@

Getting started with ACPI

A quick explainer on ACPI and how to make SSDTs

-

So what are DSDTs and SSDTs? Well, these are tables present in your firmware that outline hardware devices like USB controllers, CPU threads, embedded controllers, system clocks and such. A DSDT(Differentiated System Description Table) can be seen as the body holding most of the info with smaller bits of info being passed by the SSDT(Secondary System Description Table)

+

So what are DSDTs and SSDTs? Well, these are tables present in your firmware that outline hardware devices like USB controllers, CPU threads, embedded controllers, system clocks and such. A DSDT(Differentiated System Description Table) can be seen as the body holding most of the info with smaller bits of info being passed by the SSDT(Secondary System Description Table). You can think of the DSDT as the building blueprints with SSDTs being sticky notes outlining extra details to the project

So why do we care about these tables?

macOS can be very picky about the devices present in the DSDT and so our job is to correct it. The main devices that need to be corrected for macOS to work properly: