Saturday, November 7, 2009

How to obtain the DSDT from your laptop

There are many ways to rip the DSDT out of the laptop BIOS.
If there is a BIOS editor it is possible to rip out the .AML file.
However below is an easy way to obtain the DSDT AML file.
First download and install a powerful system BIOS viewing utility called RW-Everything.

Next launch the program.
Click the "ACPI" picture menu button just below the menu bar.

It will say building DSDT and you have to wait for a while.

Once it is ready, Click on the DSDT Tab and press Save as Binary (The Picture of the Floppy Disk with a "bin" word on it or Shift + F2)

Name it as DSDT.AML

This will be the AML file you will decompile to readable text by a ASL Compiler.

If you want me to check it you can upload it on a file sharing site (please upload it on a easy to download site like mediafire etc no rapidshare please) I will check the DSDT syntax.

4 comments:

  1. This file contains iasl output, which gives a few errors on compile. This guy seems to have worked on it, but I can't seem to replicate it- http://ubuntuforums.org/archive/index.php/t-473996.html If you could just have a look, I'd be very grateful.

    http://www.mediafire.com/?zgtzkh0ytmt

    ReplyDelete
  2. Just need to return Zero at corresponding bracket points especially after a "IF" and "WHILE" it is more of a formality standard by IASL than any other reasons.

    ReplyDelete
  3. Method (BTST, 0, NotSerialized)
    {
    If (\_SB.ECOK)
    {
    Acquire (\_SB.PCI0.LPCB.EC0.MUT1, 0xFFFF)
    Store (\_SB.PCI0.LPCB.EC0.KSWH, Local0)
    XOr (Local0, 0x01, Local0)
    Store (\_SB.PCI0.LPCB.EC0.BTHE, Local7)
    Release (\_SB.PCI0.LPCB.EC0.MUT1)
    If (Local0)
    {
    ShiftLeft (Local7, 0x06, Local6)
    ShiftLeft (Local7, 0x07, Local7)
    Or (Local7, Local6, Local1)
    Or (Local0, Local1, Local2)
    Return (Local2)
    }
    Else
    {
    Return (Zero)
    }

    }
    Return (Zero)
    }

    Method (EVNT, 1, NotSerialized)
    {
    While (VZOK)
    {
    If (LEqual (VZOK, 0x01))
    {
    Store (Arg0, VZOK)
    Notify (\_SB.VALZ, 0x80)
    Return (Zero)
    }
    Else
    {
    Sleep (0x05)
    }
    }
    Return (Zero)
    }

    ReplyDelete
  4. I tried, man, but it still gives me errors on compile. Could you possibly compile it? I've attached the dsl file this time-

    http://www.mediafire.com/?dwnhenz3tem

    ReplyDelete