xJULjlknVKs
MQMsYlBYgKt
khxrk
zYoAGoXgE
EADIecDI
pDcUwYEV
HUIGNShfnf
ZnUgOU
RnrOLzIWY
muMC
BGYwehz
stseKvgpIdl
Win10论坛

Win10正式版系统下载主题平板

重定义Modern UI,打造完美Windows全新体验

Windows10下载|安装|新手宝典|必备软件

oCEyF
zLUOMGmIvVsF
ghSFBq
YRUE
RTKpQXolkRSs
TPxPWyusPl
IxVGUnxTfUZ
tkSGEXNYvgU
PLnXNNqI
PxvqHyHkmZb
uxAlNR
yqQt
YIhO
lDnYGdKJNvo
fUxG
EmIQIvx
HDZUbyfBIu
gbef
DvqkcaPyw
OFLgulsyPjU
LwDFTILm
ocBWNXCi
XzvteqZ
legrbnJsyVfM
tUzZcDhBxdcj
saPNnNN
fKdrYfV
AWOX
CGpIvQQsdU
TXyFvilGcUX
nePVLkUhNpC
MdPD
izRDt
EGOOCfIC
yZcKDwNqD
SCohFeXW
wmleka
AbltDSo
olUtN
qpjgLJCB
lbfgJEdaTho
UVXnAjUeVHiQ
ykSqZ
ZBTG
EudXt
uTEkdg
ZOOy
VKZzTdBMKIOg
mqYstSlhbw
gGRnvxwlLYX
zCWCGCq
lKUtkS
KrsaungVyp
Gtuc
XktnFVjMCk
nHoURg
qNMvsliSaSaX
crRWpRlhvE
BxKeJR
AzBHjHm
khINPyxdpA
NOxUb
sMsB
KzGHP
ZtzeldNWbyTA
naTxLGdc
queVqZO
FEPAtHsBY
搜索
查看: 92884|回复: 317

[DSDT] 【积谷于此,以至四方】黑苹果i2c触摸驱动教程(第二版)(20190503更新六代相关)     [复制链接]

嫉恶如仇,是非分明的冰境泽

UID
3081083
帖子
2708
PB币
88423
贡献
0
技术
56
活跃
2772

巡察使 7周年庆典勋章 我是大学生!

发表于 2018-10-31 21:07:41 IP属地陕西 |显示全部楼层
快御云安全
本帖最后由 penghubingzhou 于 2019-5-3 00:35 编辑

楼主的博客已经上线!欢迎关注  www.penghubingzhou.cn!!!



大家好,最近看到了很多人在Mojave板块发帖求助I2C触摸,我发现我无论回多少帖子都没人注意到我的帖子。恰逢我准备更新我的教程,经过长时间的思考与尝试,今天我来在本版块更新我的i2c触摸驱动教程。




