朱屹川Thomas 发表于 2023-10-16 16:47

为什么GPRW补丁会导致进不去win?

我系统安装的是12.4,因为机器睡眠秒醒,打了SSDT-GPRW补丁,虽然usb不能唤醒,都是可以通过按电源键唤醒了,问题是打了这个补丁,会直接导致进win蓝屏,报的是acpi的错误,我看补丁了也做了系统判断,有点迷茫,求大佬赐教!



(打了这条全局补丁就会导致进不去win)






zgchengjie 发表于 2023-10-16 17:17

你这个补丁最后有一行不相关的参数44534454,去掉留空。

朱屹川Thomas 发表于 2023-10-16 17:32

zgchengjie 发表于 2023-10-16 17:17
你这个补丁最后有一行不相关的参数44534454,去掉留空。

试过了,一样的效果

maplesky 发表于 2023-10-16 18:08

改用 Mod 版 OpenCore 呗。

zhangJJJJJJ 发表于 2023-10-16 20:55

我的也是,不明白是怎么回事

Dynamix 发表于 2023-10-17 02:41

本帖最后由 Dynamix 于 2023-10-17 02:44 编辑

你把 If (_OSI ("Darwin")){} 套 DefinitionBlock {...}下面就代表这个表中的内容在 除了macOS 之外的系统全不成立 (不可见) 那么你重命名了原始GPRW.方法之后这个判断会导致 Win下评估ACPI表时候找不到GPRW方法当然报错 ACPI_BIOS_ERROR

解决办法就是把 Method (GPRW,2){...}从 全局If (_OSI ("Darwin")) {} 中挪出来 直接在方法内判断

Method (GPRW,2)
{   
    If (_OSI ("Darwin"))
    {
      If (Arg0 == 0x6D)
      {
            Return (Package(){0x6D,0})
      }
      If (Arg0 == 0x0D)
      {
            Return (Package(){0x0D,0})
      }

    }
    Return (XPRW (Arg0, Arg1))
}

Dynamix 发表于 2023-10-17 02:48

本帖最后由 Dynamix 于 2023-10-17 02:53 编辑

改完了 错在你把GPRW套进If (_OSI ("Darwin")){...} 里,win下这个条件不成立GPRW方法就没了,win下直接找不到GPRW当然报错ACPI_BIOS_ERROR

小风2014 发表于 2023-10-17 09:58

为啥要用opencore引导win...

朱屹川Thomas 发表于 2023-10-17 09:59

Dynamix 发表于 2023-10-17 02:48
改完了 错在你把GPRW套进If (_OSI ("Darwin")){...} 里,win下这个条件不成立GPRW方法就没了,win下直接找不 ...

谢谢大佬给我解惑并且给我修改好,试了,成功进win了,谢谢大佬

qyga 发表于 2023-10-17 19:17

学习了感谢分享
页: [1]
查看完整版本: 为什么GPRW补丁会导致进不去win?