[暫定:AMD必見]OpenCoreをCloverのkernel patchへ移行する、[Temporary (for AMD)] Migrate OpenCore to Clover’s kernel patch

English

今まで、あった表はこのようなものです。
The table that has been there so far is like this.

全くこの表通りに移行してもうまく行かない場合があるようです。
iCanaroやjsl2000,calro_67からヒントを受け、だいぶ方法がわかってきました。
It turns out that even if you move according to this table, it may not boot well.
Inspired by iCanaro, jsl2000, calro_67, I’ve learned a lot about how to do it.

まず、Base,SkipはCloverではほぼいらないようです。
ただし、Baseが”_cpuid_set_info”の場合、CloverのProcedureとして入れたほうが良いようです。
First of all, “Base” and “Skip” seem to be almost unnecessary in Clover. However, if “Base” is “_cpuid_set_info”, it seems better to enter it as “Procedure” of Clover.

”count”は0の場合Cloverでは取り除いた方がいいです。それが1のときはCloverに残しましょう。
When “count” is 0, it is better not to have it in Clover. If it’s 1, leave it in Clover.

 Findは値が空でもCloverの記述に残します。(反対にFindがない場合は、空の値のFindを作る。後でわかりましたがこの手のパッチは古いことが多く、このパッチがなくても動く可能性が大きいので一度なくしてみることをお勧めします。)
 Find will be left in the Clover description even if the value is empty. (On the other hand, if there is no Find, create a Find with an empty value. On the other hand, if there is no Find, create a Find with an empty value.) As I found out later, many of these patches are outdated, and there is a big chance that they will work without this patch, so I recommend you try to remove it.

 IdentifierはそもそもKernelなので、Cloverの記述には入りません。
 Since the value of Identifier is Kernel in Clover, it does not need to be described in Clover.

 MaskFind,MaskReplaceは全てF…または空なら、Cloverの記述では、値は基本的に空で記載します。
If MaskFind and MaskReplace are all F …or empty, the value basically set as empty in the Clover.

しかし、CloverがPaatchで”Rebork”のDebug logを吐く場合には、Find,Replaceの長さに合わせた、Fを値とする、MaskFind,MaskReplaceを入れると”Rebork”がなくなります。
However, when Clover spits out a Debug log of “Rebork” in Patch, if you insert MaskFind and MaskReplace with F as the value according to the length of Find and Replace, “Rebork” will disappear.

また、ログに”Rebork”がなくても、ReplaceにSuccessしたとのログが得られず、ブートしない場合があるようです。
Also, even if there is no “Rebork” in the log, it seems that it may not boot because the log of ”Success” in replace cannot be obtained.

この場合、”MaskFind”や”MaskReplace”を空とせずに、Find,Replaceに合わせた長さの”F”を入れると解決する場合があります。
In this case, it may be solved by not emptying “MaskFind” and “MaskReplace” but inserting “F” of the length that matches Find and Replace.

また、ミニマムなパッチは、全てのCPUで試しているものではないことも多いと思います。そのため、ミニマムなパッチで動かない場合は、同等に動くパッチから、コメントを頼りにパッチの補完をすると良いでしょう。
Also, I think that the minimum patch is often not tried on all CPUs. Therefore, if the minimum patch does not work, it is a good idea to supplement the patch by relying on the comments from the non-minimum patch that works equally.

さらに、www.OSX86.itの@fabiosunから、以上のMaskの問題については、正しくないとの指摘がありました。@fabiosunのいうとおり、
 In addition, @fabiosun at www.OSX86.it pointed out that the above Mask issues are incorrect. As @fabiosun says

@fabiosun and @SavageAUS:X570 Aorus Pro Wifi Bios F34 BigSur + Monterey B4 Clover EFI
においては、私の場合、savageAUSの場合Maskをいれないと、”Success”しませんでしたが、Maskを入れなくとも、動くようです。
 In my case, in the case of savageAUS, I didn’t “Success” without Mask, but it seems to work without Mask.

コメント

Translate »
タイトルとURLをコピーしました