ACPI Tables

Surface RT ACPI Tables.

ACPI Tables

  • APIC - Advanced Programmable Interrupt Controller

  • BGRT - Boot Graphics Resource Table

  • DBG2 - Debug Port Table 2

  • CSRT - Core System Resource Table

  • DSDT - Differentiated System Description Table

  • FACP - Fixed ACPI Description Table

  • FPDT - Firmware Performance Data Table

  • MSDM - Microsoft Data Management table

  • RSDP - Root System Description Pointer

  • SSDT - Secondary System Description Table

  • TPM2 - Trusted Platform Module 2.0

  • WDSA - Windows Specific Table. Contains tCover information

  • XSDT - Extended System Description Table Fields

Get ACPI-Tables from Surface RT

You need to be able to run unsigned EFI apps. get from And use the startup script below. Dumped tables should be in the dump folder

Decompile ACPI-Tables

To decompile ACPI on Linux you would normally use IASL. But all Tables are compiled with the Microsoft ASL compiler. Since MS_ASL isn't as strict as IASL, IASL detects some errors and won't decompile all tables.


Decompile with IASL
iasl -da APIC0000.bin BGRT0000.bin CSRT0000.bin DBG20000.bin FACP0000.bin FPDT0000.bin MSDM0000.bin TPM20000.bin XSDT0000.bin


Decompile with MS_ASL
wine microsoft_asl.exe /u /e DSDT0000.bin
wine microsoft_asl.exe /u /e SSDT0000.bin
wine microsoft_asl.exe /u /e SSDT0001.bin
wine microsoft_asl.exe /u /e WDSA0000.bin

You can't decompile RSDP0000.bin but it only contains 2 Pointers