Contribute
Register

B660M-k DDR4 DSDT Compiling

Status
Not open for further replies.
Joined
Jul 17, 2022
Messages
11
Motherboard
Asus ROG STRIX Z790-A
CPU
i5-12400F
Graphics
RTX 4060
From a few days i'm going thru the learning process of decompiling the DSDT with the correct SSDTs aml.
I've managed (thanks to the guide) to obtain the DSDT and SSDTs files with Clover, basic steps to get started.
Decompiled the DSDT with iASL using various the commands
Code:
iasl -e SSDT* -d DSDT.aml
iasl -dl DSDT.aml SSDT*.aml
I honestly liked more the first line (but i could be wrong) because it gives a cleaner look to the code.
Now the problem is that with both methods it keeps giving me the same error when i try to recompile the DSDT.dsl
Code:
dsdt.dsl 103688:                     Case (Zero)
Error    6126 -                        ^ syntax error, unexpected PARSEOP_CASE

dsdt.dsl 103689:                     {
Error    6126 -                     ^ syntax error, unexpected '{'

dsdt.dsl 103696:                     Case (0x10)
Error    6126 -                        ^ syntax error, unexpected PARSEOP_CASE

dsdt.dsl 103697:                     {
Error    6126 -                     ^ syntax error, unexpected '{'

dsdt.dsl 103712:             Else
Error    6126 -                ^ syntax error, unexpected PARSEOP_ELSE

dsdt.dsl 103716:
Error    6126 - syntax error, unexpected '}', expecting $end and premature End-Of-File

If i delete this code section, the DSDT came out without errors but after testing it doesn't work and the system hang up.

Code:
        Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
        {
            If (CMPB (Arg0, ToUUID ("d4a50b75-65c7-46f7-bfb7-41514cea0244") /* Unknown UUID */))
            {
                Debug = "NBCI"
                Name (_T_0, Zero)  // _T_x: Emitted by ASL Compiler, x=0-9, A-Z
                Name (NBSH, Buffer (0xA2)
                {
                    /* 0000 */  0x82, 0xF3, 0x4D, 0xDB, 0x9C, 0x0B, 0xAF, 0x27,  // ..M....'
                    /* 0008 */  0x52, 0x44, 0xA2, 0x00, 0x00, 0x00, 0x00, 0x01,  // RD......
                    /* 0010 */  0x00, 0x00, 0x00, 0x00, 0xDE, 0x10, 0x00, 0x00,  // ........
                    /* 0018 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
                    /* 0020 */  0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0x34, 0x00,  // ......4.
                    /* 0028 */  0x00, 0x00, 0x01, 0x00, 0x47, 0x00, 0x00, 0x00,  // ....G...
                    /* 0030 */  0x02, 0x00, 0x54, 0x00, 0x00, 0x00, 0x03, 0x00,  // ..T.....
                    /* 0038 */  0x52, 0x00, 0x00, 0x00, 0x04, 0x00, 0x50, 0x00,  // R.....P.
                    /* 0040 */  0x00, 0x00, 0x05, 0x00, 0x4E, 0x00, 0x00, 0x00,  // ....N...
                    /* 0048 */  0x06, 0x00, 0x4C, 0x00, 0x00, 0x00, 0x07, 0x00,  // ..L.....
                    /* 0050 */  0x4A, 0x00, 0x00, 0x00, 0x08, 0x00, 0x48, 0x00,  // J.....H.
                    /* 0058 */  0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0xD9, 0x1C,  // ........
                    /* 0060 */  0x04, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,  // ........
                    /* 0068 */  0x41, 0x5D, 0xC9, 0x00, 0x01, 0x24, 0x2E, 0x00,  // A]...$..
                    /* 0070 */  0x02, 0x00, 0xFF, 0x01, 0x00, 0x00, 0x00, 0xD9,  // ........
                    /* 0078 */  0x1C, 0x04, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00,  // ........
                    /* 0080 */  0x00, 0x44, 0x50, 0x02, 0x01, 0x03, 0x00, 0x00,  // .DP.....
                    /* 0088 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
                    /* 0090 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
                    /* 0098 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
                    /* 00A0 */  0x00, 0x00                                       // ..
                })
                While (ToInteger (Arg2))
                {
                    Case (Zero)
                    {
                        Debug = "NBCI-Func Zero"
                        Return (Buffer (0x04)
                        {
                             0x21, 0x00, 0x11, 0x00                           // !...
                        })
                    }
                    Case (0x10)
                    {
                        Debug = "NBCI-Func 0x10"
                        CreateWordField (Arg3, 0x02, USRG)
                        CreateField (Arg3, 0x0C, 0x04, OBJS)
                        If ((USRG == 0x4452))
                        {
                            If ((ToInteger (OBJS) == Zero))
                            {
                                Debug = NBSH /* \_SB_.PC00.PEG1.PEGP._DSM.NBSH */
                                Return (NBSH) /* \_SB_.PC00.PEG1.PEGP._DSM.NBSH */
                            }
                        }
                    }
                }
            }
            Else
            {
                Return (Zero)
            }
This is on the latest ACPICA 20220331
I would gladly receive some help if possible... thank you
 

Attachments

  • b660DSDT.rar
    83 KB · Views: 66
From a few days i'm going thru the learning process of decompiling the DSDT with the correct SSDTs aml.
I've managed (thanks to the guide) to obtain the DSDT and SSDTs files with Clover, basic steps to get started.
Decompiled the DSDT with iASL using various the commands
Code:
iasl -e SSDT* -d DSDT.aml
iasl -dl DSDT.aml SSDT*.aml
I honestly liked more the first line (but i could be wrong) because it gives a cleaner look to the code.
Now the problem is that with both methods it keeps giving me the same error when i try to recompile the DSDT.dsl
Code:
dsdt.dsl 103688:                     Case (Zero)
Error    6126 -                        ^ syntax error, unexpected PARSEOP_CASE

dsdt.dsl 103689:                     {
Error    6126 -                     ^ syntax error, unexpected '{'

dsdt.dsl 103696:                     Case (0x10)
Error    6126 -                        ^ syntax error, unexpected PARSEOP_CASE

dsdt.dsl 103697:                     {
Error    6126 -                     ^ syntax error, unexpected '{'

dsdt.dsl 103712:             Else
Error    6126 -                ^ syntax error, unexpected PARSEOP_ELSE

dsdt.dsl 103716:
Error    6126 - syntax error, unexpected '}', expecting $end and premature End-Of-File

If i delete this code section, the DSDT came out without errors but after testing it doesn't work and the system hang up.

Code:
        Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
        {
            If (CMPB (Arg0, ToUUID ("d4a50b75-65c7-46f7-bfb7-41514cea0244") /* Unknown UUID */))
            {
                Debug = "NBCI"
                Name (_T_0, Zero)  // _T_x: Emitted by ASL Compiler, x=0-9, A-Z
                Name (NBSH, Buffer (0xA2)
                {
                    /* 0000 */  0x82, 0xF3, 0x4D, 0xDB, 0x9C, 0x0B, 0xAF, 0x27,  // ..M....'
                    /* 0008 */  0x52, 0x44, 0xA2, 0x00, 0x00, 0x00, 0x00, 0x01,  // RD......
                    /* 0010 */  0x00, 0x00, 0x00, 0x00, 0xDE, 0x10, 0x00, 0x00,  // ........
                    /* 0018 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
                    /* 0020 */  0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0x34, 0x00,  // ......4.
                    /* 0028 */  0x00, 0x00, 0x01, 0x00, 0x47, 0x00, 0x00, 0x00,  // ....G...
                    /* 0030 */  0x02, 0x00, 0x54, 0x00, 0x00, 0x00, 0x03, 0x00,  // ..T.....
                    /* 0038 */  0x52, 0x00, 0x00, 0x00, 0x04, 0x00, 0x50, 0x00,  // R.....P.
                    /* 0040 */  0x00, 0x00, 0x05, 0x00, 0x4E, 0x00, 0x00, 0x00,  // ....N...
                    /* 0048 */  0x06, 0x00, 0x4C, 0x00, 0x00, 0x00, 0x07, 0x00,  // ..L.....
                    /* 0050 */  0x4A, 0x00, 0x00, 0x00, 0x08, 0x00, 0x48, 0x00,  // J.....H.
                    /* 0058 */  0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0xD9, 0x1C,  // ........
                    /* 0060 */  0x04, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,  // ........
                    /* 0068 */  0x41, 0x5D, 0xC9, 0x00, 0x01, 0x24, 0x2E, 0x00,  // A]...$..
                    /* 0070 */  0x02, 0x00, 0xFF, 0x01, 0x00, 0x00, 0x00, 0xD9,  // ........
                    /* 0078 */  0x1C, 0x04, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00,  // ........
                    /* 0080 */  0x00, 0x44, 0x50, 0x02, 0x01, 0x03, 0x00, 0x00,  // .DP.....
                    /* 0088 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
                    /* 0090 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
                    /* 0098 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
                    /* 00A0 */  0x00, 0x00                                       // ..
                })
                While (ToInteger (Arg2))
                {
                    Case (Zero)
                    {
                        Debug = "NBCI-Func Zero"
                        Return (Buffer (0x04)
                        {
                             0x21, 0x00, 0x11, 0x00                           // !...
                        })
                    }
                    Case (0x10)
                    {
                        Debug = "NBCI-Func 0x10"
                        CreateWordField (Arg3, 0x02, USRG)
                        CreateField (Arg3, 0x0C, 0x04, OBJS)
                        If ((USRG == 0x4452))
                        {
                            If ((ToInteger (OBJS) == Zero))
                            {
                                Debug = NBSH /* \_SB_.PC00.PEG1.PEGP._DSM.NBSH */
                                Return (NBSH) /* \_SB_.PC00.PEG1.PEGP._DSM.NBSH */
                            }
                        }
                    }
                }
            }
            Else
            {
                Return (Zero)
            }
This is on the latest ACPICA 20220331
I would gladly receive some help if possible... thank you
what files are you trying to get from this as DSDT are not normally needed

you can use:
which will extract a DSDT and gives you the option to generate needed SSDT's
 
what files are you trying to get from this as DSDT are not normally needed

you can use:
which will extract a DSDT and gives you the option to generate needed SSDT's
Appreciated, Feartech, for the tools but I'm trying to directly edit the DSDT (decompile/recompile)
Have you got any idea or method on how to fix that part of the code so I can correctly recompile it with the iASL Tool?
 
Appreciated, Feartech, for the tools but I'm trying to directly edit the DSDT (decompile/recompile)
Have you got any idea or method on how to fix that part of the code so I can correctly recompile it with the iASL Tool?
will you be using opencore?
 
will you be using opencore?
I'm going to directly replace the DSDT on the bios rom (i've already done it on older builds and worked flawlessly).
If i can recompile it correctly it should work without problems.
 
I'm going to directly replace the DSDT on the bios rom (i've already done it on older builds and worked flawlessly).
If i can recompile it correctly it should work without problems.
will you be using opencore?
 
will you be using opencore?
Honestly I'm going to try first on a windows based system. If you know different ways to fix this compiling error (and the code) I'll try all methods you'll provide.
I'm kinda blocked in this loop now.
 
Honestly I'm going to try first on a windows based system. If you know different ways to fix this compiling error (and the code) I'll try all methods you'll provide.
I'm kinda blocked in this loop now.
it seems like a huge waste of time as you will not be using a DSDT with hackintosh whatsoever, you will be using hotpatch files instead

suggest you look into this:
 
it seems like a huge waste of time as you will not be using a DSDT with hackintosh whatsoever, you will be using hotpatch files instead

suggest you look into this:
So there isn't a way to remove the error via the code itself? Well... thank you anyway for the time, I'm going to look around.
 
So there isn't a way to remove the error via the code itself? Well... thank you anyway for the time, I'm going to look around.
you need to be editing the de compiled dsl file
 
Status
Not open for further replies.
Back
Top