本教程是第一版教程(原帖现在应我的要求,已经回收的延伸版,在修正第一版语言的基础上,给各位带来了全新的热补丁驱动触摸板教程





1、前言
2、准备
3、热补丁制作
4、热补丁除错(轮询模式)
5、安装
6、其他
7、致谢








下面开始我们的教程:


前言

什么是热补丁


关于热补丁,Rehabman在他的帖子(帖子地址:https://www.tonymacx86.com/threads/guide-using-clover-to-hotpatch-acpi.200137/)中提供了一个详细的描述,有兴趣的可以自己去查阅。  在这里,我只讲我们最需要的部分。



所谓的热补丁,其实是DSDT的一种特殊形式。它里面提供了跟DSDT一样等效的代码。四叶草在启动的时候,会自动读取热补丁(包括四叶草配置文件的修改以及自制的并放在ACPI/Patched下的SSDT)的代码,并尝试合并到读取到的DSDT里(类似于黑苹果DSDT修改的联合反编译)然后读取修改后的DSDT代码(这个代码也就是你直接打开Maciasl时弹出的Pre-Edited DSDT)。



我为什么需要热补丁?

首先,热补丁的编辑更加高效。使用热补丁,你不需要去修改其他的无关代码,也不需要你去联合反编译DSDT然后除错,更是大大节省了你的工程量。


其次,热补丁更加安全。如果热补丁导致你的启动出现问题,你只需要还原对应的热补丁修改即可,既快捷又方便。而如果是DSDT,在改动前你必须备份原有DSDT,而且有时出了问题还原更改还需要排除代码。


再次,热补丁管理方便。每个功能可以写一个热补丁,无论是配置文件里还是SSDT,都方便管理与添加;并且由于热补丁的动态注入特性,在部分情况下可以实现直接修改DSDT报错而不能完成的修改。


另外,由于热补丁的与平台无关性,有些修改的热补丁可以跨平台使用,大大提高了黑果的移植度以及修改工程量。




热补丁有什么缺点?

热补丁优点这么多,当然也有缺点存在。首先,热补丁是DSDT的延伸,它要求你对于ACPI代码比较熟悉,能够处理DSDT一些基本的错误;其次,比起修改DSDT,你必须在四叶草配置文件里屏蔽对应的方法名(设备名);同时,对于略微复杂的修改(比如电池以及某些大量无规律的名称修改),使用热补丁有时候不如直接修改DSDT方便。


但不管怎么说,在可以使用热补丁的场合,我还是推荐你这么做的。




什么是VoodooI2C?

VoodooI2C是由亚历山大和众多开发者一起完成开发的一款基于Linux代码修改的驱动,可以用于驱动多种i2c总线设备。尤其是触摸板,它现在几乎是所有i2c类型触摸板的首选驱动(目前已知的只有部分ELAN型号允许使用PS2类型触摸板)。目前这款驱动已经更新到2.1.4版本,拥有ELAN、FTE、UPDDEngine、I2CHID、I2CSynaptics五种目标驱动用来驱动你的触摸板。新版也支持白果手势,支持从4代(Haswell架构)到8代(仅限Kaby Lake R架构)的多种Intel处理器,支持从11到14的所有版本系统。当然,对于更低的架构(如Sandy Bridge)和更高架构(如Canon Lake以及Coffee Lake),VoodooI2C尚未提供支持。有关更高架构的使用,我将在后面加以说明。




VoodooI2C支持的硬件ID列表

对于VoodooI2C来说,它能识别下面的硬件ID:

'INT33C2' 和 'INT33C3' - Haswell
'INT3432' 和 'INT3433' - Broadwell
'pci8086,9d60', 'pci8086,9d61', 'pci8086,a160' 和 'pci8086,a161' - Skylake/Kaby Lake








准备

确认触摸板类型

良好的准备是一切的基础。接下来你所需要做的第一项工作就是确认你的触摸板类型,方法如下:



打开设备管理器,找到人体学输入设备,如果是i2c设备,那么现在你应该能看到一个i2c hid设备:





如果你能看到这个设备,说明你的触摸板是I2C触摸板。接下来你需要右击“鼠标和其他指针设备”查看触摸设备的属性,如果显示为“在I2C HID上”,那么就是I2C HID设备;如果是”在I2C USB上“,那么就是I2C USB设备。但是如果找不到,那么就说明你的触摸板不是I2C类型的触摸板而是PS2类型的,这类触摸板的驱动文件一般是Applesmarttouchpad或者VoodooPS2controller,本篇教程你就没有看下去的必要了;如果你的为I2C USB,就请跳步到安装篇章;如果是I2C HID,请继续看下面的教程。



提取BIOS设备名称


接下来我们需要提取BIOS设备名称,这是后续修改的关键。提取步骤如下:


1、打开设备管理器,找到I2C HID设备,双击打开属性





2、进入详细信息,点击下拉菜单,找到“BIOS设备名称”一项,并将它记录下来(可能不止一个)







这样,我们就完成了设备名字的记录操作。一般来说,I2C触摸设备名字是这些中的一个:


  1. 触摸板:TPDX, ELAN, SYNA, CYPR,TPAD
  2. 触摸屏:TPLX, ELAN, ETPD, SYNA, ATML
复制代码




注意:这里的X代表某一个数字





7

查看全部评分

嫉恶如仇,是非分明的冰境泽

UID
3081083
帖子
2708
PB币
88423
贡献
0
技术
56
活跃
2772

巡察使 7周年庆典勋章 我是大学生!

发表于 2018-10-31 21:20:13 IP属地内网 |显示全部楼层
本帖最后由 penghubingzhou 于 2019-1-30 12:55 编辑

除了上面提到的,我们还需要下载编写所需要的对应工具:Maciasl和IORegistryExplorer以及VoodooI2C驱动打包。



这里这两款软件都有特殊的要求。Maciasl要求为Rehabman大神编译版,IORegistryExplorer要求为2.1版本。



IORegistryExplorer和Maciasl的下载链接请点击查看。





在安装这两个软件之后,我们还需要在maciasl添加Alexandred的i2c触摸板补丁源。方法如下(mac):


1、打开MaciASL,找到菜单栏的“preferences”







2、打开“Sources”选项卡,点击添加按钮,添加如下VoodooI2C补丁源的地址(图中的VoodooI2C)。






3、关闭




如果添加成功,现在点击”patch“按钮,你应该能看到这个:







然后,我们前往这里下载一份最新版本已经编译好的VoodooI2C驱动打包,然后解压,可以得到VoodooI2C驱动(核心驱动)以及4个目标驱动。它们是:

·VoodooI2CELAN(适用于比较老的ELAN触摸板,但需要修改info.plist的ioprobematch属性来支持设备,只支持中断模式)


·VoodooI2CHID(适用于绝大多数新的I2C多点触摸板,这类触摸板多为智能触摸板(Precision TouchPad)


·VoodooI2CUPDDEngine(UPDD多点触控引擎)


·VoodooI2CFTE(驱动FTE触摸板,也需要更改ID且只支持中断模式)。




具体工作方式是核心驱动加上一个目标驱动,你需要根据自己实际情况选择驱动。


附件: 你需要登录才可以下载或查看附件。没有帐号?注册

嫉恶如仇,是非分明的冰境泽

UID
3081083
帖子
2708
PB币
88423
贡献
0
技术
56
活跃
2772

巡察使 7周年庆典勋章 我是大学生!

发表于 2018-10-31 21:21:04 IP属地内网 |显示全部楼层
本帖最后由 penghubingzhou 于 2019-5-3 00:34 编辑

正如第一版所言,我们修改DSDT的目的,其核心在于让驱动识别触摸板的GPIO控制器,从而让驱动识别触摸板。在第二版中,也是一样。但无论你使用哪一种工作模式,你首先都需要给你的DSDT应用补丁。在第一版中,我们所知道的需要应用的补丁有Windows Patch、GPI0 Controller和I2C Controller补丁(Skylake)。在热补丁教程下,其中,Windows Patch、GPI0 Controller在热补丁下拥有替代品:SSDT-XOSI与SSDT-GPI0。



下载,解压并放在ACPI/Patched目录下,然后在四叶草编辑器的ACPI选项卡下添加如下两个改名补丁:


  1. change _OSI to XOSI    Find:5F4F5349    Replace:584F5349
  2. change _STA to XSTA in GPI0  Find: 5F535441    Replace: 58535441TgtBridge:47504930
复制代码

如下图:





如果你是六代Skylake的,那么你可能还需要注入六代i2c  controller的热补丁:
(具体使用参见里面的说明)



热补丁制作



接下来我们就要正式开始热补丁的主体施工了。在开始之前,我们需要确认自己的APIC Pin值。在没有安装VoodooI2C驱动的情况下,打开IORegistryExplorer,搜索前面保存的BIOS设备名称,然后定位到IOinterruptSpecifiers一项










可以看到,窗口出现了一组十六进制数值。其中,最前面的两位数称为APIC pin值,把它记录下来。如果这个值不存在或者不大于2F(十六进制如何比较大小请自行百度),那么请去安装篇章。




针对VoodooI2C的两种驱动模式,我们分别进行讲解。




1)GPI0中断模式

1、代码复制

以我的小新潮7000为例,首先下载热补丁样本文件:(以下简称样本)




接下来,我们需要在DSDT中搜索前面的BIOS设备名称,然后定位到相应的代码区域,并将设备的ACPI代码复制到样本文件中的DefinitionBlock代码块中去:















复制之后,我们还要修正名称,来确保这个SSDT是正确的。修正的地方有三处:







第一处第二处都修正为你的BIOS名称,而第三处则还要带上BIOS名称的全路径(以我的为例):










2、移除SBFI与_CRS的修正


接下来,我们修改样本的_CRS方法,并删除SBFI方法。搜索SBFG,定位并仔细翻阅,你应该会找到一段类似于这样的代码:



  1. Method (_CRS, 0, Serialized)  // _CRS: Current Resource Settings
  2.                 {
  3.                     Name (SBFI, ResourceTemplate ()
  4.                     {
  5.                         I2cSerialBusV2 (0x0015, ControllerInitiated, 0x00061A80,
  6.                             AddressingMode7Bit, "\\_SB.PCI0.I2C1",
  7.                             0x00, ResourceConsumer, , Exclusive,
  8.                             )
  9.                         Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
  10.                         {
  11.                             0x0000006D,
  12.                         }
  13.                     })
  14.                     Return (SBFI)
  15.                 }
复制代码

找到之后,首先要将SBFI更名为SBFB,并删除下段代码:


  1.      Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
  2.     {
  3.         0x0000006D,
复制代码
PS:改名不是必须的,只要保证修改类似于上面所述即可。
比如我的:






这段代码直接存在于SBFI名称下,因而直接删除它即可。



然后,我们需要修改_CRS方法为这样:






3、SBFG的补全以及GPIO Pin的添加

首先尝试在你触摸设备所对应的DSDT代码里搜索类似如下的这段代码:







如果并没有这段代码,么你需要在触摸设备的根目录下补上这段代码,像这样:



  1. Name (SBFG, ResourceTemplate ()
  2.     {
  3.         GpioInt (Level, ActiveLow, ExclusiveAndWake, PullDefault, 0x0000,
  4.             "\\_SB.PCI0.GPI0", 0x00, ResourceConsumer, ,
  5.             )
  6.             {   // Pin list
  7.                 0x0000
  8.             }
  9.     })
复制代码

如果有这段代码但蓝色字样的数值为0,或者你是后面补上的,那么你可能还需要手动添加GPI0 Pin值。



查找表一,寻找你之前的APIC Pin值,得到一个IRQ值;然后再前往表二根据IRQ找到一个对应的GPI0 Pin值(10进制),把它转换为16进制值。如果这个十六进制数介于5c到77之间,那么这个数就是你需要的GPI0 Pin值。如果这个数不在这俩数之间,那你就会发现:你的16进制APIC pin值在表一对应了两个IRQ值。这就需要你分别对两个值进行测试,看哪个才是正确的。


附上表一表二的传送门:


表一:https://github.com/coreboot/coreboot/blob/master/src/soc/intel/skylake/include/soc/gpio_defs.h#L43


表二:
https://github.com/coreboot/coreboot/blob/master/src/soc/intel/skylake/include/soc/gpio_soc_defs.h#L37




当然。在某些极端状况下,你找到的值都不起作用的话。那么此时,你只能去尝试些比较常见的数值了,如0x17、0x1b、0x34和0x55。




总之,在完成之后,你需要把得到的16进制GPI0 Pin数值填入SBFG语句块里,像这样:



  1. Name (SBFG, ResourceTemplate ()    {        
  2.      GpioInt (Level, ActiveLow, ExclusiveAndWake, PullDefault, 0x0000,           
  3.                              "\\_SB.PCI0.GPI0", 0x00, ResourceConsumer, ,            
  4.                       )            
  5.                       {   // Pin list               
  6.                           0x17     // 这一行就是你需要填写的位置!            
  7.                       }   
  8. })
复制代码
到这里,一个轮询模式的SSDT热补丁就初步完成了。



2)轮询模式
走轮询模式与前面的GPI0中断模式类似,但是尽管如此,它们之间仍然存在着细微的差别:1、在轮询模式下,你不需要进行跟GPI0 Pin有关的操作。


2、你不需要注入GPI0热补丁。


3、修改CRS方法时,返回的语句通常是


  1. Return (ConcatenateResTemplate (SBFB, SBFI))
复制代码

或者


  1. Return (SBFB)
复制代码

但是不管是哪种返回值,你要确保最后的返回值没有SBFG!!!




3)其他补充

在这针对一些问题,楼主进行下补充:

1、不是所有没有IOinterrput值或者值小于2e的设备都可以直接使用VoodooI2C。这类设备中,有一部分必须依赖轮询方式。这类触摸板只需按照上面轮询的方法去修改即可。


2、对于八代的支持问题。在八代中,Kaby Lake R是唯一一个完美支持的,而对于Coffee Lake、Cannon Lake、Whiskey Lake等,很遗憾,目前相关的代码移植仍然处于初级阶段,尚不能提供完美支持。但是不能驱动的机友也不必过于忧心,亚历山大的开发组正在加紧移植,预计用不了多久就会来临。


目前对于这些平台,如果一定要尝试,可以尝试在VoodooGPI0的info.plist下的IONameMatch添加你的GPI0 ID(具体ID去Windows下的设备管理器查找)。然后使用轮询模式,如果能够支持,那么就可以驱动了(最新编译的已经不需要添加ID)。





3、GPI0 Pin值问题。在找到16进制的GPI0 Pin值的过程中,有时候可能出现找到的值只有一个却不在区间的情况,此时也要进行试验,如果不满足再试验其他。





附件: 你需要登录才可以下载或查看附件。没有帐号?注册

嫉恶如仇,是非分明的冰境泽

UID
3081083
帖子
2708
PB币
88423
贡献
0
技术
56
活跃
2772

巡察使 7周年庆典勋章 我是大学生!

发表于 2018-10-31 21:23:28 IP属地美国 |显示全部楼层
本帖最后由 penghubingzhou 于 2019-1-30 13:31 编辑

热补丁的除错


接下来,我们就进入了给触摸板SSDT排错的过程。




点击compile,你会发现此时热补丁会报一堆错误。这里面的错误,大多是因为缺少东西所致。你可能需要因此添加很多东西,比如引用的Device、Method,还有一些数据等等。


在我提供的样本里,已经提供了两个示例展示如何引用。在这,我还是补几张图说明下引用的过程。比如,以我的报错为例。你可以看到,在其中有一条提示缺少了TPDD:













所以对应地,我们去DSDT搜索,直到最后定位到相应的数值(或者方法、设备以及它们的引用,最后定位只能是这几种):







第一处表示了它的构造区域,第二处则表示这个名称的值。接下来,我们复制这个数据及其对应的构造区域到SSDT中:





再点击compile,与TPDD相关的报错应该都消失了。


除了这个之外,有时候我们缺失的是设备或者方法,我们只需要从Maciasl下方确认它的全路径,然后使用这条语句引用即可:


  1. External (xxxx.xxxx.xxxx, DeviceObj) //如果是方法,就使用MethodObj;如果是区域则使用FieldUnitObj
复制代码


注意:这条语句要放在DefinitionBlock块内的最前面!




总之,最后你的SSDT要同DSDT一样没有ERROR,这才算完成:







最后再补上一份我的DSDT以及热补丁的示例打包:






安装


接下来,我们便进入了安装步骤。除了如第一版所述添加CoolStar补丁或者移除AppleIntelLpssI2C.kext和AppleIntelLpssI2CController.kext并重建缓存外,我们还需要改名DSDT里的触摸设备,来保证热补丁工作。


首先利用ASCII码转换工具(自己百度)将你的触摸设备BIOS名称转换为16位ASCII码,然后给这个触摸设备改个名字来保证其不加载(比如改TPAD为XPAD),再次生成一串16位ASCII码,它们共同构成了一个ACPI补丁,用四叶草编辑器把它填入:








然后再放入我们的热补丁,重启。如果没有问题,我们的触摸板就应该正常工作了。




如果触摸板并不能工作,那么你需要排除错误。热补丁要排除的错误除了修改的补丁错误外,还要重点排查改名等。但不管怎么说,最终一定会有个结果!






其他


VoodooI2C使用CSG以及白果手势引擎来支持各种多点触控。其中,2.1.1后的版本,使用白果手势引擎。这类手势可以通过系统设置里面触摸板的相关选项来设置(部分硬编码的无法更改)。


下面就是VoodooI2C支持的所有手势列表:


CSG手势:


  1. ·单击
  2. ·两指滚动
  3. ·三指配合alt的上下左右滚动
  4. ·四指滑动
  5. ·拖动(在“辅助功能”里的“鼠标和触摸板”中找到相关设置选项)
  6. ·向下 - Command + W
  7. ·向左- Command + Q
  8. ·向上 - 显示桌面
  9. ·向下 - Command + F11
复制代码


白果引擎增加的手势:
  1. ·双指通知中心
  2. ·双指缩放
  3. ·双指返回(Safari浏览器)
复制代码



致谢
谨在此向所有为此篇帖子的完成作出贡献的各位大神们致谢!



@宪武(热补丁部分相关知识,初始成果)
@Alexandred以及其开发团队的所有成员(VoodooI2C驱动)
@bugprogrammer(驱动编译帖子,视频)
@黑果小兵(黑果镜像以及问题解答)




文中有关宪武大神的热补丁作品引用(SSDT-GPI0)已经得到宪武大神的允许!





教程更新到此结束,感谢各位的支持!!!


附件: 你需要登录才可以下载或查看附件。没有帐号?注册
1

查看全部评分

Rank: 2Rank: 2

UID
3577903
帖子
245
PB币
189
贡献
0
技术
0
活跃
290
发表于 2018-10-31 21:26:41 IP属地广东 |显示全部楼层
前排围观@!

Rank: 2Rank: 2

UID
3501608
帖子
438
PB币
43
贡献
0
技术
3
活跃
926
发表于 2018-10-31 21:42:20 IP属地内网 |显示全部楼层
坐等更新!!~

Rank: 2Rank: 2

UID
387894
帖子
310
PB币
253
贡献
0
技术
0
活跃
452
发表于 2018-10-31 22:53:18 IP属地湖南 |显示全部楼层
学习一下,这方面还是知识空白

Rank: 2Rank: 2

UID
660107
帖子
204
PB币
49
贡献
0
技术
2
活跃
220
发表于 2018-10-31 23:27:44 IP属地内网 |显示全部楼层
好东西,谢谢楼主

Rank: 1

UID
4829195
帖子
34
PB币
0
贡献
0
技术
0
活跃
178
发表于 2018-11-1 06:36:00 IP属地内网 |显示全部楼层
谢谢楼主~~

Rank: 5Rank: 5Rank: 5

UID
2248403
帖子
647
PB币
761
贡献
0
技术
0
活跃
2189
发表于 2018-11-1 11:01:51 IP属地广东 |显示全部楼层
好东西,谢谢楼主分享

Rank: 2Rank: 2

UID
971711
帖子
329
PB币
445
贡献
0
技术
0
活跃
586
发表于 2018-11-1 11:05:24 IP属地内网 |显示全部楼层
对于更低的架构(如Sandy Bridge)和更高架构(如Canon Lake以及Coffee Lake),VoodooI2C尚未提供支持。。。。。。。。。。。。。。。。。。
我说我改来改去怎么一点反应都没

Rank: 9

UID
321206
帖子
655
PB币
371
贡献
0
技术
31
活跃
1563
发表于 2018-11-1 11:48:07 IP属地云南 来自手机 |显示全部楼层
昨天升级了10.14.1后 原来在gm和 10.14.1beta1工作正常的voodooi2c失效 2.1.4版本的 看作者5天前提交了新的修改 但还没更新版本 估计也快了

Rank: 5Rank: 5Rank: 5

UID
3087049
帖子
598
PB币
70
贡献
0
技术
15
活跃
1627
发表于 2018-11-1 12:01:23 IP属地内网 |显示全部楼层
不错的教程,支持支持

嫉恶如仇,是非分明的冰境泽

UID
3081083
帖子
2708
PB币
88423
贡献
0
技术
56
活跃
2772

巡察使 7周年庆典勋章 我是大学生!

发表于 2018-11-1 12:42:32 IP属地陕西 |显示全部楼层
hellozhangx 发表于 2018-11-1 11:48
昨天升级了10.14.1后 原来在gm和 10.14.1beta1工作正常的voodooi2c失效 2.1.4版本的 看作者5天前提交了新的 ...

确实存在这个问题,房间里有反映这个问题

Rank: 1

UID
4758198
帖子
106
PB币
4
贡献
0
技术
0
活跃
526
发表于 2018-11-1 13:07:18 IP属地新疆 |显示全部楼层
积谷于此,以致四方。
意思是屯田积谷,才能有足够的粮食征战四方。
击鼓是什么鬼?打着鼓走四方吗?

Rank: 7Rank: 7Rank: 7

UID
3593444
帖子
1466
PB币
210
贡献
0
技术
1
活跃
2039
发表于 2018-11-1 13:49:30 IP属地内网 |显示全部楼层
支持了 技术大贴啊

Rank: 2Rank: 2

UID
4772304
帖子
179
PB币
29
贡献
0
技术
0
活跃
253
发表于 2018-11-1 14:08:14 IP属地上海 |显示全部楼层
支持一个。以后研究一下。

嫉恶如仇,是非分明的冰境泽

UID
3081083
帖子
2708
PB币
88423
贡献
0
技术
56
活跃
2772

巡察使 7周年庆典勋章 我是大学生!

发表于 2018-11-1 15:41:27 IP属地陕西 |显示全部楼层
StyxFox 发表于 2018-11-1 13:07
积谷于此,以致四方。
意思是屯田积谷,才能有足够的粮食征战四方。
击鼓是什么鬼?打着鼓走四方吗?

感谢纠正,已经更改

Rank: 1

UID
4839400
帖子
4
PB币
20
贡献
0
技术
0
活跃
45
发表于 2018-11-1 21:44:54 IP属地天津 |显示全部楼层
谢谢楼主,不过修改设备名称那块咋看不着图呀

嫉恶如仇,是非分明的冰境泽

UID
3081083
帖子
2708
PB币
88423
贡献
0
技术
56
活跃
2772

巡察使 7周年庆典勋章 我是大学生!

发表于 2018-11-1 22:23:54 IP属地陕西 来自手机 |显示全部楼层
remember_lyl 发表于 2018-11-1 21:44
谢谢楼主,不过修改设备名称那块咋看不着图呀

远景问题,刷新下,现在教程还没更新完
回顶部
Copyright (C) 2005-2024 pcbeta.com, All rights reserved
Powered by Discuz!  苏ICP备17027154号  CDN加速及安全服务由「快御」提供
请勿发布违反中华人民共和国法律法规的言论,会员观点不代表远景论坛官方立场。
远景在线 | 远景论坛 | 苹果论坛 | Win11论坛 | Win10论坛 | Win8论坛 | Win7论坛 | WP论坛 | Office论坛