トップ «前の日記 最新 次の日記»

2023-09-01 (Fr) [長年日記]

_ GRUB2 のデバッグの仕方

virtualbox のシリアルが使える。

  • コード

    #include <grub/serial.h>
    

    しておいて、

    static struct grub_serial_port *debug_ser = NULL;
    static void debug_init(void)
    {
      debug_ser = grub_serial_find("com0");
    }
    

    この関数を

    GRUB_MOD_INIT(gfxterm)
    {
      grub_term_register_output ("gfxterm", &grub_video_term);
      debug_init();
    }
    

    みたいに追加で呼んでやる。

    文字を送信する時には、以下のようにする。

    static void debug_putchar(int c)
    {
        if (debug_ser)
        grub_serial_port_put(debug_ser, c);
    }
    

    必要な時に必要な文字をこれで送る。

  • virtualbox

    • シリアルポートの設定で COM1 を Raw ファイルにして、/tmp/serial とかに設定する。
    • 仮想マシンを起動して
    • tail -f /tmp/serial すると、シリアル経由で送られてきたものが見える。

な〜んて便利!

で……

GRUB2 の端末部分って index color なのか… びっくりだ。

_ mu4e をセットアップしてみた

で、メッセージを開いて、a キーで action の選択。 view in xwidget を選択。

うわかっちょいいww ブラウザみたいだ。


編集 パスワード変更