LGA1151 ASUSマザーボードBIOS復旧 2/2 BIOS編集

最終更新

編集したBIOSファイルを使う。

今回は、BIOS Chipに書き込む際に使うBIOSファイルについての話です。

注意!
AMI UEFI BIOS搭載のASUSマザーボードの場合、単にダウンロードしただけのBIOSファイルを使ってROM焼きすると、復旧できません。

あらかじめ、上記の情報を得ていたため、ROMライターで書き込むにあたっては、BIOSファイルを3種類用意してみました。(マザーボードはASUS Z170 PRO GAMING)

  1. BIOS正常時にAFUWINGUI.exe(v.5.08.02.1189)でバックアップしたもの
  2. ASUSのサイトからダウンロードしたもの
  3. FD44Editor.exeで編集したもの

1、2はBIOS復旧失敗、3は成功しました。

ASUSのサイトからダウンロードしてきただけのBIOSファイルと、バックアップしたBIOSファイルはアウト。
下のSSのように、空欄またはダミーが入力されていたり、Motherboard S/Nが数字だけのもの(工場出荷時のまま)では復旧不可でした。

失敗例

BIOS復旧に失敗した時のBIOSファイル

FD44Editor.exeで変更を加えたものを使ったら、BIOS復旧できました。

成功例

BIOS復旧に成功した時のBIOSファイル

MACアドレスとUUIDは、正常起動時にとっておいたバックアップBIOSファイルからコピペ。
Motherboard S/Nは、マザーボードの外箱のSerial No.、頭にとりあえずMT7を付けました。
MAC address storageは、GbE region and system UUIDを選択。(GbE Versionの有無で判断)

バックアップがなくても復旧できます。

編集方法については、下のサイトを大いに参考にさせていただきました。感謝。
https://hardforum.com/threads/tools-to-flash-and-recover-bios-on-asus-p8xxx-boards-fd44editor-ftk.1726429

なお、上記URLの文中のFTKというツールは、Intel 100 Seriesチップセット搭載マザーボードでは使えません。

用意するもの

  • PC
  • 書き込みに使うBIOSファイル

    ASUS HPからダウンロードしたものや、バックアップ。壊れていなければok。
    BIOSバージョンは自由に選べます。
  • FD44Editor.exe

    FD44EditorのダウンロードURL
    https://github.com/LongSoft/FD44Editor/releases

    • FD44Editor_0.9.2_osx.zip …Mac OS X用(?)
    • FD44Editor_0.9.2_win.zip…Windows用

    zipをダウンロードしたら、展開(解凍)しておきます。

FD44Editor.exeの使い方

FD44Editor.exeで編集後に保存しますが、なぜか上書き保存しかできませんでした。(別名で保存した場合、実は何も保存されていません)
編集予定のBIOSファイルはあらかじめバックアップを取っておいてください。
    FD44Editor.exeを実行。

    Open From BIOS image file...をクリック。

    内容変更したいBIOSファイルを開く(.ROM .CAP .bin)
    Data format can't be detectedと表示されたら、OKを押す。

    「Primary card MAC」以下を編集

    (各項目の入力内容については次章以降で説明します)

  1. Save to BIOS image file...をクリック

    現在FD44Editor.exeで開いているファイルを指定し、上書き保存。

ちゃんと上書きされているか確認した方がいいです。ファイルの更新日時をチェックするとか、もう一度FD44Editorで開いてみるとか。

なお、このソフトで編集する項目は、通常のBIOS updateでは更新されない部分に含まれます。

Primary card MAC

MACアドレス 12桁。(16進数。「:」は不要)

ASUS Z170 PRO GAMINGの場合、マザーボードのPCI-Eスロットに貼られたシールに印字されています。

Windowsが起動できる状態なら、コマンドプロンプトから ipconfig /all を実行。物理アドレスの所に表示されているものがMACアドレスです。
複数のネットワークアダプタが搭載されている場合は複数のMACアドレスが存在します。どれがPrimaryか判断を。

