Intel GOP VBT/VBIOS 更新方法

BIOSファイルの構造の説明

Translate this page into English


関連ページへのリンク

履歴: 2021/ 3/31 初回アップ

  1. BIOSファイルの構成
  2. BIOS改造という魔境のような世界について、他人に読んで理解してもらうためのページ構成としてはこのページを最初に持ってくるべきだったかもしれないが、 私の作業進行とその理解に従ってページをアップしているので基本的なことはどうしても後になってしまう。
    PC工房製 PCの Sleep不具合を直したい(というよりその原因が BIOSにあると推測した私の判断が正しかったと 証明したい?)一心でここまで延々と BIOS改造をカットアンドトライしつつ、その経過について説明してきたが、 私も最初は BIOSファイルの全体像が混沌としていたものの、そのような不純な動機で本家のサイトを翻訳しがてら  説明にあるツールをいじくり回すうちに薄っすらとではあるが BIOSファイルの構成が見えてきた気がする。
    そこで 他人向けというよりやはり自分メモとして BIOSファイルの基本的な理解を少しだけ書いておくことにする。
    とは言っても BIOSというのは PCの構成の基本部分に関わる非常に高度な技術の塊なので、2~3ヶ月ちょっとカジッた私の知識や理解ではほんの表面に過ぎないのでそのつもりで読んでほしい。
    最近主流の AMI UEFI BIOSは ファイルサイズ 16.0MB(16,777,216 byte)だが ASRockマザボの BIOSをバイナリエディタで開くと、 先頭が以下のような 16進数で始まっている。

    11 00 00 9C 90 02 00 D6 00 00 00 05 FF FF FF FF
    5A A5 F0 0F 03 00 04 00 08 02 10 5A 30 03 34 00
    00 00 20 00 FF FF FF FF FF FF FF FF FF FF FF FF

    そしてこれ以降最後まで、途中で「FF」や 「00」のベタで埋められた領域を含め 完全に意味不明のコードで 埋め尽くされている。
    したがって、ここの BIOSバージョン変更のように運良くバイナリエディタだけで ごく一部のデータを書き換えられることもあるが、通常は専用のツールを使わないと解析・改造は不可能だ。
    解析ツールの代表は UEFI(NE)Tool と呼ばれているNikolaj Schlej さんという人が作ったツールだ。
    図-1
    この UEFI(NE)Tool(正式版と Alpha版があって解析だけなら Alpha版の方が高機能だが現状では編集機能が使えない)に ターゲットの BIOSファイルを ロードすると図-1 の一番上の "Intel image"という行だけが表示される。
    そこでまず ① の Intel の左側の ">" をクリックして開くと ②「Descriptor region」 ③ 「GbE region」 ④ 「ME region」 ⑦ 「BIOS region」 が現れるので、この BIOSファイルの中には 4つの領域が存在していることが分かる。
    更に 「ME region」の左側の ">" をクリックすると Explorerのフォルダー表示のようにその領域に含まれる内容がツリー状に展開される。
    また、下のペインでは「FIT」タブに BIOSに含まれている CPU Microcode のリストが表示されるので、⑥どれかをダブルクリックすると、 ⑦「BIOS region」の該当箇所までが展開されてハイライトされる。
    これは例えば BIOS改造で一番利用頻度が高いと思われる 「マザボのチップセットは対応しているのに BIOSは非対応で 意中の CPUが使えない」などという場合は 、⑦ の部分を右クリックして「Replace」を選択して、希望の CPUの Microcode に置き換えればいいと思う。
    ただし Alpha版では Replace などは使えないということで、編集は正式版で行う必要がある。 (置き換える Microcodeのサイズが元と同じとは限らないなどの不確定の部分があるのでまだ試してはいない。 & 正式版の"Search" は "File"メニューの中にある。)
    また右側の「Infomation」ペインにはそのコードの Address やサイズ、Revision、Microcode の場合は CPU flags や signature なども 表示されるので、現在の BIOSが対応している CPU種類や そのMicrocode のバージョンなどもここで分かる。
    試しに、このページの図-2 で UBUの解析結果として表示される RST/GOP/NVMe/Gbit/VBTなどの GUIDを Alpha版で検索するとヒットする箇所があるので、 それぞれが BIOSファイル中のどの部分に存在するか確認できる。
    なお私が参考にしたオリジナルの説明ページは こちら で、ここには展開・抽出・置換などの方法が詳しく述べられている。
  3. MM tool を使って 更新モジュールを Replaceする
  4. 前のページに書いたように、UBUでモジュールを更新しようとしても 指定のフォルダーに指定の名前で更新用ファイルを保存したはずなのに UBUの更新可能リストに表示されずに更新できないことがあった。(この時は VBIOS OROM を 1008 > 1019 に更新しようとした)
    こうした時はここで説明するような方法でも更新が可能になる。
    図-2
    MM toolを立ち上げて、更新しようとする BIOSファイルをロードする。

    ① 「Option ROM」タブを開く。

    ② 「Browse」ボタンを押して、更新用 Option ROMファイルを指定する。

    ③ VBIOS OROMの場合は Device ID「406」をクリックしてハイライトする。

    ④ 「Replace an Option ROM」のチェックを付けて選択する。

    ⑤ 「Apply」ボタンを押して実行する。

    ⑥ 「Save Image as..」ボタンを押して、出力する BIOSの保存ファイル名を指定して保存する。


    図-3
    基本的には Intel製 チップの 他の BIOSモジュールの置換も同じ方法で出来るはずだが、OROM以外はタブが「Replace」タブになって、 その場合更新対象のファイル(モジュール?)名がズラーッと表示されてしまって、検索機能がないので GUIDを探すのが大変になる。


  5. ダウンロードリンク
  6. >続き  その7:BIOS改造:LOGO画面変更・Ver.番号変更など


このページ(BIOS_edit06.html)にコメント/質問をどうぞ
タイトル(30文字以内)
コメント
お名前(ID:10文字以内)
URL(HP or ブログをお持ちの方)
パスワード*
タイトル・コメント・ID は必須です
このページ(BIOS_edit06.html)への今までのコメント/質問
このページにはまだ表示できる投稿がありません。

Back to Page top

Access Counter:  総アクセス数



WiFiがどうしてもつながらない時  by Amazon
オススメの PLCアダプタ(2個セット)