初始状态:

一块ssd硬盘,MBR格式分区,安装了WIN7 64位.

不想动win系统,因此就安装在硬盘的扩展分区

电脑配置:

cpu: i7-5600u

声卡: ALC280

显卡: HD5500

有线网卡: intel 218

无线网卡: intel ac7265(无法驱动,蓝牙免驱)

压缩磁盘、分区这些都不说了,主要就是分出两块来,一个用于写懒人版的cdr镜像,一个分区用于安装系统。

启动办法是使用EasyBCD增加一个菜单,然后在菜单中启动变色龙的光盘镜像。

这么做的目的是尽量少修改windows系统。

镜像取自http://bbs.pcbeta.com/viewthread-1702502-1-2.html

文件大小:7677251584 字节

修改时间:2016年7月21日 16:27:18

MD5     :FD03267F7948DCFBF561B8E2EFD8B52A

SHA1    :4C200BEA4E57B89FF70D1239B47C1697106DEF17

CRC32   :89E0CA2B

这个镜像里面的smbios是imac,

同时在e/e目录下的FakeSMC在hp 820 g2上运行有问题,我就换成新版本的,进了安装界面

安装后,修改dsdt基本是参照大神RehabMan的github上的说明修改的

参考https://github.com/RehabMan/HP-ProBook-4x30s-DSDT-Patch/blob/master/patches/02_DSDTPatch.txt进行修改

由于笔记本型号毕竟不一样,我基本上是看了这些修改点,然后手工修改dsdt完成整个过程。

其实这些补丁有点正则表达式知识的,都是能够看得懂的。

修改dsdtr的大致步骤如下:

Chameleon_2.3svn_r2839_Enoch_10.12_pkg+wowpc

CDR下载自
http://bbs.pcbeta.com/viewthread-1702502-1-2.html
文件名称:C:\El Capitan 10.11.6 Installer.cdr
文件大小:7677251584 字节
修改时间:2016年7月21日 16:27:18
MD5     :FD03267F7948DCFBF561B8E2EFD8B52A
SHA1    :4C200BEA4E57B89FF70D1239B47C1697106DEF17
CRC32   :89E0CA2B
链接:http://pan.baidu.com/s/1bpaBXRD 密码:6tec

安装时CDR中的FakeSmc.kext在820上会kernel panic,替换最新版本的FakeSmc后OK

DSDT修改:
repair error.
                              Store (\_GPE.VHOV (Arg0, 0x00), 0x01)
                            Local1
                            => Store (\_GPE.VHOV (Arg0, 0x00, 0x01), Local1)

参考https://github.com/RehabMan/HP-ProBook-4x30s-DSDT-Patch/blob/master/patches/02_DSDTPatch.txt进行修改