System UUID

入力するのは、20桁+MACアドレス12桁のうち、最初の20桁のみ。
(後ろの12桁はPrimary card MACから自動で追加されます)
16進数のため、使える文字は0~9とA~F。

MACアドレスやシリアルナンバーとは違い、UUIDはマザーボードのどこにも書かれておらず、また、変更が可能なものです。

DTS keyがある場合は、UUID 20桁のうち5~20桁目がDTS keyと同じになる可能性があります。

できれば、元のUUIDを入力した方がいいと思いますが、どうしてもわからなければ、適当に入力してしまえばいいです。(UUID 32桁のうち20桁が変わります)

ただし、一部のソフトウェアは、UUIDが変わったことを検知し、ライセンスが使えなくなるものもあるかもしれません。
でも、とりあえずBIOSが起動できるようにすることの方が大事かと。

試しに、20桁すべてFで入力したものでFlashしてみました。(UUIDは、FFFFFFFFFFFFFFFFFFFF + MACアドレス となります)
正常にBIOS起動できました。
(普通はこんな単純なものは避けた方がいいでしょう)

元のSystem UUIDを知る方法 3つ

    適用中のBIOSファイルをバックアップしたものがあれば、FD44Editor.exeで開き、System UUID欄で確認。

    ※ バックアップに使うツール: AFUDOS.exe・AFUWINGUI.exe(Intel 100 seriesチップセットの場合はAptioV用の)、他

    ROMライターでBIOS Chipの内容を読み込む→保存。そのファイルをFD44Editor.exeで開き、System UUID欄で確認。
  1. OS(Windows)のレジストリの内容から推察する。
    (下を参照)

レジストリからUUIDを推察する方法について

そのマザーボードでWindowsを使っていたならば、レジストリにUUIDの痕跡が残っています。

(Windows10の場合)
HKEY_LOCAL_MACHINE\SYSTEM\HardwareConfig
LastConfigのデータ、{}で囲まれたものがUUID(の並び順が違うもの)。

コマンド wmic csproduct get uuidを実行した場合に表示されるのも、ここのデータです。

Windowsインストール後に使われたUUIDが1つだけなら、このような状態。

Windowsレジストリ上のSystem UUID

ただし、Windowsレジストリ上のUUIDは、実際のUUIDとは少し違います。

先に記したように、UUIDの並び順が違っています。

FD44Editor.exeで、UUIDを「1234567890ABCDEF1234 + (MACアドレス12桁)」にして、BIOS Chipに書き込んでみました。
すると、Windows上では78563412-ab90-efcd-1234-(MACアドレス12桁)になっています。

3つめのハイフォンの前までの順番が変わっています。

実際のUUIDとWindows上のUUIDの違い

そのため、Windows上で表示されるUUIDを、そのままFD44Editor.exeに入力したとしても、UUIDが変わってしまうことになります。
本当のUUIDを知るには、自分で並べ替えなければなりません。

このSSのように並べ替えます。

System UUIDの修正

BIOSが壊れていて起動できない状態だったら、ちょっと手間がかかります。

OS(Windows)が入ったディスクを、別のWindows PC(WinPE・WindowsインストールディスクでブートしたPCでも可)に接続、regedit.exeからハイブの読み込みで見る必要があります。

OSのディスクがRAID構成だったら無理かもしれません。M.2. SSDの場合は、別PCがM.2.に対応していればよし。対応していなければ、外付けキットか変換アダプタが必要になるでしょう。

それが面倒ならば、とりあえずUUIDは適当な値で編集、ROM焼きして復旧。復旧後、Windowsが起動できたら、レジストリで前のUUIDを確認し、順番を並べ替えたものでBIOSファイル編集、再度BIOS Chipに書き込むという手があります。(都合、BIOS ROM焼きを2回することになります)

たぶん、Intel 100 seriesチップセット搭載ASUSマザーボードでは、UUIDだけを変更するのでも、ROMライターでBIOS Chipをまるごと書き換える必要があります。(他社製や、100 seriesより前のマザボについては不明)

