后来我删除掉clover中的graphics参数,利用rehabman的补丁源对dsl添加hd4400/4600/5000参数,并手动将其中的ig-platmform-id值改为0x03,0x00,0x22,0x0d,来使用dsdt驱动hd4600,结果系统里显示iris pro。
两种方法似乎一样驱动hd4600,象棋正常,睡眠停风扇。哪种更好呢?如果通过dsdt驱动,是否还需要在clover中设置vram的值为64吗?我的dsdt驱动法是否完整?
自己顶,不顶就看不到了
我肤浅的认为既然是黑苹果,那么只要功能正常就无所谓哪个好了
话说我打rehabman补丁就是不能点apply,不知道是不是少了什么
目前不能半透明中
我现在用的是神舟飞天UT43的本子,用CLOVER安装MAC OS中发现会黑屏,必须取消INJECTINTEL才能正常显示,但是这样的话,进入系统驱动不正常,显存只有4M,经过爬帖发现是载入驱动的时候没有读到EDID,所以正在这方面尝试,不过看了好久也没搞清楚DSDT的结构,我参考的注入EDID的帖子原文如下:“驱动HD4000需要一个恰当的ig-platform-id,对于本机器,3、8、9都可以很完美的使用,最佳的设置为3
我所知道的注入ig-platform-id的方式有三种:变色龙直接注入、变色龙efi-string注入和DSDT注入
我推荐使用DSDT注入,方法也很简单,在DSDT的显卡部分_DSM方法中添加如下代码
"AAPL,ig-platform-id",
Buffer (0x04)
{
0x03, 0x00, 0x66, 0x01
}
就可轻松注入为3的ig-platform-id,我的DSDT中就是这样注入的
注入后,显卡其实就已经驱动起来了,如果有HDMI显示器,可以在系统启动完成后连接并查看,一定是正常的
然而,当显卡驱动起来后,内屏就会瞎。这是因为这个廉价的内屏非常糟糕,导致HD4000读不到它的EDID(见备注2)
所以需要手动在Windows下通过EDID Manager软件获取EDID并通过DSDT注入
整理后,添加到到DSDT显卡部分的_DSM方法中,如下
"AAPL00,override-no-edid",
Buffer (0x80)
{
/* 0000 */0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00,
/* 0008 */0x36, 0x7F, 0x03, 0x90, 0x0E, 0x00, 0x00, 0x00,
/* 0010 */0x00, 0x0C, 0x01, 0x03, 0x80, 0x1A, 0x0E, 0xFF,
/* 0018 */0x2F, 0x00, 0x00, 0xA0, 0x57, 0x49, 0x9B, 0x26,
/* 0020 */0x10, 0x48, 0x4F, 0x00, 0x00, 0x00, 0x01, 0x01,
/* 0028 */0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
/* 0030 */0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x20, 0x1C,
/* 0038 */0x56, 0x88, 0x50, 0x00, 0x20, 0x30, 0x0E, 0x38,
/* 0040 */0x13, 0x00, 0x00, 0x90, 0x10, 0x00, 0x00, 0x18,
/* 0048 */0x00, 0x00, 0x00, 0xFD, 0x00, 0x00, 0x3C, 0x00,
/* 0050 */0x40, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0058 */0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0060 */0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0068 */0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0070 */0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0078 */0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC6,
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)