into device label WMID remove_entry;
into all code_regex Name\s*\(WSIP,[\s\S]*Name\s*\(ETYP,\s*Buffer\s*\(.*\)\s*\{\}\) remove_matched;

into_all all code_regex \.AC, replaceall_matched begin .ADP1, end;
into_all all code_regex \(AC, replaceall_matched begin (ADP1, end;
into all label AC set_label begin ADP1 end;

into device label ADP1 code_regex Name\s+\(_PRW,[\s\S]*\}\) remove_matched;
into device label ADP1 insert
begin
Name (_PRW, Package() { 0x18, 0x03 })
end;

into method label _DSM parent_label PS2K remove_entry;
into device label PS2K insert
begin
Method (_DSM, 4, NotSerialized)\n
{\n
    If (LEqual (Arg2, Zero)) { Return (Buffer() { 0x03 } ) }\n
    Return (Package()\n
    {\n
        "RM,oem-id", "HPQOEM",\n
        "RM,oem-table-id", "167C",\n
    })\n
}\n
end;

#   Inject Audio info
into method label _DSM parent_label HDEF remove_entry;
into device label HDEF insert
begin
Method (_DSM, 4, NotSerialized)\n
{\n
    If (LEqual (Arg2, Zero)) { Return (Buffer() { 0x03 } ) }\n
    Return (Package()\n
    {\n
        "hda-gfx", Buffer() { "onboard-1" },\n
        "layout-id", Buffer() { 0x0C, 0x00, 0x00, 0x00 },\n
        "PinConfigurations", Buffer() { },\n
        //"MaximumBootBeepVolume", 77,\n
    })\n
}\n
end;
参考如下文档里layout-id应该是3或者4
# https://github.com/RehabMan/HP-ProBook-4x30s-DSDT-Patch/blob/master/Resources_ProBook/README.txt
# http://www.tonymacx86.com/threads/hp-elitebook-g2-alc280-combo-jack-wip.191207/#post1242688

#     IRQ fix
into device name_hid PNP0000 code_regex IRQNoFlags\s\(\)\n\s+\{(\d+)\} remove_matched;
into device name_hid PNP0100 code_regex IRQNoFlags\s\(\)\n\s+\{(\d+)\} remove_matched;
into device name_hid PNP0B00 code_regex IRQNoFlags\s\(\)\n\s+\{(\d+)\} remove_matched;
into device name_hid PNP0103 code_regex IRQNoFlags\s\(\)\n\s+\{.*\} removeall_matched;
into device name_hid PNP0103 code_regex Name\s\(([^,]+),\sResourceTemplate\s\(\)\n\s+\{((?:.|\n)*)\}\) replace_matched
begin
Name (%1, ResourceTemplate()\n
{\n
    IRQNoFlags() { 0, 8, 11, 15 }\n
%2
})\n
end;

#    Rename all instances of GFX0 to IGPU
into_all all code_regex GFX0 replaceall_matched begin IGPU end;
into_all all label GFX0 set_label begin IGPU end;
GFX0 => GFX0
  inject "hda-gfx"="onboard-1" into IGPU (GFX0 originally)

B0D3 => HDAU
  inject "hda-gfx"="onboard-1" into HDAU

#    Rename all instances of GFX0 to IGPU
into_all all code_regex GFX0 replaceall_matched begin IGPU end;
into_all all label GFX0 set_label begin IGPU end;
GFX0 => GFX0
  inject "hda-gfx"="onboard-1" into IGPU (GFX0 originally)

#   Brightness control fix
into device label PNLF remove_entry;
into scope label \_SB insert
begin
Device (PNLF)\n
{\n
    Name (_HID, EisaId ("APP0002"))\n
    Name (_CID, "backlight")\n
    Name (_UID, 10)\n
    Name (_STA, 0x0B)\n
}\n
end;

into_all method code_regex If\s+\([\\]?_OSI\s+\(\"Windows\s2012\"\)\) replace_matched begin If(LOr(_OSI("Darwin"),_OSI("Windows 2012"))) end;

#   RTC fix
into device name_hid PNP0B00 code_regex (IO\s\((?:\s*[^,]+,\s*(?:\/\/\s.*)?\s*\n)+\s*)(\dx\d+)(,\s*(?:\/\/\s.*)?\s*\n\s*\)) replace_matched begin %10x02%3 end;
http://www.insanelymac.com/forum/topic/289798-applertc-patch-cmos-reset-after-sleepwake/

#   SMBUS fix
into device label BUS0 parent_adr 0x001F0003 remove_entry;
into device name_adr 0x001F0003 insert
begin
Device (BUS0)\n
{\n
    Name (_CID, "smbus")\n
    Name (_ADR, Zero)\n
    Device (DVL0)\n
    {\n
        Name (_ADR, 0x57)\n
        Name (_CID, "diagsvault")\n
        Method (_DSM, 4, NotSerialized)\n
        {\n
            If (LEqual (Arg2, Zero)) { Return (Buffer() { 0x03 } ) }\n
            Return (Package() { "address", 0x57 })\n
        }\n
    }\n
}\n
end;

#     Add missing IMEI device
into device label IMEI parent_label PCI0 remove_entry;
into device label PCI0 insert
begin
Device (IMEI)\n
{\n
    Name (_ADR, 0x00160000)\n
}\n
end;

#     HPET fix to avoid AppleIntelCPUPowerManagement panic
into method label _STA parent_hid PNP0103 remove_entry;
into device name_hid PNP0103 code_regex Name\s\(_STA\,\s+0x0F\) remove_matched;
into device name_hid PNP0103 insert
begin
Name (_STA, 0x0F)\n
end;

# repair HD5500
                            "device-id",
                            Buffer (0x04)
                            {
                                0x16, 0x16, 0x00, 0x00
                            },
                            "AAPL,ig-platform-id",
                            Buffer (0x04)
                            {
                                0x02, 0x00, 0x16, 0x16
                            },
                            "model",
                            Buffer (0x17)
                            {
                                "Intel HD Graphics 5500"
                            },
  2.使用UE修改AppleIntelBDWGraphicsFramebuffer的BIN文件,将其中的 4139c4 763e 改成 4139c4 eb3e
  3.Extra/Extensions目录下需要放FakePCIID.kext / FakePCIID_Intel_HD_Graphics.kext / FakePCIID_Intel_HDMI_Audio.kext等几个

click again on + and add:
Name* : disabled:IOAHCIBlockStorage
Find* : [HEX]: 004150504C452053534400
Replace* [HEX] : 0000000000000000000000
Comment: Enable TRIM for SSD
  1.进入SLE目录下去找到IOAHCIBlockStorage(在IOAHCIFamily.kext\Contents\PlugIns目录下),使用UE修改\IOAHCIBlockStorage.kext\Contents\MacOS目录下的IOAHCIBlockStorage文件

修改DSDT及SSDT中涉及HDAU中的layout-id为4
在Extra/Extensions目录下需要放AppleALC.kext

将EC0下面16bit的变量拆分成两个8bit,同时修改使用这些变量的函数,添加B1B2函数(由于没有32BIT的,因此没有B1B4函数)
  例如:BDC,    16,  => BDC0,   8, BDC1,   8,
        Store (BPR, Local3) =>  Store (B1B2 (BPR0, BPR1), Local3)
在Extra/Extensions目录下需要放ACPIBatteryManager.kext

删除之前添加的PNLF设备
在IGPU下添加PNLF设备,相关信息从如下链接中取得
https://github.com/RehabMan/Laptop-DSDT-Patch/blob/master/graphics/graphics_PNLF_haswell.txt
在Extra/Extensions目录下需要放ACPIBacklight.kext

HP 820 G2变色龙安装10.11.6基本完美的更多相关文章

  1. 联想Z470安装10.11懒人版成功!!特此分享!!

    折腾黑苹果也断断续续好几个月了,在远景也爬了好多贴,遇到问题基本上靠自己解决,自己组的台式机已基本完美,大学期间买的联想Z470现在是“食之无味,弃之可惜”,想想也来试试装个黑苹果玩玩,之前装过10. ...

  2. 战神Z7 D2安装黑苹果OS X El Capitan 10.11.2

    安装之初状态:两块硬盘,都是MBR格式分区,一块是机械硬盘,安装了WIN7 32位和Linux,一块是SSD,安装的是WIN7 64位与WIN10 64位以前玩过Mavericks,安装的就是在硬盘的 ...

  3. Windows环境下使用Clover四叶草引导双硬盘安装OSX 10.11.5原版镜像

    作为一个穷逼大学生,想搞iOS开发 买不起Mac只能鼓捣鼓捣黑苹果啦........ 之前我的电脑通过变色龙引导的方式装了个OSX10.10和win8.1双系统,因为自学的是Swift语言之前装的OS ...

  4. [原创]Mac系统下制作OS 10.11安装镜像

    一.所需软件 1.从App Store下载OS X El Capitan 10.11.2 ------------------------------------------------------- ...

  5. Windows下 VM12虚拟机安装OS X 10.11 和VM TOOLS

    Windows下虚拟机安装Mac OS X —– VMware Workstation12安装Mac OS X 10.11 本文即将介绍WIN虚拟MAC的教程.完整详细教程(包含安装中的一些问题) [ ...

  6. mac 10.11.6,Xcode8下,ruby2.3安装,Cocoapods安装~

    适用环境 mac: 10.11.6 Xcode:8.1 命令执行步骤(安装ruby2.3前准备工作) 查看ruby更新源 gem sources  -L 删除默认官方或者淘宝,新增 https://g ...

  7. 升级10.11.6后CocoaPods的坑,之前10.11.4已经安装好的,居然没了Failed to locate Homebrew!

    升级10.11.6后CocoaPods的坑,之前10.11.4已经安装好的,居然没了,用命令 sudo gem install cocoapod 装不上,换 sudo gem install -n/u ...

  8. 10.11 cocoapods安装

    手动安装gem 手动下载 rubygem https://rubygems.org/pages/download#formats 10.11 cocoapods安装 sudo gem install ...

  9. OSX 10.11 cocoapods安装命令: sudo gem install -n /usr/local/bin cocoapods

    10.11 cocoapods安装命令: sudo gem install -n /usr/local/bin cocoapods

随机推荐

  1. iOS:GCD组

    组内异步会与组外顺序执行的事件争抢资源 1).创建一个组 dispatch_group_t group = dispatch_group_create(); 2).组内异步ST1,DISPATCH_Q ...

  2. datatable和list的转换

    在开发中,把查询结果以DataTable返回很方便,但是在检索数据时又很麻烦,没有list<T>检索方便.但是数据以ILIST形式返回,就为我们在.NET中使用传统的数据绑定造成了不便.下 ...

  3. 从零自学Hadoop(21):HBase数据模型相关操作下

    阅读目录 序 变量 数据模型操作 系列索引 本文版权归mephisto和博客园共有,欢迎转载,但须保留此段声明,并给出原文链接,谢谢合作. 文章是哥(mephisto)写的,SourceLink 序 ...

  4. Windows Server 2012 虚拟化实战:网络(一)

    虚拟化对于计算的抽象,大家可能相对熟悉,也许都有在单机使用诸如Virtual PC或者Virtual Box的经验.使用的这些虚拟化软件的第一印象就是我们的CPU可以同时运行多套不同的操作系统,并且其 ...

  5. linux基本知识2

    date:时间管理 linux时钟: 硬件时钟:hwclock -s:硬件时钟到系统时钟   -w:系统时钟到硬件时钟 系统时钟:date 如何查看是外部命令还是内部命令: type COMMAND ...

  6. USB Host的上拉下拉电阻

      关于USB的上下拉电阻,不是随便接个任意阻值的电阻就ok了. 当你的USB为主设备的时候,D+.D-上分别接一个15K的下拉电阻,这样可以使得在没有设备插入的时候,D+.D-上始终保持低电平:当为 ...

  7. CentOS下开启mysql远程连接,远程管理数据库

    当服务器没有运行php.没装phpmyadmin的时候,远程管理mysql就显得有必要了.因为在CentOS下设置的,所以标题加上了CentOS,以下的命令在debian等系统下应该也OK. mysq ...

  8. mysql小技巧

    将一列值赋予另一列 会遇到新增一列, 需要用其他列的值来初始化这一列 或者根据业务条件把某行的某列值直接赋予到其他列. 行号 列1 列2 1 aaa ddd 2 bbb ccc UPDATE 表 SE ...

  9. Java程序设计之Constructor

    插入段代码,下次回忆吧. 先新建一个Person类,代码如下: public class Person { private String name ; private int age; public ...

  10. [LeetCode] Palindrome Linked List 回文链表

    Given a singly linked list, determine if it is a palindrome. Follow up: Could you do it in O(n) time ...