System UUIDをROMライターを使わずに変更できないかと、各種ツールを試してみましたが、全く成功しません。BIOS保護機能が強固で…。
使ったのは、AMIのAMIDEDOS.exe、IntelのFlash Programming Tool(FPT.exe)等。
ツール自体が使えなかったり、書き換え拒否、ツール上では書き換えできているように見えて、再起動してみると元のままだったりします。

Motherboard S/N

英数字 3桁+12桁、合計15桁。

前の3桁

M○7(○部分はアルファベット大文字)で、だいたいがMT7、MG7のこともあるそうです。(Z77チップセットはMG7という情報もあり) まずMT7、だめならMG7や他ので試す感じでしょうか。

私のマザーボードでMT7、M7T、MG7の3パターンでやってみたら、いずれの場合もokでした。意外とアバウト?

後ろの12桁

Serial No.として、マザーボードの外箱やマザーボード上のATX電源コネクタのところに貼ってあるシールに印字されています。

マザーボード出荷時は数字のみの15桁だったみたいですが、それを書き込んでも起動できませんでした。

MAC address storage

まず、FD44Editor.exeの画面内の項目「GbE version」を見ます。

「GbE version」に数字が入っている場合 →「GbE region and system UUID」を選択。

「GbE version」に数字が入っていない場合→「ASCII string and system UUID」を選択。さらに、その下の項目「ASCII MAC magic byte」も設定する。「ASCII MAC magic byte」は16進数で2桁ならなんでも可能、ただし普通は20~2Fになっている、とのこと。

DTS Key

    DTS Key

    16桁 (16進数)
    マザーボードのどこかに黄色の横長のシールが貼ってあり、16桁の英数字(0~9、A~F)が印字されていれば、それを入力。(DTS keyなしの方が多い)
    System UUIDの5~20桁目がこれと同じになる。(例外あり?)

    http://forum.hardware.fr/hfr/Hardware/carte-mere/downgrade-cartes-chipsets-sujet_919459_1.htm (フランス語) より

  • DTS key type
  • DTS key magic string

私のマザーボードのBIOSの場合は項目がグレーアウトしており、変更不能でした。
DTS Connect搭載のASUS Z170-AやZ170-DeluxeのBIOSファイルもダウンロードして見ましたが、同様でした。

以上で、BIOSファイルの編集終わりです。上書き保存(.romでも.binでもok)し、ROMライターでBIOS Chipに書き込みます。

豆知識 ― ASUS UEFI BIOSファイルの拡張子

一般的に、BIOSファイルには.romが使われていることが多いのですが、ASUS UEFI BIOSの場合は.capで配布されています。

capsule(カプセル)化されており、UEFITool.exeで.capファイルを開いて見ると、AMI Aptio capsuleの中にIntel imageが入った構造になっています。

CAP形式 BIOSファイルの構造

通常のUEFI BIOS更新方法で使うのは.capファイルで、.romは使えません。

もし.romにする必要があったら、下の方法で行ってください。

CAPファイルのROM化

単に拡張子を.capから.romに変更するだけではだめです。

UEFITool.exeでカプセル化を解除(Intel imageだけ取り出す)すれば、.romや.binファイルとして扱えます。

また、FD44Editor.exeで編集後に上書き保存することでも、自動的にカプセル化が解除されます。FD44Editor.exeで編集・保存する場合は、UEFITool.exeでROM化する必要はありません。

AMI Aptio capsuleを選択→右クリック→Extract body...

UEFITool.exeでカプセル化を解除する方法1

Intel imageを選択→右クリック→Extract as is...

UEFITool.exeでカプセル化を解除する方法2

カプセル化を解除すると、ファイルサイズが2KB減ります。

.capと.romのファイルサイズ差

.cap、.rom、.binファイルのいずれも、バイナリエディタで内容を閲覧したり、細かい編集が可能です。ただし、何をどう編集するのかがわからない場合はいじらないでおきましょう。

関連記事